资源简介
本文件是毕业设计的题目,为学生客户开发的定制化毕业设计,智能电表要求包括了交流电0-220v、回路电流0-10A的各项电气参数的测量,包括了电压测量(精度小于正负1v)、电流测量(小于正负50mA)、有功功率测量(小于正负2w)、无功功率测量、相位角的测量(小于正负0.5°)等相关参数的测量方案,使用了电流和电压互感器测量方案,包括原理图和代码以及相关芯片资料
代码片段和文件信息
#include “reg52.h“
#include “LCD1602.h“
#include “string.h“
#include “stdio.h“
#include
#include “tlc2543.h“
#include “math.h“
unsigned char code tab1[] = “00“;//“CurrentVoltage:“;
unsigned char code tab2[] = “00“;
sbit Benk = P2^7; //报警io
sbit Key_Up = P3^2; //按键io
sbit Key_Down = P3^3;
sbit Key_Ok = P3^5;
sbit Key_V_I= P3^4;
bit V_I_bit=1sw=0; //电流电压切换位
unsigned char step=0; //步骤
void delay1ms(int t) //延时函数
{
int ij;
for(i=0;i for(j=0;j<120;j++) ;
}
void lcd_write_char(unsigned char addrchar *p) //lcd写入数据函数
{
write1602_com(addr);
while(*p!=NULL)
{
write1602_dat(*p);
p++;
}
}
void lcd_show_int(unsigned char addrint x) //显示整形数字
{
unsigned char dat[10]=“\0“;
sprintf(dat“%d“x);
write1602_com(addr);
lcd_write_char(addrdat);
}
void lcd_show_float(unsigned char addrfloat x) //显示float浮点数据,
{
unsigned char dat[10]=“\0“;
sprintf(dat“%.2f“x);
lcd_write_char(addrdat);
}
unsigned char sw_cnt=0;
bit sw_bit=0;
//void lcd_show_set_V_I(float minfloat max) //显示设置数据
//{
// unsigned char dat[6]=“\0“;
// unsigned char dat2[6]=“\0“;
// if(V_I_bit)lcd_write_char(0x80“V_Min=“);
// else lcd_write_char(0x80“I_Min=“);
//
// if(V_I_bit)lcd_write_char(0x80+0x40“V_Max=“);
// else lcd_write_char(0x80+0x40“I_Max=“);
//
// if(V_I_bit) //显示设置的电压
// {
// lcd_write_char(0x80+10“V“);
// lcd_write_char(0x80+0x40+10“V“);
// }
// else
// {
// lcd_write_char(0x80+10“I“);
// lcd_write_char(0x80+0x40+10“I“);
// }
//
// sw_cnt++; //显示设置的上限
// if(sw_cnt>6){sw_bit= ~sw_bit; sw_cnt=0;}
// sprintf(dat“%.1f“min);
// if(step==1)
// {
// if(sw_bit)lcd_write_char(0x80+6dat);
// else lcd_write_char(0x80+6“ “);
// }
// else lcd_write_char(0x80+6dat);
// sprintf(dat2“%.1f“max); //显示设置的下限
// if(step==2)
// {
// if(sw_bit)lcd_write_char(0x80+0x40+6dat2);
// else lcd_write_char(0x80+0x40+6“ “);
// }
// else lcd_write_char(0x80+0x40+6dat2);
// }
void lcd_show_Set_OK(void) //显示float浮点数据,
{
write1602_com(0x01);
lcd_write_char(0x80“Set OK...“);
delay1ms(500);
}
void lcd_show_Init(void) // 显示初始化数据
{
lcd_write_char(0x80tab1);
lcd_write_char(0x80+0x40tab2);//显示:
}
float Sum_1=0Sum_2=0last;
float Get_U_Voule(void)
{
unsigned char ij;
float V=0;
//while(i<1)
//{
//// for(j=0;j<10;j++) // 4056
//// {
//// Sum_1 = (float)Read_ADC_TLC2543(2) +Sum_1;
////
//// }
//// Sum_1 = Sum_1/10;
////
//// Sum_2 += Sum_1;
//// Sum_1 = 0;
//// }
//// Sum_2 = Sum_2 /1;
Sum_1 = (float)Read_ADC_TLC2543(2);
Sum_2 = (last+Sum_1)/2;
// delayms(1);
V = (float) Sum_2;
V = V/ 4096 ;
V = 5.0 * V ;
//
V = V/2;
V = 295 * V -0.8;
last = Sum_1;
return V;
}
float Get_I_Voule(void)
{
un
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-05-15 01:18 1299智能电表\
目录 0 2018-05-14 03:13 1299智能电表\1299+程序\
目录 0 2018-05-15 05:19 1299智能电表\1299+程序 - 副本\
文件 234 2018-05-13 19:49 1299智能电表\1299+程序 - 副本\delay.h
文件 59290 2014-01-15 11:38 1299智能电表\1299+程序 - 副本\Last Loaded TLC.DBK
文件 743 2018-05-13 20:09 1299智能电表\1299+程序 - 副本\LCD1602.h
文件 10367 2018-05-15 05:01 1299智能电表\1299+程序 - 副本\main.c
文件 104527 2018-05-15 05:01 1299智能电表\1299+程序 - 副本\main.LST
文件 31741 2018-05-15 05:01 1299智能电表\1299+程序 - 副本\main.OBJ
文件 6376 2010-09-03 17:12 1299智能电表\1299+程序 - 副本\STARTUP.A51
文件 14052 2018-05-13 19:12 1299智能电表\1299+程序 - 副本\STARTUP.LST
文件 749 2018-05-13 19:12 1299智能电表\1299+程序 - 副本\STARTUP.OBJ
文件 104534 2014-01-15 16:21 1299智能电表\1299+程序 - 副本\TLC.DSN
文件 742 2018-05-13 02:39 1299智能电表\1299+程序 - 副本\TLC.PWI
文件 32091 2018-05-15 05:19 1299智能电表\1299+程序 - 副本\tlc2543
文件 2491 2018-05-15 05:19 1299智能电表\1299+程序 - 副本\tlc2543.build_log.htm
文件 1834 2018-05-14 01:04 1299智能电表\1299+程序 - 副本\tlc2543.c
文件 99 2018-05-13 21:19 1299智能电表\1299+程序 - 副本\tlc2543.h
文件 18928 2018-05-15 05:19 1299智能电表\1299+程序 - 副本\tlc2543.hex
文件 59 2018-05-15 05:19 1299智能电表\1299+程序 - 副本\tlc2543.lnp
文件 13181 2018-05-15 04:45 1299智能电表\1299+程序 - 副本\tlc2543.LST
文件 31569 2018-05-15 05:19 1299智能电表\1299+程序 - 副本\tlc2543.M51
文件 4015 2018-05-15 04:45 1299智能电表\1299+程序 - 副本\tlc2543.OBJ
文件 441550 2014-01-15 09:46 1299智能电表\1299+程序 - 副本\TLC2543.pdf
文件 590 2017-04-17 14:15 1299智能电表\1299+程序 - 副本\tlc2543.plg
文件 70184 2018-05-15 05:19 1299智能电表\1299+程序 - 副本\tlc2543.uvgui.lifu
文件 71604 2014-01-15 16:21 1299智能电表\1299+程序 - 副本\tlc2543.uvgui.pc
文件 72721 2018-05-14 03:13 1299智能电表\1299+程序 - 副本\tlc2543.uvgui_lifu.bak
文件 5320 2018-05-15 05:19 1299智能电表\1299+程序 - 副本\tlc2543.uvopt
文件 14006 2018-05-14 03:13 1299智能电表\1299+程序 - 副本\tlc2543.uvproj
文件 5320 2018-05-14 03:13 1299智能电表\1299+程序 - 副本\tlc2543_uvopt.bak
............此处省略43个文件信息
- 上一篇:was介绍及部署
- 下一篇:基于STM32单片机的窗帘自动控制系统设计
相关资源
- 开关电源中通过STM32F103 将电压电流显
- 电表645规约
- INA219 驱动程序 测试电压电流功率函数
- STM32F407上实现Modbus协议,包括多种C
- modbus通用读取电表数据源码,使用的
- Boost经典电路电压电流双闭环PSIM仿真
- 光伏三相逆变的有功无功调节锁相环
- 频率电压电流仿真检测_Proteus仿真单片
- 电压电流采集
- RN8302B智能电表芯片程序基于STC12系列
- 基于51单片机和lcd1602的adc0804测电压电
- 整流电路 电压电流采集电路
- 基于STM32_INA219电流电压检测
- ADC基于stm32的电压电流采集.用4位8段数
- 电压电流转换1-5v转4-20mA Proteus仿真图
- 电压电流表,带校准功能,有原理图
- 国网单相智能电表设计
- FRAM占领医疗领域和智能电表行业
- Q/GDW 358-2009《0.5S级三相智能电能表技
- BUCK--BOOST双闭环电压电流设计
- 新PCB-15w408as+adc -ADS1115程序 -USB电压电
- 电压电流双环控制的逆变器PI参数设计
- Buck电路电压电流双闭环仿真
- dlt645-2007国网智能电表通信协议
- 基于51单片机与CS5460的智能电表设计
- 485协议智能电表读取工具
- 电表485通讯协议资料
评论
共有 条评论