当前位置:首页 > 单片机C语言 - 电子时钟程序
{ p33xd(); if((numyue==1)||(numyue==3)||(numyue==5)||(numyue==7)||(numyue==8)||(numyue==10)||(numyue==12)) { numri-=1; if(numri==0) {numri=31;} } if((numyue==4)||(numyue==6)||(numyue==9)||(numyue==11)) { numri-=1; if(numri==0) {numri=30;} } if(numyue==2) { numri-=1; if(numri==0) {numri=28;} } riqh(); } }
void yuetiao()//月份的调节函数 {if(P32==0) { p32xd(); numyue+=1; if(numyue==13)//月份为12时再加一马上为一月 {numyue=1;} yueqh(); } if(P33==0) { p33xd(); numyue-=1; if(numyue==0) {numyue=12;} yueqh(); } }
void int0() interrupt 0 { p31xd(); while(P31!=0)//第一次按下p31时,进行秒调时 { for(m=0;m<40;m++)//此for循环不显示秒,为的是使秒闪烁 { P2=0x00; P0=table[hou1]; P2=0X20; delayms(1); P2=0x00; P0=table[hou2]&0x7f; P2=0X10; delayms(1); P2=0x00; P0=table[min1]; P2=0X08; delayms(1); P2=0x00; P0=table[min2]&0x7f; P2=0X04; delayms(1); if(P32==0)//如果按一下P32,则秒加一 { p32xd(); numsec+=1; if(numsec==60) { numsec=0; } secqh(); } if(P33==0)//如果按一下P33,则秒减一 { p33xd(); numsec-=1; if(numsec==-1) { numsec=59; }
secqh(); } }; for(n=0;n<40;n++)//此循环时分秒全显示,也为的是使秒闪烁 { displaysj(); if(P32==0) { p32xd(); numsec+=1; if(numsec==60) { numsec=0; } secqh(); } if(P33==0) { p33xd(); numsec-=1; if(numsec==-1) { numsec=59; } secqh(); } } };
p31xd();
while(P31!=0)//第二次按下p31时,进行分调时 {
for(m=0;m<40;m++) { P2=0x00; P0=table[hou1]; P2=0X20; delayms(1);
P2=0x00;
P0=table[hou2]&0x7f; P2=0X10; delayms(1); P2=0x00;
P0=table[sec1]; P2=0X02; delayms(1); P2=0x00;
P0=table[sec2]; P2=0X01; delayms(1);
if(P32==0) { p32xd(); nummin+=1; if(nummin==60) { nummin=0; } minqh(); } if(P33==0) { p33xd(); nummin-=1; if(nummin==-1) { nummin=59; } minqh(); } }
for(n=0;n<40;n++) { displaysj(); if(P32==0) { p32xd(); nummin+=1; if(nummin==60) { nummin=0; } minqh(); } if(P33==0) {
共分享92篇相关文档