基于LPC1114单片机与ATT7053芯片的智能电表设计

2023-04-06  

ATT7053AU是一颗带 SPI 的单相多功能计量芯片(EMU) 。

芯片的工作范围是 3.0 ~ 3.6V。使用晶振为 5.5296MHz。


1.att7053电路图

基于LPC1114单片机与ATT7053芯片的智能电表设计

2.att7053 PCB图

基于LPC1114单片机与ATT7053芯片的智能电表设计

3.做好的成品板


4.LPC1114单片机与ATT7053采用SPI通信方式,下面采用软件模拟SPI时序

5.SPI读程序

uint32_tSPI_Read(uint8_taddress){int8_ti;uint32_ttemp_data;temp_data=0;SCK_L;Delay(1);CS_H;Delay(2);CS_L;Delay(5);SCK_H;Delay(1);MOSI_L;Delay(1);SCK_L;Delay(1);for(i=6;i》=0;i--){SCK_H;Delay(1);if((address&(0x01《

6. SPI写程序

voidSPI_Write(uint8_taddress,uint32_twrite_data){int8_ti;uint32_ttemp_data;temp_data=1;SCK_L;Delay(100);CS_H;Delay(50);CS_L;Delay(100);SCK_H;Delay(10);MOSI_H;Delay(10);SCK_L;Delay(10);for(i=6;i》=0;i--){SCK_H;Delay(10);if((address&(0x01《

7.att7053初始化工作

初始化工作需要打开寄存器写保护和写入电流通道的增益,如下:

SPI_Write(0x32,0x00a6);//打开写保护SPI_Write(0x59,0x000c);//写入电流通道增益

8.读取电压值

v_rms=SPI_Read(0x08);

9.读取电流值

i_rms=SPI_Read(0x06);

10.读取功率值

p_rms=SPI_Read(0x0a);


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。