基于TI-MSPM0L1306 芯片的電表測(cè)量
1 簡(jiǎn)介
本文引用地址:http://www.biyoush.com/article/202412/465581.htm電表芯片在現(xiàn)代社會(huì)的用處越來(lái)越多,比如智能電表、開(kāi)關(guān)電源、逆變電源和智能插座等領(lǐng)域,為各種設(shè)備和系統(tǒng)提供精確可靠的電能計(jì)量支持。以上這些電能計(jì)量功能,都離不開(kāi)電表芯片對(duì)電壓電流的采樣。
本項(xiàng)目正是通過(guò)MSPM0L1306 芯片對(duì)電表芯片的通信和控制,實(shí)現(xiàn)一個(gè)簡(jiǎn)單的電表功能,從而實(shí)時(shí)獲得設(shè)備的用電量。本控制的設(shè)計(jì)流程是:LPMSPM0L1306作為主控MCU芯片, 與電能表芯片HT7017 進(jìn)行通信,實(shí)時(shí)讀取HT7017 芯片采集的電壓,電流,并計(jì)算出設(shè)備消耗的功率。最后通過(guò)LCD 顯示屏顯示出來(lái)。
Bom表(所用元器件的型號(hào))
(產(chǎn)品展示圖)
3 軟件開(kāi)發(fā):
4 開(kāi)發(fā)平臺(tái)
TI的CCS V12.7.0開(kāi)發(fā)環(huán)境。
5 外設(shè)的配置
本項(xiàng)目外設(shè)主要由串口和I2C 接口來(lái)驅(qū)動(dòng)。
1. I2C 接口的配置
I2C 接口用于MCU 對(duì)1.8 英寸彩色顯示屏的驅(qū)動(dòng)。配置為9600 波特的速率,同時(shí)開(kāi)啟接收中斷,配置發(fā)送與接收的緩沖區(qū)。
2. 串口的配置
選擇串口UART0,如下圖所示:
配置輸出的IO:TX 為PA8 、RX 為PA9,如下圖所示:
代碼保存后生成工程文件。
6 公共代碼
I2C 發(fā)送與接收代碼
1. I2C 接收中斷函數(shù)的實(shí)現(xiàn):
7 I2C驅(qū)動(dòng)
在工程中添加I2C 的驅(qū)動(dòng)封裝I2C_app.c/h
這個(gè)驅(qū)動(dòng)封裝了讀寫(xiě)兩個(gè)驅(qū)動(dòng),可實(shí)現(xiàn)與硬件低層的解耦。
8 LCD
使用公有的LCD驅(qū)動(dòng)庫(kù),只需要封裝LCD_WR_Byte即可實(shí)現(xiàn)驅(qū)動(dòng)的移植。
以上是主要代碼的介紹。
9 結(jié)束語(yǔ)
本項(xiàng)目主要是在利用Ti 的MSPM0L1306 這顆優(yōu)秀的MCU 來(lái)實(shí)現(xiàn)對(duì)單相交流電壓電能的采集。利用芯片的AD 口和I2C 通訊,采集到的數(shù)據(jù)可以通過(guò)UART、I2C 或其他通信接口發(fā)送到上位機(jī)進(jìn)行進(jìn)一步的處理和分析;通過(guò)對(duì)ADC 的輸出進(jìn)行適當(dāng)?shù)男盘?hào)處理,例如通過(guò)軟件濾波或算法來(lái)減少噪聲和干擾,從而得到更準(zhǔn)確的電壓讀數(shù)。
(本文來(lái)源于《EEPW》202412)
評(píng)論