单相智能电表程序源码,可实现电能计算,485通讯 总线通讯等功能

内容分享3小时前发布
0 0 0

单相智能电表程序源码,可实现电能计算,485通讯,总线通讯,液晶显示等功能,程序源码注释详细,非常适合单片机开发的人员,感兴趣可以看下,需要直接拍就可以。虚拟商品不退不换

0x10000000,

0x00000000,

0x05,

0x00000000,

0xB4ABA24A,

0x00000001,

0x47C60EC0

//12比差

//补偿1

//补偿2

//A通道误差校正

//B通道误差校正

//有功启动门限高位

//有功启动门限低位

//无功启动门限高位

//无功启动门限低位

//根据所引的ID号从外部存储器中恢复数据项,恢复的数据会放在wr_buff中

@param chk_id 数据项ID

@return 1 成功 0 失败

//limin 修改 返回值恒定义

//初始化TIMER0,10ms中断一次

@param void

@return void

void Init_Timer0(void)

{

TMOD = 0x01; // 工作在模式1

CKCON =0x01; // clk

TL0 = 0xff; //10ms

TH0 = 0x7f; //

TR0 = 1; //开定时器0

SetInterrupt(1); //打开中断

}

//初始化ADC,设定当前的测量量程

@param void

@return void

void Inti_anlmode(void)

{

InitAnalog(); //

//SetADC(SETADC_IR,SETADC_CLOSE); //

SetADC(SETADC_IB,SETADC_ITLE); //

SetMChannel(SETM_TEM,SETM_T1); //

//SetADC(SETADC_U,SETADC_T1); //

Alt_50Hz(); //

//PowerDown=1; //

函数功能:恢复除门限值之外的参数

void Recover_metprim(void)

{

uint8 i,value;

xdata char *point;

Word32 read_buff;

for(i=0;i<7;i++)

{

value=0;

ReadMeterPara(0x10dd+i*3+1); //

if(recover_item(0x8505+i)==1)

{

read_buff.lword=Longdate_from_xbcd(&wr_buff[0],4); //恢复参数正校

u32PMdatal= read_buff.lword;

if(u32PMdatal!=meterprm_table[3-i]) //

//恢复参数反校

u32PMdatal=meterprm_table[3-i]; //

value=1;

}

if(value==1)

SetMeterCfg(0x10f5+i*6); //

}

point=&PHCAL11; //

for(i=0;i<3;i++)

{

if(recover_item( //

(point-1)->wr_buff, //

(point-1)->wr_buff); //

}

单相智能电表程序源码,可实现电能计算,485通讯 总线通讯等功能单相智能电表程序源码,可实现电能计算,485通讯 总线通讯等功能单相智能电表程序源码,可实现电能计算,485通讯 总线通讯等功能单相智能电表程序源码,可实现电能计算,485通讯 总线通讯等功能单相智能电表程序源码,可实现电能计算,485通讯 总线通讯等功能

© 版权声明

相关文章

暂无评论

none
暂无评论...