}
}
//*********************黄灯控制键扫描 keyscan2() {
if(key1==0)
{
b=0;
delay(12);
while(key1==0) ; delay(12);
ye++;
b++;
}
if(ye!=0) //con=1||2时的加一运算
if(key2==0)
{
delay(12); while(key2==0) ; delay(12); timedate2[ye]++;
if(timedate2[ye]>9)timedate2[ye]=0;
shi2=timedate2[1];
ge2=timedate2[2]; display(shi2,ge2) ; n2=10*shi2+ge2;
}
}
if(ye!=0) //con=1||2时的减一运算
shi2=timedate2[1];
if(key3==0)
{
delay(12); while(key3==0) ; delay(12); timedate2[ye]--;
if(timedate2[ye]==255)timedate2[ye]=9;
ge2=timedate2[2];
display(shi2,ge2);
n2=10*shi2+ge2;
}
void timer0() interrupt 1 { }
//******************时钟控制键扫描程序 keyscan3() {
if(key6==0)
TH0=(65536-50000)/256; TL0=(65536-50000)%6; a1++;
{
delay(12);
while(key6==0) ; delay(12);
con3++;
TR1=0;
if(con3==5){TR0=1;con3=0; }
}
if(con3!=0) //con=1||2时的加一运算
if(key2==0)
{ }
delay(12); while(key2==0) ; delay(12); timedate3[con3]++; if(con3==1)con31=2; else if(con3==2)con31=9; else if(con3==3)con31=5; else if(con3==4)con31=9;
if(timedate3[con3]>con31)timedate3[con3]=0; if(timedate3[1]==2&&timedate3[2]==4)
{timedate3[2]=0;timedate3[1]=0;}
if(con3!=0)
if(key3==0) {
delay(12);
}
}
while(key3==0) ; delay(12); timedate3[con3]--;
if(con3==1) con32=2; else if(con3==2) con32=9; else if(con3==3) con32=5; else if(con3==4) con32=9;
if(timedate3[con3]==255)timedate3[con3]=con32; if(timedate3[1]==2&&timedate3[2]==9)
timedate3[2]=3;
aa=timedate3[1]; //小时的十是位 bb=timedate3[2]; cc=timedate3[3]; dd=timedate3[4]; ee=timedate3[5]; ff=timedate3[6]; t=10*aa+bb;
void time_intt3(void) interrupt 3 {
TH0=(65536-50000)/256; TL0=(65536-50000)%6; a3++; if(a3==20)
}
{
a3=0;timedate3[6]++; if(timedate3[6]==10)
{timedate3[6]=0;timedate3[5]++;}
if(timedate3[5]==6)
{timedate3[5]=0;timedate3[4]++;}
if(timedate3[4]==10)
{timedate3[4]=0;timedate3[3]++;}
if(timedate3[3]==6)
{timedate3[3]=0;timedate3[2]++;}
if(timedate3[2]==10)
{timedate3[2]=0;timedate3[1]++;}
if(timedate3[1]==2&&timedate3[2]==4)
{timedate3[1]=0;timedate3[2]=0;}
aa=timedate3[1]; bb=timedate3[2]; cc=timedate3[3]; dd=timedate3[4]; ee=timedate3[5]; ff=timedate3[6]; t=10*aa+bb; }
附:参考文献
(1)祁伟 杨亭 单片机C51程序设计教程与实验. 北京:北京航空航天大学出版社2010
(2)何立民上编.单机应用文集. 北京:北京航空航天大学出版社2009 (3)何立民 主编,C51系列单片机应用系统设计,北京:北京航空航天大学出版
社2010