




免费预览已结束,剩余14页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
学院单片机课程设计 基于51单片机的数字时钟的设计学生姓名: 学生学号: 院(系): 年级专业: 指导教师: 二一一年六月 摘 要本文设计的是一个基于单片机AT89C51的数字钟自动计时器,附有复位电路,显示电路,按键电路等。复位电路是单片机的初始化操作,除了正常的初始化外,为摆脱困境,通过复位电路可以重新开始。时钟电路采用12MHz的晶振,作为系统的时钟源,具有较高的准确性。在上电时LED显示器开始显示时间并自动计时,在按键电路中只设置了三个按键,通过检测第一个按键按下的次数来实现调时、调分、调秒按键的作用,再通过LED显示器显示时、分、秒的改变。并且在P1端口处接了一个指示灯,指示按键的按下。在这里主要是以AT89C51单片机为核心控制器,P0口接LED显示模块,P1口接按键的,通过按键输入来控制显示器的显示。关键字 AT89C51,LED显示器,数字时钟ABSTRACTThis design is based on AT89C51 single-chip digital clock auto-timer, with a reset circuit, display circuit, the key circuit. Reset circuit is a microcontroller initialization, in addition to the normal initialization, for the bail out through the reset circuit can begin again. 12MHz crystal clock circuit, as the system clock source, with high accuracy. LED display on power began to show time and automatic timing, set in the key circuit only three buttons, a button pressed by detecting the number of the first to achieve the transfer, the transfer points, transfer second key role, through the LED display hours, minutes, seconds to change. And then at the P1 port of a light to indicate the button press. Here is AT89C51 microcontroller as the core of the main controller, P0 port access the LED display module, P1 port access keys, keystrokes to control the monitor display. Keywords AT89C51, LED display, digital clock 目 录摘要ABSTRACT1 绪论2 1.1课程设计要求21.2课程设计的基本原理22 硬件设计32.1振荡电路的设计32.2复位电路的设计32.3 键盘接口电路设计42.4 显示电路的设计42.5整体电路的设计53软件设计63.1 单片机资源使用63.2 定时计数器中断子函数63.3判键子函数73.4按键调试流程84仿真与测试94.1自动计时94.2按钮调时9心得体会10参考文献11附录121 1 绪 论 1.1课程设计要求1. 应用MCS-51单片机设计单片机实现数字钟(LED显示:小时、分、秒)仿真电路;2. 选用8位LED数码显示,实时显示时、分、秒,采用组合按键实现时钟对表功能,能调时、调分、调秒;3. 要求显示范围最大到23小时59分59秒,用定时中断来实现。4用键选位。1.2课程设计基本原理 通过对以上功能要求可知其基本原理,以AT89C51单片机为核心控制器,P0口接LED显示模块,P1口接按键,通过按键输入来控制显示器的显示。在上电时LED显示器开始显示时间并自动计时,自动计时采用单片机内部T0中断实现,在按键电路中只设置了三个按键,通过检测第一个按键按下的次数来实现调时、调分、调秒按键的作用,再通过LED显示器显示时、分、秒的改变。2 2 硬件设计2.1振荡电路的设计单片机内部有一个高增益、反相放大器,其输入端为芯片引脚XTAL1,其输出端为引脚XTAL2。通过这两个引脚在芯片外并接石英晶体振荡器和两只电容(电容和一般取33pF)。这样就构成一个稳定的自激振荡器。 振荡电路脉冲经过二分频后作为系统的时钟信号,再在二分频的基础上三分频产生ALE信号,此时得到的信号时机器周期信号。振荡电路如图2.1所示:图2.1 振荡电路2.2复位电路的设计 复位操作有两种基本形式:一种是上电复位,另一种是按键复位。按键复位具有上电复位功能外,若要复位,只要按图中的RESET键,电源VCC经电阻R1、R2分压,在RESET端产生一个复位高电平。上电复位电路要求接通电源后,通过外部电容充电来实现单片机自动复位操作。上电瞬间RESET引脚获得高电平,随着电容的充电,RERST引脚的高电平将逐渐下降。RERST引脚的高电平只要能保持足够的时间(2个机器周期),单片机就可以进行复位操作。按键复位电路图如图2.2所示。 图2.2 复位电路32.3 键盘接口电路的设计 独立式键盘:独立式键盘中,每个按键占用一根I/O口线,每个按键电路相对独立。I/O口通过按键与地相连,I/O口有上拉电阻,无键按下时,引脚端为高电平,有键按下时,引脚电平被拉低。I/O口内部有上拉电阻时,外部可不接上拉电阻。键盘接口电路如图2.3所示: 图2.3 键盘接口电路2.4显示电路的设计对于现实电路我们可以采用数码管,也可以采用液晶显示在这里我采用8位的LED显示器。显示电路如图2.4所示: 图2.4 显示电路 42.5整体电路的设计 图2.5 整体电路设计5 3 软件设计3.1单片机资源使用在本次设计中像电路键盘用到了P1口,其中P1.0到P1.2口作为键盘的输入,指示灯用P1.4口控制,LED显示用到了P0口和P3口,P0口外接锁存器控制LED显示的段选,P3口控制LED显示的位选。3.2定时计数器中断子函数对于中断程序,只要定时器计数满就会产生中断50ms中断一次,共计20次,秒钟加1,秒钟计满60秒,分钟加1,分钟记满60,小时加1.当小时加到23时全部清零。以下是中断子函数的流程图如图3.1所示: 图3.2 定时计数器中断子函数流程图63.3 判键子函数 对于独立式键盘判键,首先看有键按下不,如果有键按下则延时一会儿,在判断是否真的有键按下,如果确实有键按下,在判键释放,最后执行键功能程序。判键子函数的流程框图如图3.2所示: 图3.3 判键子程序流程图73.4按键调时流程按键k1为选调按钮,当con=1时为调秒,con=2时为调分按钮,con=3时为调时按钮,con=4时退出按钮调节。k3、k2按钮分别为调减和调增按钮。 图3.4 按键调时流程图8 4 仿真与测试4.1自动计时 图4.1 自动计时仿真4.2按钮调试图4.2 调试仿真9 心得体会通过这次的课程设计让我学到了很多东西,也夯实了我在书本上所学的知识,通过一个课题的设计,让我明白了如何很好的设计一个项目,从课题的入手到中间过程的修改的设置,再到最后的仿真与测试。每一个过程自己都去亲自实施和设计从而让自己在这个过程中学到了自己应该熟练掌握的知识和技能。编程软件keil的使用自己通过这次的课程设计也已熟练掌握了,并且自己的编程能力也得到了好大的提高,仿真测试软件proteus自己也很好的掌握了,自己能够独立的应用proteus完成各项仿真与测试。总之,这一次的单片机课程设计让我学到了很多有用的知识和技能。10 参考文献1 李广弟,朱月秀,冷祖祁.单片机基础M.第3版.北京航空航天大学出版社,2007年1月2李华.MCS-51系列单片机实用接口技术M.北京航空航天大学出版社,19963 马忠梅,张凯,马岩,单片机的C语言应用程序设计,M,北京:北京航空航天大学出版社,2003.11;4 胡辉,单片机原理及应用设计21世纪高等院校规划教材M,水利水电出版社,2005.7;5 刘守义,单片机应用技术M,西安:西安电子科技大学出版社,1996.8;11 附 录数字时钟源代码/本程序实现一个按钮来控制两个按钮功能,按一下调秒(调增或减),/按两下调分(增或减),按三下时(增或减),按四下时退出。#includeunsigned int m=0,f=0,s=0,con=0;unsigned chard=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff,0xbf;/段选unsigned char x=0x00;#define uint unsigned int#define uchar unsigned charsbit k1=P10;/按钮sbit k2=P11;sbit k3=P12;sbit s1=P14;void delay(unsigned int x)/延时1ms unsigned char j; while(x-) for(j=0;j=4) con=0;TR0=1;ET0=1; if(con=1)/按了一下表示调秒 if(k2=0)/增加 delay(30); while(k2=0); m+; if(m=59)13 m=0; if(k3=0)/减 delay(30); while(k3=0); m-; if(m=60) m=59; if(con=2) if(k2=0) delay(30); while(k2=0); f+; if(f=59) f=0; if(k3=0) delay(30); while(k3=0); f-; if(f=60) f=59; if(con=3) if(k2=0) delay(30); while(k2=0); s+; if(s=23) s=0; 14 if(k3=0) delay(30); while(k3=0); s-; if(s=24)/实现循环减 s=23; EA=1;/中断开启 void main()/设置定时50ms TH0=(65535-50000)/256; TL0=(65535-50000)%256; TMOD=0X01;ET0=1;TR0=1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年保密军工考试题及答案
- 陆丰辅警考试真题及答案
- 南阳市中储粮2025秋招财务资产岗高频笔试题库含答案
- 襄阳市中石化2025秋招面试半结构化模拟题及答案油气储运与管道岗
- 国家能源阿坝自治州2025秋招机械工程类面试追问及参考回答
- 国家能源青海地区2025秋招面试专业追问及参考机械工程岗位
- 武汉市中石油2025秋招面试半结构化模拟题及答案安全环保与HSE岗
- 通辽市中石油2025秋招面试半结构化模拟题及答案财务与审计岗
- 2025年乡村工程考试题及答案
- 大唐电力资阳市2025秋招性格测评常考题型与答题技巧
- 督导门店工作总结
- 水泥行业年度汇报
- 2026中国电力工程顾问集团华东电力设计院有限公司校园招聘考试参考试题及答案解析
- 2025邮储银行校招笔试真题及答案
- 2025年重获驾驶权限科目一机动车理论考试题库
- 山东省菏泽市牡丹区2024-2025学年七年级上学期第一次月考数学试卷(含答案)
- 《项目基金管理办法》
- 2025年西藏司法考试真题及答案
- 结构生物学01章-结构生物学绪论(一)课件
- 25手术室护理实践指南
- 日语的拨音促音和长音
评论
0/150
提交评论