while (i--);
}
void timer1_init()/*****************定時(shí)器1初始化***********************/
{
TMOD|=0X10 ;
TMOD&=0XDF;
TH1=0XFC;
TL1=0X67;
TR1=1;
}
void int_init()/*********************定時(shí)器1溢出中斷初始化**************/
{
ET1=1;
EA=1;
}
void key_deal()/*********************每個(gè)按鍵對(duì)應(yīng)的單擊事件(共4*4=16個(gè)按鍵)********/
{
switch(keyNum)
{
case 1 :switch(b)//數(shù)字0
{
case 1:miao=miao/10*10+0;break;
case 2:miao=miao%10+0*10;break;
case 3:fen=fen/10*10+0; break;
case 4:fen=fen%10+10*0; break;
case 5:shi=shi/10*10+0; break;
case 6:shi=shi%10+10*0; break;
default:break;
}
break;
case 2 : switch(b)//+加號(hào)鍵
{
case 0:break;
case 1:shiwei=miao/10;gewei=miao%10;if(gewei==9) gewei=0; else gewei++; miao=shiwei*10+gewei;keyNum=0;break;
case 2:shiwei=miao/10;gewei=miao%10;if(shiwei==5) shiwei=0;else shiwei++;miao=shiwei*10+gewei;keyNum=0;break;
case 3:shiwei=fen/10; gewei=fen%10; if(gewei==9) gewei=0; else gewei++; fen=shiwei*10+gewei;keyNum=0; break;
case 4:shiwei=fen/10; gewei=fen%10; if(shiwei==5) shiwei=0;else shiwei++;fen=shiwei*10+gewei;keyNum=0; break;
case 5:shiwei=shi/10; gewei=shi%10;
if(shiwei<2&&gewei<9) {gewei++; goto zz1;}
if(shiwei<2&&gewei==9) {gewei=0; goto zz1;}
if(shiwei>1&&gewei==3) {gewei=0; goto zz1;}
if(shiwei>1&&gewei<3) {gewei++; goto zz1;}
zz1:
shi=shiwei*10+gewei;keyNum=0; break;
case 6:shiwei=shi/10; gewei=shi%10; if(gewei<4&&shiwei==2) {shiwei=0; goto zz2;}
if(gewei<4&&shiwei<2) {shiwei++; goto zz2;}
if(gewei>3&&shiwei==1) {shiwei=0; goto zz2;}
if(gewei>3&&shiwei<1) {shiwei++; goto zz2;}
zz2:
shi=shiwei*10+gewei;keyNum=0; break;
default :break;
}
break;
case 3 :switch(b)//-減號(hào)鍵
{
case 0:break;
case 1:shiwei=miao/10;gewei=miao%10;if(gewei==0) gewei=9; else gewei--; miao=shiwei*10+gewei;keyNum=0;break;
case 2:shiwei=miao/10;gewei=miao%10;if(shiwei==0) shiwei=5;else shiwei--;miao=shiwei*10+gewei;keyNum=0;break;
case 3:shiwei=fen/10; gewei=fen%10; if(gewei==0) gewei=9; else gewei--; fen=shiwei*10+gewei;keyNum=0; break;
case 4:shiwei=fen/10; gewei=fen%10; if(shiwei==0) shiwei=5;else shiwei--;fen=shiwei*10+gewei;keyNum=0; break;
case 5:shiwei=shi/10; gewei=shi%10; if(shiwei<2&&gewei==0) {gewei=9; goto xx1;}
if(shiwei<2&&gewei>0) {gewei--; goto xx1;}
if(shiwei>1&&gewei==0) {gewei=3; goto xx1;}
if(shiwei>1&&gewei>0) {gewei--; goto xx1;}
xx1:
shi=shiwei*10+gewei;keyNum=0; break;
case 6:shiwei=shi/10; gewei=shi%10; if(gewei<4&&shiwei==0) {shiwei=2; goto xx2;}
if(gewei<4&&shiwei>0) {shiwei--; goto xx2;}
if(gewei>3&&shiwei==0) {shiwei=1; goto xx2;}
if(gewei>3&&shiwei>0) {shiwei--; goto xx2;}
xx2:
shi=shiwei*10+gewei;keyNum=0; break;
default :break;
}
break;
case 5 :switch(b)//數(shù)字3
{
case 1:miao=miao/10*10+3;break;
case 2:miao=miao%10+3*10;break;
case 3:fen=fen/10*10+3; break;
case 4:fen=fen%10+10*3; break;
case 5:shi=shi/10*10+3; break;
default:break;
}
break;
case 6 :switch(b)//數(shù)字6
{
case 1:miao=miao/10*10+6;break;
case 3:fen=fen/10*10+6; break;
case 5:if(shi/10<2) shi=shi/10*10+6; break;
default:break;
}
break;
case 7:switch(b)//數(shù)字9
{
case 1:miao=miao/10*10+9;break;
case 3:fen=fen/10*10+9; break;
case 5:if(shi/10<2) shi=shi/10*10+9; break;
default:break;
}
break;
case 9 :switch(b)//數(shù)字2
{
case 1:miao=miao/10*10+2;break;
case 2:miao=miao%10+2*10;break;
case 3:fen=fen/10*10+2; break;
case 4:fen=fen%10+10*2; break;
case 5:shi=shi/10*10+2; break;
case 6:if(shi%10<4) shi=shi%10+10*2; break;
default:break;
}
break;
case 10 :switch(b)//數(shù)字5
{
case 1:miao=miao/10*10+5;break;
case 2:miao=miao%10+5*10;break;
case 3:fen=fen/10*10+5; break;
case 4:fen=fen%10+10*5; break;
case 5:if(shi/10<2) shi=shi/10*10+5; break;
default:break;
}
break;
case 11:switch(b)//數(shù)字8
{
case 1:miao=miao/10*10+8;break;
case 3:fen=fen/10*10+8; break;
case 5:if(shi/10<2) shi=shi/10*10+8; break;
default:break;
}
break;
case 12: --b;if(b<0) b=6; keyNum=0;break;//移位鍵,向右移一位
case 13 :switch(b)//數(shù)字1
{
case 1:miao=miao/10*10+1;break;
case 2:miao=miao%10+1*10;break;
case 3:fen=fen/10*10+1; break;
case 4:fen=fen%10+10*1; break;
case 5:shi=shi/10*10+1; break;
case 6:shi=shi%10+10*1; break;
default:break;
}
break;
case 14 :switch(b)//數(shù)字4
{
case 1:miao=miao/10*10+4;break;
case 2:miao=miao%10+4*10;break;
case 3:fen=fen/10*10+4; break;
case 4:fen=fen%10+10*4; break;
case 5:if(shi/10<2) shi=shi/10*10+4; break;
default:break;
}
break;
case 15:switch(b)//數(shù)字7
{
case 1:miao=miao/10*10+7;break;