📄 byq10.c
字号:
DCF1=1;
break;
case 2:
Dis_buff[0]=dis_char[2];
Dis_buff[1]=dis_char[10];
DCF1=0;
DCF3=0;
DCF5=0;
Uo_QH=0;
A_QH=1;
DCF2=1;
break;
case 3:
Dis_buff[0]=dis_char[3];
Dis_buff[1]=dis_char[10];
DCF1=0;
DCF2=0;
DCF5=0;
Uo_QH=0;
A_QH=1;
DCF3=1;
break;
case 4:
Dis_buff[0]=dis_char[4];
Dis_buff[1]=dis_char[10];
DCF1=0;
DCF2=0;
DCF3=0;
Uo_QH=0;
A_QH=1;
DCF5=1;
break;
default:
Iokey_value=0;
break;
}
}
}
/******************************************************************
功 能:41系列执行程序
说 明:单通道电流传输系列
******************************************************************/
void lf2041(void)
{
ZL=0; //桥式整流方式
V_QHa=0; //切换到A路电压表
V_QHb=0; //切换到E路电压表
DCF2=0;
DCF3=0;
DCF4=0;
UIx=2;
if(!uibz)
{
switch(Uokey_value)
{
case 0: //正常工作端电压
Dis_buff[0]=dis_char[0];
Dis_buff[1]=dis_char[0];
Uo_QH=0;
A_QH=0;
DCF1=0;
DCF5=0;
break;
case 1:
Dis_buff[0]=dis_char[1];
Dis_buff[1]=dis_char[15];
Uo_QH=1;
A_QH=1;
DCF5=0;
DCF1=1;
break;
case 2:
Dis_buff[0]=dis_char[2];
Dis_buff[1]=dis_char[15];
Uo_QH=1;
A_QH=1;
DCF1=0;
DCF5=1;
homonymy=0;
BJ_A=0;
break;
default:
Uokey_value=0;
break;
}
}
else
{
switch(Iokey_value)
{
case 0: //正常工作端电压
Dis_buff[0]=dis_char[0];
Dis_buff[1]=dis_char[0];
Uo_QH=0;
A_QH=0;
DCF1=0;
DCF5=0;
break;
case 1:
Dis_buff[0]=dis_char[1];
Dis_buff[1]=dis_char[10];
Uo_QH=0;
A_QH=1;
DCF5=0;
DCF1=1;
break;
case 2:
Dis_buff[0]=dis_char[2];
Dis_buff[1]=dis_char[10];
Uo_QH=0;
A_QH=1;
DCF1=0;
DCF5=1;
break;
default:
Iokey_value=0;
break;
}
}
}
/******************************************************************
功 能:43系列执行程序
说 明:
******************************************************************/
void lf2043(void)
{
ZL=0; //桥式整流方式
V_QHa=0; //切换到A路电压表
V_QHb=0; //切换到E路电压表
DCF3=0;
DCF4=0;
UIx=3;
if(!uibz)
{CLRWDT();
switch(Uokey_value)
{
case 0: //正常工作端电压
Dis_buff[0]=dis_char[0];
Dis_buff[1]=dis_char[0];
Uo_QH=0;
A_QH=0;
if(IRkey_value==1)
{
V_QHa=0;
V_QHb=0; //A,E
}
else
{
V_QHa=0;
V_QHb=1; //B,C
}
DCF1=0;
DCF2=0;
DCF5=0;
break;
case 1:
Dis_buff[0]=dis_char[1];
Dis_buff[1]=dis_char[15];
Uo_QH=1;
A_QH=1;
V_QHa=0;
V_QHb=0; //A,E
DCF2=0;
DCF5=0;
DCF1=1;
break;
case 2:
Dis_buff[0]=dis_char[2];
Dis_buff[1]=dis_char[15];
Uo_QH=1;
A_QH=1;
V_QHa=0;
V_QHb=0; //A,E
DCF1=0;
DCF5=0;
DCF2=1;
break;
case 3:
Dis_buff[0]=dis_char[3];
Dis_buff[1]=dis_char[15];
Uo_QH=1;
A_QH=1;
V_QHa=0;
V_QHb=1; //A,E
DCF1=0;
DCF2=0;
DCF5=1;
default:
Uokey_value=0;
break;
}
}
else
{
switch(Iokey_value)
{
case 0: //正常工作端电压
Dis_buff[0]=dis_char[0];
Dis_buff[1]=dis_char[0];
Uo_QH=0;
A_QH=0;
if(IRkey_value==1)
{
V_QHa=0;
V_QHb=0; //A,E
}
else
{
V_QHa=0;
V_QHb=1; //B,C
}
DCF1=0;
DCF2=0;
DCF5=0;
break;
case 1:
Dis_buff[0]=dis_char[1];
Dis_buff[1]=dis_char[10];
Uo_QH=0;
A_QH=1;
DCF2=0;
DCF5=0;
DCF1=1;
break;
case 2:
Dis_buff[0]=dis_char[2];
Dis_buff[1]=dis_char[10];
Uo_QH=0;
A_QH=1;
DCF1=0;
DCF5=0;
DCF2=1;
break;
case 3:
Dis_buff[0]=dis_char[3];
Dis_buff[1]=dis_char[10];
Uo_QH=0;
A_QH=1;
DCF1=0;
DCF2=0;
DCF5=1;
break;
default:
Iokey_value=0;
break;
}
}
}
/********************************************************************
功 能:中断函数
说 明:所有中断都只在此函数执行,判断中断标志位来区分中断
*********************************************************************/
void interrupt Interrupt_process(void)
{
if(RBIF)
{
if(TM40_A) homonymy++;
PORTB=PORTB; //清0 RBIF
RBIF=0; //28us可认为只要高电平有效持续15us以上就可认为同名端正常
if(homonymy>9)
{
homonymy=88;
RBIE=0;
BJ_A=1;
}
else RBIE=1;
}
}
/**************************************************************************************
主程序
**************************************************************************************/
void main(void)
{
unsigned char i;
Init_device();
display_start(); //每次调用显示函数显示之前初始化一次就可以热插拔
i=0;
if(i)while(1);
functionkey_value=14;
for(i=0;i<7;i++) Dis_buff[i]=dis_char[0]; //显示清0
Dis_buff[2]=0;
Dis_buff[5]=dis_char[16]; //L
Dis_buff[6]=dis_char[17]; //F
do{
CLRWDT();
keyscan(); //检测按键值是否变化
switch(functionkey_value)
{
case 0:
Dis_buff[3]=dis_char[1]; //1
Dis_buff[4]=dis_char[1]; //1
Dis_buff[5]=dis_char[16]; //F
Dis_buff[6]=dis_char[17]; //L
lf2011();
break;
case 1:
Dis_buff[3]=dis_char[2]; //2
Dis_buff[4]=dis_char[1]; //1
Dis_buff[5]=dis_char[16]; //L
Dis_buff[6]=dis_char[17]; //L
lf2012();
break;
case 2: //LF2013
Dis_buff[3]=dis_char[3]; //3
Dis_buff[4]=dis_char[1]; //1
Dis_buff[5]=dis_char[16]; //F
Dis_buff[6]=dis_char[17]; //L
lf2011();
break;
case 3: //LF2014
Dis_buff[3]=dis_char[IRkey_value];
Dis_buff[4]=0;
Dis_buff[5]=dis_char[4];
Dis_buff[6]=dis_char[1];
lf2014();
break;
case 4: //15
Dis_buff[3]=dis_char[5];
Dis_buff[4]=dis_char[1];
Dis_buff[5]=dis_char[16]; //F
Dis_buff[6]=dis_char[17]; //L
lf2011();
break;
case 5: //16
Dis_buff[3]=dis_char[IRkey_value];
Dis_buff[4]=0;
Dis_buff[5]=dis_char[6];
Dis_buff[6]=dis_char[1];
lf2016();
break;
case 6:
Dis_buff[3]=dis_char[1];
Dis_buff[4]=dis_char[2];
Dis_buff[5]=dis_char[16]; //F
Dis_buff[6]=dis_char[17]; //L
lf2021();
break;
case 7:
Dis_buff[3]=dis_char[2];
Dis_buff[4]=dis_char[2];
Dis_buff[5]=dis_char[16]; //F
Dis_buff[6]=dis_char[17]; //L
lf2021();
break;
case 8:
Dis_buff[3]=dis_char[3];
Dis_buff[4]=dis_char[2];
Dis_buff[5]=dis_char[16]; //F
Dis_buff[6]=dis_char[17]; //L
lf2021();
break;
case 9:
Dis_buff[3]=dis_char[4];
Dis_buff[4]=dis_char[2];
Dis_buff[5]=dis_char[16]; //F
Dis_buff[6]=dis_char[17]; //L
lf2021();
break;
case 10:
Dis_buff[3]=dis_char[5];
Dis_buff[4]=dis_char[2];
Dis_buff[5]=dis_char[16]; //F
Dis_buff[6]=dis_char[17]; //L
lf2021();
break;
case 11:
Dis_buff[3]=dis_char[6];
Dis_buff[4]=dis_char[2];
Dis_buff[5]=dis_char[16]; //F
Dis_buff[6]=dis_char[17]; //L
lf2021();
break;
case 12:
Dis_buff[3]=dis_char[7];
Dis_buff[4]=dis_char[2];
Dis_buff[5]=dis_char[16]; //F
Dis_buff[6]=dis_char[17]; //L
lf2027();
break;
case 13:
Dis_buff[3]=dis_char[IRkey_value];
Dis_buff[4]=0;
Dis_buff[5]=dis_char[0];
Dis_buff[6]=dis_char[4];
lf2040();
break;
case 14:
Dis_buff[3]=dis_char[1];
Dis_buff[4]=dis_char[4];
Dis_buff[5]=dis_char[16]; //F
Dis_buff[6]=dis_char[17]; //L
lf2041();
break;
case 15:
Dis_buff[3]=dis_char[IRkey_value];
Dis_buff[4]=0;
Dis_buff[5]=dis_char[3];
Dis_buff[6]=dis_char[4];
lf2043();
break;
case 16: //44
Dis_buff[3]=dis_char[IRkey_value];
Dis_buff[4]=0;
Dis_buff[5]=dis_char[4];
Dis_buff[6]=dis_char[4];
lf2040();
break;
case 17: //45
Dis_buff[3]=dis_char[5];
Dis_buff[4]=dis_char[4];
Dis_buff[5]=dis_char[16]; //F
Dis_buff[6]=dis_char[17]; //L
lf2041();
break;
case 18: //47
Dis_buff[3]=dis_char[7];
Dis_buff[4]=dis_char[4];
Dis_buff[5]=dis_char[16]; //F
Dis_buff[6]=dis_char[17]; //L
lf2041();
break;
case 19: //49
Dis_buff[3]=dis_char[9];
Dis_buff[4]=dis_char[4];
Dis_buff[5]=dis_char[16]; //F
Dis_buff[6]=dis_char[17]; //L
lf2041();
break;
case 20: //65
Dis_buff[3]=dis_char[5];
Dis_buff[4]=dis_char[6];
Dis_buff[5]=dis_char[16]; //F
Dis_buff[6]=dis_char[17]; //L
lf2041();
break;
case 21: //67
Dis_buff[3]=dis_char[7];
Dis_buff[4]=dis_char[6];
Dis_buff[5]=dis_char[16]; //F
Dis_buff[6]=dis_char[17]; //L
lf2041();
break;
case 22: //69
Dis_buff[3]=dis_char[IRkey_value];
Dis_buff[4]=0;
Dis_buff[5]=dis_char[9];
Dis_buff[6]=dis_char[6];
lf2040();
break;
case 23: //71
Dis_buff[3]=dis_char[1];
Dis_buff[4]=dis_char[7];
Dis_buff[5]=dis_char[16]; //F
Dis_buff[6]=dis_char[17]; //L
lf2041();
break;
case 24:
Dis_buff[3]=dis_char[2];
Dis_buff[4]=dis_char[7];
Dis_buff[5]=dis_char[16]; //F
Dis_buff[6]=dis_char[17]; //L
lf2041();
break;
case 25: //73
Dis_buff[0]=dis_char[12];
Dis_buff[1]=dis_char[12];
Dis_buff[3]=dis_char[3];
Dis_buff[4]=dis_char[7];
Dis_buff[5]=dis_char[16];
Dis_buff[6]=dis_char[17];
break;
case 26: //74
Dis_buff[3]=dis_char[4];
Dis_buff[4]=dis_char[7];
Dis_buff[5]=dis_char[16]; //F
Dis_buff[6]=dis_char[17]; //L
lf2011();
break;
case 27:
Dis_buff[3]=dis_char[5];
Dis_buff[4]=dis_char[7];
Dis_buff[5]=dis_char[16]; //F
Dis_buff[6]=dis_char[17]; //L
lf2041();
break; //75
default: //不正常现象声光报警,并在18ms后复位
BJ_A=0;
BJ_B=0;
while(1);
}
display();
}while(1);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -