欢迎来到天天文库
浏览记录
ID:853622
大小:55.00 KB
页数:23页
时间:2017-09-20
《单片机课程设计— led电子钟的制作》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、郑州轻工业学院计算机与通信工程学院单片机原理与应用技术课程设计总结报告设计题目:LED电子钟的制作学生姓名:系别:专业:班级:学号:指导老师:2011年12月16日郑州轻工业学院课程设计任务书题目LED电子钟的制作专业、班级学号姓名主要内容、基本要求、主要参考资料等:1.主要内容:以89C51单片机为核心,制作一个LED显示的智能电子钟。2.设计要求如下:.计时:秒,分,时,天,周,月,年.闰年自动判别。.五路定时输出,可任意关断(最大可到16路)。.时间,月,日交替显示。.自定任意时刻自动开关屏。.计时精度:误差<=1秒/月(具有微调设置)。.键盘采用动态扫描方式查询。
2、所有的查询、设置功能均由K1,K2完成。3.参考文献1、谢自美,《电子线路设计、实验、测试》武汉:华中理工大学出版社,20002、何书森、何华斌《实用数字电路原理与设计速成》福州:福建科学技术出版社,2000.63、白驹衍,《单片计算机及应用》北京:电子工业出版社,1999.2目录一.绪论二.设计方案三.硬件原理图四.软件系统结构图和流程图五.原程序清单六.主要函数说明七.设计一览表八.实验心得九.参考文献一.绪论单片计算机即单片微型计算机。(Single-ChipMicrocomputer),是集CPU,RAM,ROM,定时,计数和多种接口于一体的微控制器。他体积小,成
3、本低,功能强,广泛应用于智能产品和工业自动化上。而51单片机是各单片机中最为典型和最有代表性的一种。这次毕业设计通过对它的学习,应用,从而达到学习、设计、开发软、硬的能力。电子钟具有走时准时和性能稳定等优点,已成为人们生活不可缺少的物品,广泛应用于各种公共场合,给人们的生活、学习、工作和娱乐带来了极大方便。电子时钟,既能作为一般的时间显示器,同时还可以根据需要衍生出其他功能。因此,研究使用电子钟有着非常现实的意义,具有很大的实用价值。一.设计方案1.系统由AT89C51、LED数码管、按键、发光二极管等部分构成,能实现时间的调整定时时间的设定,输出等功能。系统的功能选择由
4、SB0、SB1、SB2、SB3、SB4完成。其中SB0为时间校对,定时器调整功能键,按SB0进入调整状态。SB1为功能切换键。第一轮按动SB1依次进入一路、二路、三路定时时间设置提示程序,按SB3进入各路定时调整状态。定时时间到,二极管发亮。到了关断时间后灭掉。如果不进入继续按SB1键,依次进入时间年位校对,月位校对、日位校对、时位校对,分位校对,秒位校对状态。不管是进入那种状态,按动SB2皆可以使被调整位进行不进位增量加1变化。各预置量设置完成后,系统将所有的设置存入RAM中,按SB1退出调整状态。上电后,系统自动进入计时状态,起始于¡00¡时¡00¡分。SB4为年月日
5、显示转换键,可使原来显示时分秒转换显示年月日。三、电路原理分析1.显示原理由6个共阴极的数码管组成时、分、秒的显示。P0口的8条数据线P0.0至P0.7分别与两个CD4511译码的ABCD口相接,P2口的P2.0至P2.2分别通过电阻R10至R13与VT1至VT3的基极相连接。这样通过P0口送出一个存储单元的高位、低位BCD显示代码,通过P2口送出扫描选通代码轮流点亮LED1至LED6,就会将要显示的数据在数码管中显示出来。从P0口输出的代码是BCD码,从P2口输出的就是位选码。这是扫描显示原理。2键盘及读数原理键盘是人与微机打交道的主要设备,按键的读取容易引起误动作。可
6、采用软件去抖动的方法处理,软件的触点在闭合和断开的时候会产生抖动,这时触点的逻辑电平是不稳定的,如不采取妥善处理的话,将引起按键命令错误或重复执行,在这里采用软件延时的方法来避开抖动,延时时间20ms.3连击功能的实现按下某键时,对应的功能键解释程序得到执行,如操作者没有释放按键,则对应的功能会反复执行,好象连续执行,在这里我们采用软件延时250ms,当按键没释放则执行下一条对应程序。利用连击功能,能实现快速调时操作。四、程序设计思想和相关指令介绍本系统的主程序主要完成时间显示和定时输出判断功能。而年月日显示和各时间单元进位,时间设定时,调定时间设定时等功能全部在中断服务
7、程序中完成。1.数据与代码转换。由前述可知,从P2口输出位选码,从P0口输出段选码,LED就会显示出数字来。但P0口的输出的数据是要BCD码,各存储单元存储的是二进制数,也就是和要显示出的字符表达的含义是不一致的。可见,将要显示的存储单元的数据直接送到P0口去驱动LED数码管显示是不能正确表达的,必须在系统内部将要显示的数据经过BCD码行转换后,将各个单元数据的段选代码送入P0口,给CD4511译码后去驱动数码管显示。具体转换过程如下:我们先将要显示的数据装入累加器A中,再将A中的数据转换成高低两位的BCD码,再放回A中,然后
此文档下载收益归作者所有