?? 有無功表液晶顯示.c
字號:
uchar length_data=5;
uchar b[10];
b[0]=0x00;
b[1]=0x80;
b[2]=0xcb;
convesn(b,length_data);
b[4]=b[4]+1;
b[7]=b[7]+1;
b[8]=b[8]+1;
Brushlcd(b); //向LCD內(nèi)寫入數(shù)據(jù)
}break; //瞬時(shí)無功功率XX.XX
case 7:{//uchar b[10]={0x00,0x08,0xcb,0xbe,0xe0,0xfe,0xfc,0xfb,0x61,0xd6};
uchar length_data=5;
uchar b[10];
b[0]=0x00;
b[1]=0x08;
b[2]=0xcb;
convesn(b,length_data);
b[4]=b[4]+1;
b[7]=b[7]+1;
b[8]=b[8]+1;
Brushlcd(b); //向LCD內(nèi)寫入數(shù)據(jù)
}break; //A相無功功率XX.XX
case 8:{//uchar b[10]={0x00,0x04,0xcb,0xbc,0xbe,0xe0,0xfe,0xfd,0xfb,0x60};
uchar length_data=5;
uchar b[10];
b[0]=0x00;
b[1]=0x04;
b[2]=0xcb;
convesn(b,length_data);
b[4]=b[4]+1;
b[7]=b[7]+1;
b[8]=b[8]+1;
Brushlcd(b); //向LCD內(nèi)寫入數(shù)據(jù)
}break; //B相無功功率XX.XX
case 9:{//uchar b[10]={0x00,0x02,0xcb,0x6c,0xbc,0xbe,0xe0,0xff,0xfd,0xfa};
uchar length_data=5;
uchar b[10];
b[0]=0x00;
b[1]=0x02;
b[2]=0xcb;
convesn(b,length_data);
b[4]=b[4]+1;
b[7]=b[7]+1;
b[8]=b[8]+1;
Brushlcd(b); //向LCD內(nèi)寫入數(shù)據(jù)
}break; //C相無功功率XX.XX
case 10:{//uchar b[10]={0x00,0x81,0x00,0xf4,0x6c,0xbc,0xbe,0xe0,0xfe,0xfc};
uchar length_data=5;
uchar b[10];
b[0]=0x00;
b[1]=0x81;
b[2]=0x00;
convesn(b,length_data);
b[4]=b[4]+1;
Brushlcd(b); //向LCD內(nèi)寫入數(shù)據(jù)
}break; //總功率因數(shù)X.XXX
case 11:{//uchar b[10]={0x00,0x08,0x02,0xd6,0xf4,0x6c,0xbd,0xbe,0xe0,0xfe};
uchar length_data=3;
uchar b[10];
b[0]=0x00;
b[1]=0x08;
b[2]=0x02;
convesn(b,length_data);
b[6]=b[6]+1;
Brushlcd(b); //向LCD內(nèi)寫入數(shù)據(jù)
}break; //A相電壓 XXX
case 12:{//uchar b[10]={0x00,0x04,0x02,0x60,0xd6,0xf4,0x6d,0xbc,0xbe,0xe0};
uchar length_data=3;
uchar b[10];
b[0]=0x00;
b[1]=0x04;
b[2]=0x02;
convesn(b,length_data);
b[6]=b[6]+1;
Brushlcd(b); //向LCD內(nèi)寫入數(shù)據(jù)
}break; //B相電壓 XXX
case 13:{//uchar b[10]={0x00,0x02,0x02,0xfa,0x60,0xd6,0xf5,0x6c,0xbc,0xbe};
uchar length_data=3;
uchar b[10];
b[0]=0x00;
b[1]=0x02;
b[2]=0x02;
convesn(b,length_data);
b[6]=b[6]+1;
Brushlcd(b); //向LCD內(nèi)寫入數(shù)據(jù)
}break; //C相電壓 XXX
case 14:{//uchar b[10]={0x00,0x08,0x88,0xfc,0xfa,0x61,0xd6,0xf4,0x6c,0xbc};
uchar length_data=5;
uchar b[10];
b[0]=0x00;
b[1]=0x08;
b[2]=0x88;
convesn(b,length_data);
b[4]=b[4]+1;
b[5]=b[5]+1;
Brushlcd(b); //向LCD內(nèi)寫入數(shù)據(jù)
}break; //A相電流 XX.XX
case 15:{//uchar b[10]={0x00,0x04,0x88,0xfe,0xfc,0xfb,0x60,0xd6,0xf4,0x6c};
uchar length_data=5;
uchar b[10];
b[0]=0x00;
b[1]=0x04;
b[2]=0x88;
convesn(b,length_data);
b[4]=b[4]+1;
b[5]=b[5]+1;
Brushlcd(b); //向LCD內(nèi)寫入數(shù)據(jù)
}break; //B相電流 XX.XX
case 16:{//uchar b[10]={0x00,0x02,0x88,0xe0,0xfe,0xfd,0xfa,0x60,0xd6,0xf4};
uchar length_data=5;
uchar b[10];
b[0]=0x00;
b[1]=0x02;
b[2]=0x88;
convesn(b,length_data);
b[4]=b[4]+1;
b[5]=b[5]+1;
Brushlcd(b); //向LCD內(nèi)寫入數(shù)據(jù)
}break; //C相電流 XX.XX
default:break;
}
}
///////////////////////////////////////////////////////////////////////////////////////////////
void mDelay(uint Delay) //Delay = 1000 時(shí)間為1S
{
uint i;
for(;Delay>0;Delay--)
{
for(i=0;i<124;i++)
{;}
}
}
void convesn(uchar *p,uchar length)
{ uchar i;
uchar j=2;
i=Number[3]&0x0f;
p[9]=Data[i];
for(i=8;i>=3;i--)
{
uchar middle;
middle=Number[j]&0xf0;
middle=middle>>4;
p[i]=Data[middle];
i--;
if(i>=3)
{middle=Number[j]&0x0f;
p[i]=Data[middle];
j--;
}
}
for(i=9;i>length;i--)
{
if(p[i]==0xfa)
{p[i]=0x00;}
else break;
}
}
//0 1 2 3 4 5 6 7 8 9
//fa 60 d6 f4 6c bc be e0 fe fc
void electric_stor( )
{
if( YOUGONG_CS>=8) //0x20根據(jù)脈沖常數(shù)的改變而改變,這里是3200
{
YOUGONG_CS=YOUGONG_CS-8;
//CUNYOUGONG();
RdFromROM(Number,10,4);
Number[0]= Bcd2Byte(Number[0]);//將BCD碼轉(zhuǎn)換成BIN碼
Number[0]+=1;
if(Number[0]>=0x64)
{Number[0]=0;
Number[1]= Bcd2Byte(Number[1]);//將BCD碼轉(zhuǎn)換成BIN碼
Number[1]+=1;
if(Number[1]>=0x64)
{
Number[1]=0;
Number[2]= Bcd2Byte(Number[2]);//將BCD碼轉(zhuǎn)換成BIN碼
Number[2]+=1;
if(Number[2]>=0x64)
{Number[2]=0;
Number[3]= Bcd2Byte(Number[3]);//將BCD碼轉(zhuǎn)換成BIN碼
Number[3]+=1;
if(Number[3]>=0x0a)
{
Number[3]=0;
}
Number[3]= Byte2Bcd(Number[3]);//將BIN碼轉(zhuǎn)換成BCD碼
}
Number[2]= Byte2Bcd(Number[2]);//將BIN碼轉(zhuǎn)換成BCD碼
}
Number[1]= Byte2Bcd(Number[1]);//將BIN碼轉(zhuǎn)換成BCD碼
}
Number[0]= Byte2Bcd(Number[0]);//將BIN碼轉(zhuǎn)換成BCD碼
WrToROM(Number,10,4); /*將初始化后的數(shù)值寫入EEPROM*/
}
}
//if(WUGONG_CS>=0x20)
// {
// WUGONG_CS=WUGONG_CS-0x20;
//CUNWUGONG();
// RdFromROM(Number,14,4);
// }
uchar Byte2Bcd(uchar Val)//將BIN碼轉(zhuǎn)換成BCD碼
{ return ((Val/10)<<4)|(Val%10);}
uchar Bcd2Byte(uchar Val)//將BCD碼轉(zhuǎn)換成BIN碼
{ return ((Val>>4)*10+(Val&0x0F));}
//WORD Word2Bcd(WORD Val)//將BIN碼轉(zhuǎn)換成BCD碼
//{
// return (((WORD)(Byte2Bcd(Val/100)))<<8) | (Byte2Bcd(Val%100));
//}
//WORD Bcd2Word(WORD Val)//將BCD碼轉(zhuǎn)換成BIN碼
//{
// return Bcd2Byte(Val>>8) *100 + Bcd2Byte(Val&0xFF);
//}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -