51单片机做可调时钟(带秒表)另附proteus仿真图_第1页
51单片机做可调时钟(带秒表)另附proteus仿真图_第2页
51单片机做可调时钟(带秒表)另附proteus仿真图_第3页
51单片机做可调时钟(带秒表)另附proteus仿真图_第4页
51单片机做可调时钟(带秒表)另附proteus仿真图_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、承*穴*4(穴*4(穴*单片根I课程设计承沐穴*信息学院09级电一承沐穴*相卩佥9沐*穴*穴*穴承*穴*穴*)(*穴*穴*/#include#defineucharunsignedchar#defineuintunsignedintsbitmenu=P3A2;sbitreset=PlAO;sbitadd_min=PlAl;sbitadd_hour=PlA2;跑表清零,秒表状态下也是清零调分时加一调时时加一,秒表时按下不动跑表,松开暂停,再次按下继续sbitLATCH1=P2A2;定义锁存使能端I丨段锁存sbitLATCH2=P2A3;/位锁存uinta,b,j;ucharTempData8;h

2、oucminec,时钟hourO,minO.secO,/秒表k;状态转换标志ucharcodeweima=0 x7f,0 xbf/0 xdf/0 xef,0 xf7,0 xfb,0 xfd/0 xfe;ucharcodeduanma=0 x3f/0 x06/0 x5b,0 x4f,0 x66,0 x6d/0 x7d/0 x07/0 x7f/0 x6f;函数声明*/voidkeyscanl();voidkeyscan2();voidinit();voiddelay(ucharz);voiddisplay(ucharhououcharminzucharsec);J;函数*/voidmain()in

3、it();while(TRI)display(hourO,minO,secO);/时钟表显示while(k)if(k=l)TR0=0;keyscan2();display(hour;minsec);if(k=2)keyscanl();display(hourO,minO,secO);*11/数*穴*p*voidinit()b=0;hourO=12;min0=0;sec0=0;hour=0;min=0;sec=0;TMOD=Oxll;TH0=(65536-5000)/256;TL0=(65536-5000)%256;THl=(65536-50000)/256;TLl=(65536-50000)%

4、256;定时器0工作于方式1;赋初值EA=1;EXO=1;秒表中断ETO=1;ET1=1;IT0=l;边沿触发方式IT1=1;PXO=1;PX1=1;TRO=O;TR1=1;初始,秒表不工作时钟一开始工作定时器0中断*/voidtimerO_int()interrupt1秒表TH0=(65536-5000)/256;TL0=(65536-5000)%256;a+;if(a=2)a=0;sec+;if(sec=100)亳秒级秒分sec=0;min+;if(min=60)min=0;hour+;if(hour=60)hour=0;外部中断0中断函数*/voidexO_int()interrupt0

5、if(k=3)状态变换1(时)2(秒表)3(调时)1定时器1中断*/控制时钟工作voidtimerlnt()interrupt3THl=(65536-50000)/256;TLl=(65536-50000)%256;b+;if(b=20)b=0;secO+;if(sec0=60)secO=O;minO+;if(min0=60)min0=0;hourO+;if(hour0=24)hour0=0;/*lllj*voidkeyscanl()/display(hourOzminO,secO);if(reset=O)delay(lO);if(reset=O)secO=O;min0=0;hourO=12;

6、if(add_min=O)delay(lO);if(add_min=O)minO+;if(min0=60)min0=0;while(!add_min)display(hourOzminO,secO);if(add_hour=0)delay(lO);if(add_hour=0)hourO+;if(hour0=24)hourO=0;while(!add_hour)display(hourO,minOzsecO);*|2*voidkeyscan2()if(reset=O)delay(lO);if(reset=O)hour=0;min=0;sec=0;if(add_hour=0)delay(lO);if(add_hour=0)TRO二TRO;while(!add_hour)display(hour/min/sec);*穴*承*承*穴*扌描显示函数voiddisplay(ucharhououcharminzucharsec)unsignedchari;TempData0=duanmahour/10;TempDatal=duanmahour%10;TempData2=0 x40;TempData二duanmamin/:10;用于显示分TempData4=duanmamin%10;Temp

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论