⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 byq10.c

📁 能配合“变压器测试组件”实现LF2000系列各个型号变压器组件与互感器的测试任务要抗干扰能力强
💻 C
📖 第 1 页 / 共 3 页
字号:
				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 + -