资源简介

本文件是毕业设计的题目,为学生客户开发的定制化毕业设计,智能电表要求包括了交流电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个文件信息

评论

共有 条评论