版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.../#include<reg52.h>#defineuintunsignedint#defineucharunsignedchar#defineLEDP0//数码管的段选#defineLIGHTP1//时分秒位的指示灯#defineWSP2//数码管的位选sbitkey1=P3^0;//时间暂停/开始sbitkey2=P3^1;//时间/闹钟设置sbitkey3=P3^2; //增加sbitkey4=P3^3; //减少sbitalarm=P3^6;//闹铃uchartab[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//0-9uchartab_dp[10]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef};//0.-9.〔带小数点uchardata1[]={0,0,0,0,0,0};uchardata2[]={0,0,0,0,0,0};uintt,k,kk,k1,flag;uintbbh,bbm,bbs,bbh1,bbm1,bbs1;uintsec,min,hour,sec1,min1,hour1;//定义秒,分,时voidinit<>;voiddisplay<>;voiddisplay_bb<>;voiddelay<uint>;voidkeyscan<>;voidmain<>{init<>;while<1>{ keyscan<>; if<k1==0||k1==1||k1==2||k1==3>//显示调节时间{display<>;}if<k1==4||k1==5||k1==6>//显示调节闹钟{display_bb<>;} if<<bbh==hour>&&<bbm==min>&&data1[4]==0&&data1[5]==5>//5s报时 { alarm=~alarm; delay<1>; } if<<bbs==sec>&&<bbm==min>&&<bbh==hour>>//可调报时 { alarm=~alarm; delay<1>; }}}voidinit<>{ WS=LIGHT=flag=0; sec=min=hour=0;//将0赋给时分秒 TMOD=0x01;//方式1P129〔见课本 TH0=0x3c;//65536-50000=15536=0x3cb0<50ms>P128〔见课本 TL0=0xb0; EA=1;//开总中断P161〔见课本 TR0=1; //定时/计数器0开启 ET0=1; //定时器/计数器0溢出中断启动P161〔见课本}voiddelay<unsignedintt> //延时函数{unsignedinti;while<t--> for<i=0;i<125;i++>;}voiddisplay<> //显示时间函数{ if<TF0==1>//定时器/计数器溢出P130〔见课本 { TF0=0;//清中断标志位 t++; if<t==20> //<50ms*20=1s> { t=0; sec++;//秒加1 if<sec==60>//秒为60,则清零,分加1 { sec=0; min++; } if<min==60>//分为60,则清零,时加1 { min=0; hour++; } if<hour==24>//时为24,则清零 { hour=0; } }} data1[5]=sec%10; data1[4]=sec/10; data1[3]=min%10; data1[2]=min/10; data1[1]=hour%10; data1[0]=hour/10; WS=0xdf;//11011111,低电平显示 LED=tab[data1[5]]; delay<1>; WS=0xef; //11101111 LED=tab[data1[4]]; delay<1>; WS=0xf7; //11110111 LED=tab_dp[data1[3]]; delay<1>; WS=0xfb; //11111011 LED=tab[data1[2]]; delay<1>; WS=0xfd; //11111101 LED=tab_dp[data1[1]]; delay<1>; WS=0xfe; //11111110 LED=tab[data1[0]]; delay<1>;}voiddisplay_bb<> //显示闹钟函数{ data2[5]=bbs%10; data2[4]=bbs/10; data2[3]=bbm%10; data2[2]=bbm/10; data2[1]=bbh%10; data2[0]=bbh/10; WS=0xdf;//11011111,低电平显示 LED=tab[data2[5]]; delay<1>; WS=0xef; //11101111 LED=tab[data2[4]]; delay<1>; WS=0xf7; //11110111 LED=tab_dp[data2[3]]; delay<1>; WS=0xfb; //11111011 LED=tab[data2[2]]; delay<1>; WS=0xfd; //11111101 LED=tab_dp[data2[1]]; delay<1>; WS=0xfe; //11111110 LED=tab[data2[0]]; delay<1>;}voidkeyscan<> //键盘扫描{if<key1==0> //暂停/开始{ ++kk;while<!key1>{display<>; if<kk==1> { TR0=0; if<k1==0||k1==1||k1==2||k1==3>//显示调节时间{ display<>;}if<k1==4||k1==5||k1==6>//显示调节闹钟{display_bb<>;} if<key2==0> //模式选择〔调节时间/闹钟 { k1++; while<!key2> { if<k1==1>//第1次按下 { sec1=sec;//保存秒的数值 sec=88;//显示88,表示可以调节秒的数值了 display<>;//显示88 sec=sec1;//恢复前一刻秒的数值 } if<k1==2> { min1=min; min=88; display<>; delay<1>; min=min1; } if<k1==3> { hour1=hour; hour=88; display<>; delay<1>; hour=hour1; } if<k1==4> { sec1=bbs;//保存秒的数值 bbs=66;//显示66,表示可以调节秒的数值了 display_bb<>;//显示66 bbs=sec1;//恢复前一刻秒的数值 } if<k1==5> { min1=bbm; bbm=66; display_bb<>; delay<10>; bbm=min1; } if<k1==6> { hour1=bbh; bbh=66; display_bb<>; delay<10>; bbh=hour1; } if<k1==7> { k1=0; display<>; } } } if<key3==0>//时间/闹钟增加设置 { while<!key3> { if<k1==1> { sec++;//秒加1 delay<60>; if<sec==60> sec=0; display<>; } if<k1==2> { min++; delay<60>; if<min==60> min=0; display<>; } if<k1==3> { hour++; delay<60>; if<hour==24> hour=0; display<>; } if<k1==4> { bbs++;//秒加1 delay<60>; if<bbs==60> bbs=0; display_bb<>; } if<k1==5> { bbm++; delay<60>; if<bbm==60> bbm=0; display_bb<>; } if<k1==6> { bbh++; delay<60>; if<bbh==24> bbh=0; display_bb<>; } if<k1==7> { k1=0; display<>; } } } if<key4==0> //时间/闹钟减少设置 { while<!key4> { if<k1==1> { sec--;//秒加1 delay<60>; if<sec==0> sec=60; display<>; } if<k1==2> { min--; delay<60>; if<min==0> min=60; display<>; } if<k1==3> { hour--; delay<60>; if<hou
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025广西柳州三江县人社局第十次招聘城镇公益性岗位人员1人参考笔试题库及答案解析
- 2025年12月广东广州市天河区枫叶幼儿园编外聘用制专任教师招聘1人笔试考试备考试题及答案解析
- 2025西藏阿里地区革吉县司法局招聘专职人民调解员3人备考笔试题库及答案解析
- 2025-2026年文山州广南县社会救助服务工作人员招聘(74人)模拟笔试试题及答案解析
- 2025四川新南城乡建设集团有限公司招聘一线工作人员3人笔试考试参考试题及答案解析
- 2025江西吉安井冈山市新城镇人民政府面向社会招聘工作人员1人备考笔试试题及答案解析
- 2026广西梧州市中小学(幼儿园)招聘专任教师321人(梧州学院专场)参考笔试题库及答案解析
- 2025上海民生轮船有限公司招聘1人参考笔试题库及答案解析
- 2025湖南长沙水业集团有限公司社会招聘1人备考考试题库及答案解析
- 2025年台州市黄岩全域资源开发管理有限公司公开招聘市场化工作人员4人参考笔试题库及答案解析
- T-CEPPEA 5002-2019 电力建设项目工程总承包管理规范
- 糖尿病诊疗的指南
- 2025年高考语文复习之文言文阅读(全国)12 选择性必修下教材文言文挖空练习+重要知识点归类(含答案)
- 房屋出租安全免责协议书
- 2024《整治形式主义为基层减负若干规定》全文课件
- 2024年建筑继续教育-建筑八大员(九大员)继续教育笔试历年真题荟萃含答案
- 慢性中耳炎教学查房
- (2023年基价)井巷工程消耗量定额说明
- 放射医学技术职称考试 《相关专业知识》篇 考点汇总
- 地铁资料城市轨道交通设备系统控制中心
- 企业数字化转型发言稿
评论
0/150
提交评论