基于单片机控制的数字钟设计_第1页
基于单片机控制的数字钟设计_第2页
基于单片机控制的数字钟设计_第3页
基于单片机控制的数字钟设计_第4页
基于单片机控制的数字钟设计_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

基于单片机控制的数字钟课程设计任务书1设计目的与要求设计出一个数字钟。准确地理解有关要求,独立完成系统设计,要求所设计的电路具有以下功能:(1)显示: 可以显示时、分和秒(2)调时功能:时(0-24) 、分和秒( 0-60)可以连续可调2设计内容 (1)画出电路原理图,正确使用逻辑关系;(2)确定元器件及元件参数;(3)进行电路模拟仿真;(4)SCH 文件生成与打印输出;3编写设计报告写出设计的全过程,附上有关资料和图纸,有心得体会。基于单片机控制的数字钟摘要:本设计是由 89c51 单片机和 74hc245 构成的多功能数字钟,它可以实现小时、分钟、秒的连续可调。操作特别方便硬件电路简单。并且采用具有发光亮度很好的七段数码管显示,特别具有可视性。关键词:数字钟;单片机表;多功能表目 录1 引言12 总体设计方案12.1 设计思路 12.2 总体设计框图 13 设计原理分析 .23.1 时钟电路的硬件设计分析 .23.2 时钟电路的软件设计分析24 程序设计24.1 主程序24.2 显示子程序34.3 定时器/计数器 T0 中断服务程序34.4 按键处理子程序3 5 结束语3参考文献 3附录 4附录 251 引言在人们的日常生活中,数字钟占有相当大的比重,可以说它是人们日常生活中不可缺少的东西。它扮演着时间老人的角色,这次设计是基于单片机制作而成的数字钟,以 24 小时为一周期,显示时、分、秒,而且可以实现连续可调。在具体处理过程中非常简单,用内部定时器进行定时处理,按键全部采用独立键盘非常方便快捷。2 总体设计方案2.1 设计思路:利用单片机内部定时器进行时间定时。刚开始的时候让数码管显示 12 点,进入调试模式后在主程序中不停的进行显示和按键扫描,当调整键按下时进入按键扫描程序进入后利用调整键按下的次数进行区分时分秒。当确定按下次数后,递增键和递减键分别对时间进行加或者减的操作,完毕后在对调整键操作就立刻退出调试进行正常显示。2.2 总体设计框图:AT89C51复位键晶振按键六位数码管显示74HC245图 1(总体设计框图)3 设计原理分析3.1 时钟电路的硬件设计分析:单片机 P0 口经过 74HC245 直接去驱动六个数码管,六个数码管接成并口动态显示。再利用P2 口的 P2.0 到 P2.5 进行位选。三个按键分别接着 P1.0 到 P1.2 进行时间设置。3.2 时钟电路的软件设计分析:在单片机通电后首先给显示赋初值让数码管显示 12 点,然后进入程序先对定时器 0 进行初始化,之后进入大循环主函数由显示函数和按键扫描两条语句构成。显示函数由正常的动态扫描显示部分组成进行位和段的分时显示,当无按键按下时也对按键扫描进行扫描但由于没按键按下会立刻跳出扫描程序。当有按键按下时进入按键扫描程序,按键扫描程序由两部分组成一部分对调整键次数进行区分看是按下一次还是两次或是三次然后进人递增键和递减键的扫描对时分秒进行操作,最后回到主程序进行扫描当调整键按下四次时跳出按键扫描程序恢复到正常显示。4 程序设计4.1 主程序主程序流程如图 2 所示,主程序先定时器 0 进行初始化,然后对显示函数和按键扫描函数进行扫描。在中断中对时分秒进行设置等待显示,当有按键按下时,则转入相应的按键处理程序进行按键扫描。开始和变量定义定时器初始化主程序(显示函数和按键扫描函数)调整键是否按下按键扫描程序NY图 2(主流程图)4.2 显示子程序这次设计共用了 6 个数码管,时、分、秒各占两位,显示程序中首先对时、分、秒进行分离然后在对时、分、秒进行为选和段选的分时传送让数码管进行动态扫描显示。4.3 定时器/计数器 T0 中断服务程序进入中断后现对定时器进行初始化然后在对一秒钟进行累计处理在其中完成对时分秒的累计清零处理。4.4 按键处理子程序当调整键按下时进入按键处理程序,处理过程图 3。主程序调整键是否有效对递增递减键进行扫描处理YN图 3(按键扫描流程图)5 结束语经过了三周的学习实践,我得到了很大的锻炼让我对单片机有更深的认识。也使我对我的专业更加热爱,我爱我的专业。在编程过程中我也得到了我们宿舍和同学的帮助让我和他们的关系更加密切。在此期间我又学了很多我以前没有学到的知识,我特别的高兴,在以后短短的岁月中我会对我的专业倾注更多爱。感谢曾经帮助过我的老师、同学、和所有帮助过我的所有人参考文献1李朝青.单片机原理及接口技术.北京:北京航空航天大学出版社,20052谭浩强.c 程序设计.北京:清华大学出版社,20053张桂红.单片机原理与应用. 福建:福建科技技术出版社,20074张鹏.单片机原理与应用实例教程J.海军出版社,2007附录 1:总体电路图EA/VP31X119X218RESET9RD17WR16INT012INT113T014T115P101P112P123P134P145P156P167P178P0039P0138P0237P0336P0435P0534P0633P0732P2021P2122P2223P2324P2425P2526P2627P2728PSEN29ALE/P30TXD11RXD10A1 *abfcg deDPY4 5 7 9 10 2 1a b c d e f g6dpdpDS3 DPY_7-SEGabfcg deDPY4 5 7 9 10 2 1a b c d e f g6dpdpDS4 DPY_7-SEGabfcg deDPY4 5 7 9 10 2 1a b c d e f g6dpdpDS5 DPY_7-SEGabfcg deDPY4 5 7 9 10 2 1a b c d e f g6dpdpDS6 DPY_7-SEGabfcg deDPY4 5 7 9 10 2 1a b c d e f g6dpdpDS7 DPY_7-SEGabfcg deDPY4 5 7 9 10 2 1a b c d e f g6dpdpDS1 DPY_7-SEGA02A13A24A35A46A57A68A79B018B117B216B315B414B513B612B711E19DIR1DS2 DPY_7-SEGS4 SW-PBS3 SW-PBS2 SW-PBS1 SW-PB1 2 3 4 5 6 7R13 RES212RES211RES210RES29RES28RES27RES26RES2A A A A A A A A5 RES24 RES23 RES22 RES2S D F GS D F GVCC A A A AS D F G1 2 3 4 5 6 7 89 10 11 12 13 14 15 169 10 11 12 13 14 15 169 10 11 12 13 14 15 16Y1 CRYSTALC2 C1VCCC3R1 RES21 2 3 4 5 6 71 2 3 4 5 6 71 2 3 4 5 6 71 2 3 4 5 6 71 2 3 4 5 6 7S5 SW-PBR14 RES2附录 2:程序清单#include#define uint unsigned int#define uchar unsigned charsbit key0=P10;/调整键sbit key1=P11;/时间增加键sbit key2=P12;/时间减少键sbit key3=P13;uchar code table=0x7e,0x48,0x3d,0x6d,0x4b,0x67,0x77,0x4c,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;uchar temp,tt,shi,ge,aa=1,bb=2,cc,dd,temp1,temp2=12,con=0,con1,con2;void delay(uint z);void initt0();void display();void keyscan();void main() initt0();while(1) display();keyscan();void timer0() interrupt 1/50ms 定时中断 TH0=(65536-50000)/256;TL0=(65536-50000)%256;tt+;if(tt=20)/一秒钟程序tt=0;temp+;if(temp=60)temp=0;temp1+;if(temp1=60)temp1=0;temp2+;if(temp2=25)temp2=0;void display()/显示子程序 aa=temp2/10;bb=temp2%10;cc=temp1/10;dd=temp1%10;shi=temp/10;ge=temp%10;P2=0xdf;P0=tableaa;delay(1);P2=0xef;P0=tablebb|0x80;delay(1);P2=0xf7;P0=tablecc;delay(1);P2=0xfb;P0=tabledd|0x80;delay(1);P2=0xfd;P0=tableshi;delay(1);P2=0xfe;P0=tablege;delay(1);void delay(uint z)/延时 1msuint x,y;for(x=z;x0;x-)for(y=110;y0;y-);void initt0()/定时器的初始化 TMOD=0x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;ET0=1;TR0=1;void keyscan()/键盘扫描程序if(key0=0) delay(10);while(key0=0); con+;/按键次数TR0=0;if(con3)con=0;TR0=1;if(key1=0)delay(10);if(con=1) temp+;if(con=2)temp1+;if(con=3)temp2+;if(con=3)con1=24;elsecon1=60;if(temp=con1)temp=0;if(temp1=con1)

温馨提示

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

评论

0/150

提交评论