📄 setup.c
字号:
{
displaymessage(LMBLANK,LINE1);
displaymessage(LMIDLISTBOTTOM,LINE2);
delayTimerh(TMSGWAITTIME);
//getuserbysn();
readuserdata(currentsn);
setidlistdisp();
}
}
else if(keynumber==NUMBER4)
{
if(getusedsn(UPWARD))setidlistdisp();
else
{
displaymessage(LMBLANK,LINE1);
displaymessage(LMIDLISTTOP,LINE2);
delayTimerh(TMSGWAITTIME);
readuserdata(currentsn);
setidlistdisp();
}
}
}
}
}
////////////////////////////////////////////////////////////////////////////
void setidcountdisp()
{
unsigned short idcount;
if(!submenuflag)
{
setupitem=SETIDCOUNT;
displaymessage(LMIDCOUNT,LINE1);
displaymessage(LMBLANK,LINE2);
idcount=getusernum();
displayshort(idcount,4,21);
}
}
////////////////////////////////////////////////////////////////////////////
void setidcount()
{
if(keynumber==0xff)setidcountdisp();
else
{
if(!submenuflag)
{
if(keynumber==CANCEL)terminatesetup();
else if(keynumber==NUMBER6)seteventcountdisp();
else if(keynumber==NUMBER4)setidlistdisp();
}
}
}
//////////////////////////////////////////////////////////////////////////
void seteventcountdisp()
{
setupitem=SETEVENTCOUNT;
displaymessage(LMEVENTCOUNT,LINE1);
displayshort(getneweventnum(),4,21);
//here display event count
}
//////////////////////////////////////////////////////////////////////////
void seteventcount()
{
if(keynumber==0xff)seteventcountdisp();
else
{
if(keynumber==CANCEL)terminatesetup();
else if(keynumber==NUMBER6)setidregisterdisp();
else if(keynumber==NUMBER4)setidcountdisp();
}
}
////////////////////////////////////////////////////////////////////
void setfwverdisp()
{
setupitem=SETFWVER;
displaymessage(LMFWVER,LINE1);
displaymessage(LMV100,LINE2);
displaybcd(VERHIGH,22);
displaybcd(VERLOW,25);
}
////////////////////////////////////////////////////////////////////
void setfwver()
{
if(keynumber==0xff)setfwverdisp();
else
{
if(!submenuflag)
{
if(keynumber==CANCEL)terminatesetup();
else if(keynumber==NUMBER6)setramtestdisp();
else if(keynumber==NUMBER4)setcommtestdisp();
}
}
}
///////////////////////////////////////////////////////////////////////////////////////////////
void setramtestdisp()
{
if(!submenuflag)
{
setupitem=SETRAMTEST;
displaymessage(LMRAMTEST,LINE1);
displaymessage(LMBLANK,LINE2);
}
else
{
}
}
///////////////////////////////////////////////////////////////////////////////////////////////
void setramtest()
{
if(keynumber==0xff)setramtestdisp();
else
{
if(!submenuflag)
{
if(keynumber==ENTER)
{
//here start ram test
//setramtest(0xff)
submenuflag=1;
displaymessage(LMRAMTESTBANK,LINE1);
displaymessage(LMRAMTESTING,LINE2);
if(sramtest())
{
displaymessage(LMRAMTESTOK,LINE1);
displaymessage(LMPRESSKEY,LINE2);
}
else
{
displaymessage(LMRAMTESTFAIL,LINE1);
displaymessage(LMPRESSKEY,LINE2);
}
//setramtestdisp();
}
else if(keynumber==CANCEL)terminatesetup();
else if(keynumber==NUMBER6)setouttestdisp();
else if(keynumber==NUMBER4)setfwverdisp();
}
else
{
submenuflag=0;
setramtestdisp();
}
}
}
/////////////////////////////////////////////////////////////////////////////////////
void outtest()
{
unsigned char i;
for(i=0;i<5;i++)
{
displaymessage(LMOUTTESTDISP,LINE1);
displayshort(i,1,12);
displaymessage(LMOUTTESTON,LINE2);
set_373(i);
delayTimerh(T100MS);
displaymessage(LMOUTTESTOFF,LINE2);
clr_373(i);
delayTimerh(T100MS);
displaymessage(LMOUTTESTON,LINE2);
set_373(i);
delayTimerh(T100MS);
displaymessage(LMOUTTESTOFF,LINE2);
clr_373(i);
delayTimerh(T100MS);
}
displaymessage(LMPRESSKEY,LINE2);
}
/////////////////////////////////////////////////////////////////////////////
void setouttestdisp()
{
if(!submenuflag)
{
setupitem=SETOUTTEST;
displaymessage(LMOUTTEST,LINE1);
displaymessage(LMBLANK,LINE2);
}
else
{
}
}
/////////////////////////////////////////////////////////////////////////////////////
void setouttest()
{
if(keynumber==0xff)setouttestdisp();
else
{
if(!submenuflag)
{
if(keynumber==ENTER)
{
//here start the outport test
//setouttest(0xff);
//setouttestdisp();
submenuflag=1;
outtest();
}
else if(keynumber==CANCEL)terminatesetup();
else if(keynumber==NUMBER6)setlcdtestdisp();
else if(keynumber==NUMBER4)setramtestdisp();
}
else
{
submenuflag=0;
setouttestdisp();
}
}
}
//////////////////////////////////////////////////////////////////////////////////////////////
void lcdtest()
{
unsigned char i,j;
for(i=0;i<64;i++)
{
for(j=0;j<32;j++)
{
dispbuff[LINE1][j]=i+j+0x20;
}
display(LINE1);
display(LINE2);
delayTimerh(T200MS);
}
displaymessage(LMBLANK,LINE1);
displaymessage(LMPRESSKEY,LINE2);
}
//////////////////////////////////////////////////////////////////////////////////////////////
void setlcdtestdisp()
{
if(!submenuflag)
{
setupitem=SETLCDTEST;
displaymessage(LMLCDTEST,LINE1);
displaymessage(LMBLANK,LINE2);
}
else
{
}
}
//////////////////////////////////////////////////////////////////////////////////////////////
void setlcdtest()
{
if(keynumber==0xff)setlcdtestdisp();
else
{
if(!submenuflag)
{
if(keynumber==ENTER)
{
//here start the lcd test
submenuflag=1;
lcdtest();
}
else if(keynumber==CANCEL)terminatesetup();
else if(keynumber==NUMBER6)setkeytestdisp();
else if(keynumber==NUMBER4)setouttestdisp();
}
else
{
submenuflag=0;
setlcdtestdisp();
}
}
}
///////////////////////////////////////////////////////////////////////////
void setkeytestdisp()
{
if(!submenuflag)
{
setupitem=SETKEYTEST;
displaymessage(LMKEYTEST,LINE1);
displaymessage(LMBLANK,LINE2);
}
else
{
display(LINE2);
}
}
///////////////////////////////////////////////////////////////////////////
unsigned char code keynumbertesttbl[16]={"0123456789ABCDEF"};
void setkeytest()
{
unsigned char i;
if(keynumber==0xff)setkeytestdisp();
else
{
if(!submenuflag)
{
if(keynumber==ENTER)
{
submenuflag=1;
displaymessage(LMKEYTESTDISP,LINE2);
displaymessage(LMBLANK,LINE1);
}
else if(keynumber==CANCEL)terminatesetup();
else if(keynumber==NUMBER6)setreadertestdisp();
else if(keynumber==NUMBER4)setlcdtestdisp();
}
else
{
dispbuff[1][keynumber]=0x20;
display(LINE2);
{
for(i=0;i<16;i++)
{
if(dispbuff[1][i]!=0x20)break;
}
if(i==16)
{
submenuflag=0;
setkeytestdisp();
}
}
}
}
}
////////////////////////////////////////////////////////////////////////////////////
void setreadertestdisp()
{
if(!submenuflag)
{
setupitem=SETREADERTEST;
displaymessage(LMREADERTEST,LINE1);
displaymessage(LMBLANK,LINE2);
}
else
{
//here display the reader test result
displaymessage(LMSCANID,LINE2);
displaymessage(LMBLANK,LINE1);
}
}
////////////////////////////////////////////////////////////////////////////////////
void setreadertest()
{
if(keynumber==0xff)setreadertestdisp();
else
{
if(!submenuflag)
{
if(keynumber==ENTER)
{
submenuflag=1;
//setreadertest(0xff);
setreadertestdisp();
}
else if(keynumber==CANCEL)terminatesetup();
else if(keynumber==NUMBER6)setintestdisp();
else if(keynumber==NUMBER4)setkeytestdisp();
}
else
{
if((keynumber==ENTER)||(keynumber==CANCEL))
{
//submenuflag=0;
clearsetup();
//setreadertest(0xff);
setreadertestdisp();
}
}
}
}
////////////////////////////////////////////////////////////////////////////////////
void setintestdisp()
{
unsigned char i;
if(!submenuflag)
{
setupitem=SETINTEST;
displaymessage(LMINTEST,LINE1);
displaymessage(LMBLANK,LINE2);
}
else
{
for(i=0;i<5;i++)
{
if(instate&bittbl[i])
{
dispbuff[LINE2][3+2*i]=0x31;
}
else
{
dispbuff[LINE2][3+2*i]=0x30;
}
}
display(LINE2);
}
}
////////////////////////////////////////////////////////////////////////////////////
void setintest()
{
if(keynumber==0xff)setintestdisp();
else
{
if(!submenuflag)
{
if(keynumber==ENTER)
{
submenuflag=1;
//here start in test
setintestdisp();
//setcount=0xff;
}
else if(keynumber==CANCEL)terminatesetup();
else if(keynumber==NUMBER6)setcommtestdisp();
else if(keynumber==NUMBER4)setreadertestdisp();
}
else
{
if((keynumber==ENTER)||(keynumber==CANCEL))
{
//submenuflag=0;
clearsetup();
//setintest(0xff);
setintestdisp();
}
}
}
}
//////////////////////////////////////////////////////////////////////////////////////////////////
void setcommtestdisp()
{
if(!submenuflag)
{
setupitem=SETCOMMTEST;
displaymessage(LMCOMMTEST,LINE1);
displaymessage(LMBLANK,LINE2);
}
else
{
displaymessage(LMBLANK,LINE1);
displaymessage(LMCOMMTESTING,LINE2);
}
}
//////////////////////////////////////////////////////////////////////////////////////////////////
void setcommtest()
{
unsigned char temptime,temptime1;
unsigned char tempcrclow,tempcrchigh;
unsigned short datalen;
if(!submenuflag)
{
if(keynumber==ENTER)
{
submenuflag=1;
setcommtestdisp();
ackpccmd(DCRCHECKLINK,RETOK,0);
temptime=timerh;
temptime1=timerh;
while((timerh-temptime)<TWAITPCOKTIME)
{
if((timerh-temptime1)>T500MS)
{
temptime1=timerh;
ackpccmd(DCRCHECKLINK,RETOK,0);
}
if(rxd0packflag)
{
rxd0packflag=0;
datalen=(uart0buff[2]<<8)|uart0buff[1];
tempcrclow=uart0buff[datalen+1];
tempcrchigh=uart0buff[datalen+2];
checkcrc(datalen);
if(tempcrclow==uart0buff[datalen+1]&&tempcrchigh==uart0buff[datalen+2]&&uart0buff[PCPACKAGEIDP]==readcommid())
{
if(uart0buff[PCPACKAGECMDP]==PCOK)
{
displaymessage(LMCOMMPASS,LINE1);
displaymessage(LMPRESSKEY,LINE2);
return;
}
}
//else
//{
// displaymessage(LMCOMMFAIL,LINE1);
// displaymessage(LMPRESSKEY,LINE2);
// return;
//}
}
}
displaymessage(LMCOMMFAIL,LINE1);
displaymessage(LMPRESSKEY,LINE2);
}
else if(keynumber==CANCEL)terminatesetup();
else if(keynumber==NUMBER6)setfwverdisp();
else if(keynumber==NUMBER4)setintestdisp();
}
else
{
clearsetup();
setcommtestdisp();
}
}
//////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////
void powerinitpassdisp()
{
setflag=1;
setupitem=SETPOWERINITPASS;
displaymessage(LMMASTERPASS,LINE1);
displaymessage(LMMASTERPASSIN,LINE2);
lcdcuron(MASTERPASSSTARTP,LINE2);
}
//////////////////////////////////////////////////////////////////////////////////////////////////
void masterpassdisp()
{
setflag=1;
setupitem=SETMASTERPASS;
displaymessage(LMMASTERPASS,LINE1);
displaymessage(LMMASTERPASSIN,LINE2);
//write_command(SET_DDRAM_ADD+0X46); //display(LINE2);
//write_command(DISP_ON_NCUR_B);
lcdcuron(MASTERPASSSTARTP,LINE2);
}
//////////////////////////////////////////////////////////////////////////////////////////////////
void masterpasserr()
{
accessevent(eventtype|MESSAGEDENIED);
//here need do sth else???????
clearsetup();
setflag=0;
//lcdback();
//displaymessage(LMMAIN,LINE1);
displayMain();
displaytime();
}
//////////////////////////////////////////////////////////////////////////////////////////////////
bit checkmasterpass()
{
keybuff[0]=(keybuff[0]<<4)+keybuff[1];
keybuff[1]=(keybuff[2]<<4)+keybuff[3];
if(readmasterchange())
{
readuserdata(MASTERUSERSN);
if(tempbuff[12]!=keybuff[0])return FALSE;
if(tempbuff[13]!=keybuff[1])return FALSE;
return TRUE;
}
else
{
if(keybuff[0]!=MASTERPASSHIGH)return FALSE;
if(keybuff[1]!=MASTERPASSLOW)return FALSE;
return TRUE;
}
}
//////////////////////////////////////////////////////////////////////////////////////////////////
void setmasterpass()
{
if((keynumber==CANCEL)||(keynumber==ENTER))terminatesetup();
else
{
dispbuff[LINE2][setcount+MASTERPASSSTARTP]=keynumber;
displaybyte('*',MASTERPASSSTARTP+setcount+0x40+SET_DDRAM_ADD);
keybuff[setcount]=keynumber;
//display(LINE2);
setcount++;
lcdcuron(MASTERPASSSTARTP+setcount,LINE2);
if(setcount>=4)
{
clearsetup();
passinflag=0;
setflag=0;
if(!checkmasterpass())
{
masterpasserr();
}
else
{
if(readfpmode()&&readmasterchange())
{
currentsn=0x9999;
//displaymessage(LMBLANK,LINE1);
//displ
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -