minute=readx25043int(TIMESTATUSHIGH);
CycleTime=readx25043(CYCLESTATUS);
EndFlag=readx25043(ENDFSTATUS);
UpperV=readx25043int(UV_ADDH);
DownerV=readx25043int(DV_ADDH);
if (UpperV==0)
{UpperV=INIUPPERV;}
//UnitAdd=readx25043(UNITNO);
if(step.StepNo>19) step.StepNo=0;
if(minute>999) minute=0;
if(EndFlag) //if either of these item was not zero.it demonstarte abnormal break
{
InitTimer0(); //to start timer0
for(;;){
if(SaveGap>=SAVETIME)
{
SaveStatus(); // Save runing status every certain time
SaveTime=minute;
FAN=0;
}
ResetWD();
key=GetKey();
temp=ExeCommand();
if(temp) key=temp;
if(key==KEY_ENTER)
{
MenuId=MenuEntry(StartMenu,1); // menuID is index of one selection in menu
switch (MenuId)
{
case 0 : ProgEntry(); break;
// case 1 : SetVoltage();break;
/*case 2 : do {display("8I8I8I8I",8,0);
delay(100);
display("I8I8I8I8",8,0);
delay(100);}
while(1);*/
}
ContFlag=1;
}
switch (key)
{
case KEY_START : start(); ContFlag=1;break;
case KEY_CHARG : test(CHARGE); ContFlag=1;break;
case KEY_DISCH : test(DISCHARGE); ContFlag=1;break;
default : break;