新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于TI-MSPM0L1306 芯片的電表測量

        基于TI-MSPM0L1306 芯片的電表測量

        作者:彭義祥 時間:2024-12-18 來源:EEPW 收藏

        1   簡介

        本文引用地址:http://www.104case.com/article/202412/465581.htm

        電表芯片在現(xiàn)代社會的用處越來越多,比如智能電表、開關(guān)電源、逆變電源和智能插座等領(lǐng)域,為各種設(shè)備和系統(tǒng)提供精確可靠的電能計量支持。以上這些電能計量功能,都離不開電表芯片對電壓電流的采樣。

        本項目正是通過L1306 芯片對電表芯片的通信和控制,實現(xiàn)一個簡單的電表功能,從而實時獲得設(shè)備的用電量。本控制的設(shè)計流程是:LPL1306作為主控MCU芯片, 與電能表芯片HT7017 進行通信,實時讀取HT7017 芯片采集的電壓,電流,并計算出設(shè)備消耗的功率。最后通過LCD 顯示屏顯示出來。

        Bom表(所用元器件的型號)

        image.png

        1734482832324744.png

        (產(chǎn)品展示圖)

        3   軟件開發(fā):

        4   開發(fā)平臺

        TI的CCS V12.7.0開發(fā)環(huán)境。

        5   外設(shè)的配置

        本項目外設(shè)主要由串口和I2C 接口來驅(qū)動。

        1. I2C 接口的配置

        I2C 接口用于MCU 對1.8 英寸彩色顯示屏的驅(qū)動。配置為9600 波特的速率,同時開啟接收中斷,配置發(fā)送與接收的緩沖區(qū)。

        2. 串口的配置

        選擇串口UART0,如下圖所示:

        1734482893294277.png

        配置輸出的IO:TX 為PA8 、RX 為PA9,如下圖所示:

        1734482929520845.png

        1734483089508220.png

        代碼保存后生成工程文件。

        6 公共代碼

        I2C 發(fā)送與接收代碼

        1. I2C 接收中斷函數(shù)的實現(xiàn):

        image.png

        image.png

        image.png

        image.png

        7 I2C驅(qū)動

        在工程中添加I2C 的驅(qū)動封裝I2C_app.c/h

        1734483150116946.png

        這個驅(qū)動封裝了讀寫兩個驅(qū)動,可實現(xiàn)與硬件低層的解耦。

        1734483174957635.png

        8   LCD

        使用公有的LCD驅(qū)動庫,只需要封裝LCD_WR_Byte即可實現(xiàn)驅(qū)動的移植。

        1734483212617798.png

        以上是主要代碼的介紹。

        9   結(jié)束語

        本項目主要是在利用Ti 的L1306 這顆優(yōu)秀的MCU 來實現(xiàn)對單相交流電壓電能的采集。利用芯片的AD 口和I2C 通訊,采集到的數(shù)據(jù)可以通過UART、I2C 或其他通信接口發(fā)送到上位機進行進一步的處理和分析;通過對ADC 的輸出進行適當(dāng)?shù)男盘柼幚恚缤ㄟ^軟件濾波或算法來減少噪聲和干擾,從而得到更準確的電壓讀數(shù)。

        (本文來源于《EEPW》



        關(guān)鍵詞: 202412 MSPM0 電表測量

        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 汽车| 库尔勒市| 蓬溪县| 穆棱市| 大港区| 永登县| 夏津县| 延寿县| 灵川县| 都兰县| 清原| 佳木斯市| 高陵县| 繁峙县| 大庆市| 泰和县| 荣昌县| 施甸县| 尉犁县| 芮城县| 宽城| 萨嘎县| 嘉禾县| 象山县| 沁源县| 宜兰县| 酒泉市| 竹溪县| 珲春市| 平安县| 大冶市| 巍山| 沙洋县| 房山区| 芜湖市| 黔江区| 定襄县| 庄河市| 蚌埠市| 大田县| 桂东县|