×

基于STM32单片机智能电表无线WIFI插座APP交流电压电流检测设计

消耗积分:10 | 格式:zip | 大小:58.92KB | 2021-09-16

刘润生

分享资料个

基于STM32单片机智能电表无线WIFI插座APP交流电压电流检测设计-

代码实现功能:

1、通过电压互感器TV1005M和电流互感器TA1005M分别检测交流电压和交流电流值,

2、手机APP和WiFi模块互联后,可以实时显示交流电压、交流电流、功率和电量实时显示在手机上。

3、当功率超过200W时,继电器自动断开。功率不超过200W时,可以手动控制继电器的开关。

4、手机和WiFi模块连接后,手机上显示计时时间。

int main(void)

 { 

u16 adcx;

float temp;

delay_init();     //延时函数初始化   

uart_init(9600); //串口初始化为115200

  TIM3_Int_Init(499,7199);//50ms   

LED_Init();   //初始化与LED连接的硬件接口

  LED0=0;

  Adc_Init();   //ADC初始化     


RELAY=1; //继电器打开

relayFlag=1; //继电器状态标识

delay_ms(4000); 

printf("AT+CIPMUX=1/r/n");    //允许链接

delay_ms(1000);

printf("AT+CIPSERVER=1,8080/r/n");    //创建端口号8080

delay_ms(1000); 

while(1)

{

adcx=Get_Adc_Average(ADC_Channel_1,10);// PA1 交流电压检测口 ad转换10次求平均值

temp=(float)adcx*(3.3/4096);

ACvolt=(unsigned int)(temp*303);//*303 互感器计算获取 以及1K电阻 用示波器检测校准得到

if(ACvolt<15) ACvolt=0;

adcx=Get_Adc_Average(ADC_Channel_2,10); // PA2                                                       求平均值

temp=(float)adcx*(3.3/4096);

if(temp>0.02)

{

ACcurrent=(unsigned int)((temp-0.02)*3100);//*3950 互感器计算获取扩大1000倍 以及1K电阻 用示波器检测校准得到 0.02去除波动 防止误判断

}

    

}


部分文件列表

文件名大小
2、源程序(C语言含详细备注)/
2、源程序(C语言含详细备注)/stm32-5、程序及功能/
2、源程序(C语言含详细备注)/stm32-5、程序及功能/ElectricEnergyMeter_STM32_986.apk
2、源程序(C语言含详细备注)/stm32-5、程序及功能/stm32-5、程序-智能电表/
2、源程序(C语言含详细备注)/stm32-5、程序及功能/stm32-5、程序-智能电表/CORE/
2、源程序(C语言含详细备注)/stm32-5、程序及功能/stm32-5、程序-智能电表/CORE/core_cm3.c
2、源程序(C语言含详细备注)/stm32-5、程序及功能/stm32-5、程序-智能电表/CORE/core_cm3.h
2、源程序(C语言含详细备注)/stm32-5、程序及功能/stm32-5、程序-智能电表/CORE/startup_stm32f10x_hd.s
2、源程序(C语言含详细备注)/stm32-5、程序及功能/stm32-5、程序-智能电表/CORE/startup_stm32f10x_md.s
2、源程序(C语言含详细备注)/stm32-5、程序及功能/stm32-5、程序-智能电表/HARDWARE/
2、源程序(C语言含详细备注)/stm32-5、程序及功能/stm32-5、程序-智能电表/HARDWARE/ADC/
...

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !