基于51单片机电子闹钟的设计(5)

2020-07-27 09:37

} if(cnt==6) { shi2--; if(shi2==255) shi2=23; }

if(cnt==7)

{ miao3--; if(miao3==255) miao3=59; } if(cnt==8) { fen3--; if(fen3==255) fen3=59; } if(cnt==9) { shi3--; if(shi3==255) shi3=23; }

if(cnt==10) { miao--;

if(miao==255) miao=59;

cnt1++;

} if(cnt==11) { fen--; if(fen==255) fen=59;

cnt1++;

27

} if(cnt==12) { shi--; if(shi==255) shi=23;

cnt1++;

} }

//***************************闹铃子函数***************************// void clock()

//判断秒的数值是否相等

{ if(miao==miao1&&alm1==0||miao==miao2&&alm2==0||miao==miao3&&alm3==0) //是,在判断分是否相等

if(fen==fen1&&alm1==0||fen==fen2&&alm2==0||fen==fen3&&alm3==0) //是,再判断时是否相等

if(shi==shi1&&alm1==0||shi==shi2&&alm2==0||shi==shi3&&alm3==0) { flag2=0; //是,则标志位,flag2清零 while(!(flag2==1200)&&(cnt==0)) //判断flag2是否到1200且不

// 为调时状态

//没有,则继续驱动蜂鸣器响

{if(key4==0)

{while(!key4) flag2=1200;

}

if(flag1>1) //等时方波驱动蜂鸣器

{ fmq=~fmq;

flag1=0; }

shijian(); //调用时间子函数 display(); //调用显示子函数 }

fmq=1; //关闭蜂鸣器

}

28

}

//**************************主函数********************************// void main()

{ init(); //调用初始化子函数 while(1)

{ clock(); //闹钟子函数 if(cnt==1||cnt==2||cnt==3) //显示子函数 { display1(); }

if(cnt==4||cnt==5||cnt==6)

{ display2(); }

if(cnt==7||cnt==8||cnt==9)

{ display3(); }

if(cnt==0||cnt==10||cnt==11||cnt==12||cnt==13)

{ display(); }

shijian();

key_scan();

//调用时间子函数 //调用键盘扫描子函数

} }

//**************************定时中断******************************// void time0() interrupt 1

{ TH0=0x3c; //初值50ms (65536-50000)/256 TL0=0x0b0;

// (65536-50000)%6

flag++; //标志位 flag1++;

flag2++;

}

29


基于51单片机电子闹钟的设计(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:黑板报评比通讯稿

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: