📄 key.c
字号:
#include "LZK.h"
//////////////////////////////////////////////////////////////////////////
void Key(void)
{
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
if(MenuKeyEvt)//menue
{
HI_Bell=1;
HI_RunLED=0;
LCD_BLED=1;
DmsNum=0;
PressKeyEvt=1;
if(seek==4&&hunt>71&&(EN_ch1<5||EN_ch2<5))
{
temp=temp+1;
if(temp==5)
temp=1;
switch(temp)
{
case 1:if(EN_ch1>4)
temp=2;
break;
case 2:if(EN_ch2>4)
temp=3;
break;
case 3:if(EN_ch1>4)
temp=4;
break;
case 4:if(EN_ch2>4)
temp=1;
break;
default:break;
}
LCD_WaveData(temp,1);
}
else
{
LCD_ClearAll();
Menue(0);
LCD_CAstr(8,2,">",0,0);
hunt=1;
if(seek == 11 ||seek == 12)
{
Stc_to_CFlash();
Flash_64K_Write(0xFA02,CFlash,100,0);
}
else if(seek == 3 || seek == 4 || seek == 7)
{
Dyn_to_Flash();
Flash_128_Write(0,Flash,128,0);
}
}
MenuKeyEvt=0;
}
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
if(EnterKeyEvt)//enter
{
HI_Bell=1;
LCD_BLED=1;
DmsNum=0;
PressKeyEvt=1;
if(seek==0)
{
LCD_ClearAll();
switch(hunt)
{
case 1:if(Star_EN==0)
{Menue(1);hunt=10;LCD_CAstr(8,2,">",0,0);}
else
{Menue(10);hunt=10;}
break;
case 2:Menue(2);
hunt=10;
LCD_CAstr(8,2,">",0,0);
break;
case 3:Menue(3);
hunt=10;
LCD_CAstr(8,2,">",0,0);
break;
case 4:Menue(4);
hunt=10;
LCD_CAstr(8,2,">",0,0);
break;
case 5:Menue(5);
hunt=10;
break;
case 6:Menue(6);
hunt=10;
break;
case 7:Menue(7);
hunt=10;
LCD_CAstr(8,2,">",0,0);
break;
default:break;
}
}
///////////////////////
else if(seek==1)
{
LCD_ClearAll();
Menue(8);
for(temp=0;temp<6;temp++)
CH1[temp]=0;
switch(hunt)
{
case 10:page=1;
break;
case 20:page=2;
break;
default:break;
}
hunt=1;
}
///////////////////////
else if(seek==2)
{
switch(hunt)
{
case 10:temp=EM_ModeCMD;
break;
case 20:temp=EM_VoltCMD;
break;
case 30:temp=EM_CurrCMD;
break;
case 40:temp=EM_AnglCMD;
break;
case 50:temp=EM_PwrFactCMD;
break;
case 60:temp=EM_NulPwrCMD;
break;
case 11:EM_ModeCMD=temp;
break;
case 21:EM_VoltCMD=temp;
break;
case 31:EM_CurrCMD=temp;
break;
case 41:EM_AnglCMD=temp;
break;
case 51:EM_PwrFactCMD=temp;
break;
case 61:EM_NulPwrCMD=temp;
break;
default:break;
}
if(hunt%10==0)
{
LCD_Seek2(temp,1);
hunt=hunt+1;
}
else
{
LCD_Seek2(temp,0);
hunt=hunt-1;
}
}
////////////////////////
else if(seek==3)
{
switch(hunt)
{
case 10:temp=EM_arkadress;
LCD_Seek3(temp,1);
hunt=11;
break;
case 11:EM_arkadress=temp;
LCD_Seek3(temp,0);
hunt=10;
break;
case 20:temp=EM_conadress;
LCD_Seek3(temp,1);
hunt=21;
break;
case 21:EM_conadress=temp;
LCD_Seek3(temp,0);
hunt=20;
break;
case 30:temp=EM_baud232;
LCD_Seek3(temp,1);
hunt=31;
break;
case 31:EM_baud232=temp;
LCD_Seek3(temp,0);
hunt=30;
break;
case 40:temp=EM_baud485;
LCD_Seek3(temp,1);
hunt=41;
break;
case 41:EM_baud485=temp;
LCD_Seek3(temp,0);
hunt=40;
break;
case 50:temp=EM_BackUp;
LCD_Seek3(temp,1);
hunt=51;
break;
case 51:EM_BackUp=temp;
LCD_Seek3(temp,0);
hunt=50;
break;
case 60:LCD_CAstr(152,12,"切换忠...",1,0);
EM_DmSwitch=1;
hunt=61;
break;
case 61:if( RTU_MaOrSlave==0 )
{LCD_CAstr(152,12,"主机 ",0,0);EM_DmSwitch=0;}
else if( RTU_MaOrSlave==1 )
{LCD_CAstr(152,12,"从机 ",0,0);EM_DmSwitch=0;}
hunt=60;
break;
default:break;
}
}
else if(seek==4)
{
switch(hunt)
{
case 10:
temp=EN_RecMode;
LCD_Seek4(temp,1);
hunt=11;
break;
case 11:
EN_RecMode=temp;
LCD_Seek4(temp,0);
hunt=10;
break;
case 20:
temp=EN_ManualRec;
LCD_Seek4(temp,1);
hunt=21;
break;
case 21:
EN_ManualRec=temp;
LCD_Seek4(temp,0);
hunt=20;
break;
case 30:
temp=EN_StartRec;
LCD_Seek4(temp,1);
hunt=31;
break;
case 31:
EN_StartRec=temp;
LCD_Seek4(temp,0);
hunt=30;
break;
case 40:
temp=EN_ErrorRec;
LCD_Seek4(temp,1);
hunt=41;
break;
case 41:
EN_ErrorRec=temp;
LCD_Seek4(temp,0);
hunt=40;
break;
case 50:
temp=EN_ch1;
LCD_Seek4(temp,1);
hunt=51;
break;
case 51:
EN_ch1=temp;
LCD_Seek4(temp,0);
hunt=50;
break;
case 60:
temp=EN_ch2;
LCD_Seek4(temp,1);
hunt=61;
break;
case 61:
EN_ch2=temp;
LCD_Seek4(temp,0);
hunt=60;
break;
case 70:
temp=EN_SowType;
LCD_Seek4(temp,1);
hunt=71;
break;
case 71:
EN_SowType=temp;
LCD_ClearAll();
LCD_Coordinate();
hunt=72;
break;
case 72:
hunt=73;
LCD_Seek4(EM_speed,0);
break;
case 73:
hunt=72;
LCD_Seek4(0,0);
break;
default:break;
}
}
else if(seek==5)
{
LCD_ClearAll();
Menue(0);
hunt=5;
LCD_CAstr(8,10,">",0,0);
}
else if(seek==6)
{
LCD_ClearAll();
Menue(0);
hunt=6;
LCD_CAstr(8,12,">",0,0);
}
else if(seek==7)
{
switch(hunt)
{
case 10:
RTC8563_Read();
CH1[0]=RTCData[6];
CH1[1]=RTCData[5];
CH1[2]=RTCData[3];
CH1[3]=RTCData[2];
CH1[4]=RTCData[1];
CH1[5]=RTCData[0];
hunt=11;
LCD_Seek7(0,1);
break;
case 11:
case 12:
case 13:
case 14:
case 15:
case 16:
RTCData[6]=CH1[0];
RTCData[5]=CH1[1];
RTCData[3]=CH1[2];
RTCData[2]=CH1[3];
RTCData[1]=CH1[4];
RTCData[0]=CH1[5];
RTC8563_Write();
hunt=10;
LCD_Seek7(0,0);
break;
case 20:
temp=StartTemper;
LCD_Seek7(temp,1);
hunt=21;
break;
case 21:
StartTemper=temp;
LCD_Seek7(temp,0);
hunt=20;
break;
case 30:
temp=CloseTemper;
LCD_Seek7(temp,1);
hunt=31;
break;
case 31:
CloseTemper=temp;
LCD_Seek7(temp,0);
hunt=30;
break;
case 40:
temp=AlarmTemper;
LCD_Seek7(temp,1);
hunt=41;
break;
case 41:
AlarmTemper=temp;
LCD_Seek7(temp,0);
hunt=40;
break;
default:break;
}
}
else if(seek==8)
{
//加一句调读Flash
switch(page)
{
case 1:if(CH1[0]==S1_Key1&&CH1[1]==S1_Key2&&CH1[2]==S1_Key3&&CH1[3]==S1_Key4&&CH1[4]==S1_Key5&&CH1[5]==S1_Key6)
{LCD_ClearAll();Menue(11);hunt=10;page=1;LCD_CAstr(8,2,">",0,0);}
else
{LCD_ClearAll();Menue(9);hunt=1;LCD_CAstr(128,8,"Yes",1,0);}
break;
case 2:if(CH1[0]==S2_Key1&&CH1[1]==S2_Key2&&CH1[2]==S2_Key3&&CH1[3]==S2_Key4&&CH1[4]==S2_Key5&&CH1[5]==S2_Key6)
{LCD_ClearAll();Menue(12);hunt=10;page=1;LCD_CAstr(8,2,">",0,0);}
else
{LCD_ClearAll();Menue(9);hunt=1;LCD_CAstr(128,8,"Yes",1,0);}
break;
default:break;
}
for(temp=0;temp<6;temp++)
CH1[temp]=0;
}
else if(seek==9)
{
if(hunt==1)
{LCD_ClearAll();Menue(8);hunt=1;}
else if(hunt==2)
{
LCD_ClearAll();
Menue(1);
switch(page)
{
case 1:hunt=10;
LCD_CAstr(8,2,">",0,0);
break;
case 2:hunt=20;
LCD_CAstr(8,4,">",0,0);
break;
default:break;
}
}
}
else if(seek==10)
{
LCD_ClearAll();
Menue(0);
hunt=1;
LCD_CAstr(8,2,">",0,0);
}
else if(seek==11)
{
switch(page)
{
case 1:switch(hunt)
{
case 10:temp=EM_NomalPhaDiffCMD;
break;
case 20:temp=EM_FulVoltPhaDiffCMD;
break;
case 30:temp=AsyncTimOutCMD;
break;
case 40:temp=EM_TimCMD;
break;
case 50:temp=EM_VoltScaleCMD;
break;
case 60:temp=EM_CurrScaleCMD;
break;
case 11:EM_NomalPhaDiffCMD=temp;
break;
case 21:EM_FulVoltPhaDiffCMD=temp;
break;
case 31:AsyncTimOutCMD=temp;
break;
case 41:EM_TimCMD=temp;
break;
case 51:EM_VoltScaleCMD=temp;
break;
case 61:EM_CurrScaleCMD=temp;
break;
default:break;
}
if(hunt%10==0)
{LCD_Seek11(temp,1);hunt=hunt+1;}
else
{LCD_Seek11(temp,0);hunt=hunt-1;}
break;
case 2:switch(hunt)
{
case 10:temp=EM_VoltMaxCMD;
break;
case 20:temp=EM_VoltMinCMD;
break;
case 30:temp=EM_CurrMaxCMD;
break;
case 40:temp=EM_CurrMinCMD;
break;
case 50:temp=EM_AnglMaxCMD;
break;
case 60:temp=EM_AnglMinCMD;
break;
case 11:EM_VoltMaxCMD=temp;
break;
case 21:EM_VoltMinCMD=temp;
break;
case 31:EM_CurrMaxCMD=temp;
break;
case 41:EM_CurrMinCMD=temp;
break;
case 51:EM_AnglMaxCMD=temp;
break;
case 61:EM_AnglMinCMD=temp;
break;
default:break;
}
if(hunt%10==0)
{LCD_Seek11(temp,1);hunt=hunt+1;}
else
{LCD_Seek11(temp,0);hunt=hunt-1;}
break;
case 3:switch(hunt)
{
case 10:temp=EM_PwrFactMaxCMD;
break;
case 20:temp=EM_PwrFactMinCMD;
break;
case 30:temp=EM_NulPwrMaxCMD;
break;
case 40:temp=EM_NulPwrMinCMD;
break;
case 50:temp=TransFormSubVoltCMD;
break;
case 60:temp=EM_TimCntEnCMD;
break;
case 11:EM_PwrFactMaxCMD=temp;
break;
case 21:EM_PwrFactMinCMD=temp;
break;
case 31:EM_NulPwrMaxCMD=temp;
break;
case 41:EM_NulPwrMinCMD=temp;
break;
case 51:TransFormSubVoltCMD=temp;
break;
case 61:EM_TimCntEnCMD=temp;
break;
default:break;
}
if(hunt%10==0)
{LCD_Seek11(temp,1);hunt=hunt+1;}
else
{LCD_Seek11(temp,0);hunt=hunt-1;}
break;
case 4:if(hunt<60)
{
switch(hunt)
{
case 10:temp=EM_ENH_ModeCMD;
break;
case 20:temp=EM_ENH_VoltCMD;
break;
case 30:temp=EM_ENH_CurrCMD;
break;
case 40:temp=EM_ENH_AnglCMD;
break;
case 50:temp=EM_ENH_TimeCMD;
break;
case 11:EM_ENH_ModeCMD=temp;
break;
case 21:EM_ENH_VoltCMD=temp;
break;
case 31:EM_ENH_CurrCMD=temp;
break;
case 41:EM_ENH_AnglCMD=temp;
break;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -