《单片机原理及应用课程设计-电子跑表》.docVIP

  • 11
  • 0
  • 约1.5万字
  • 约 23页
  • 2016-12-10 发布于贵州
  • 举报

《单片机原理及应用课程设计-电子跑表》.doc

《单片机原理及应用课程设计-电子跑表》

湖南人文科技学院 课程设计报告 课程名称单片机原理及应用课程设计 设计题目:系 别:通信与控制工程系专 业:班 级:学生姓名:学 号: 起止日期: 年月日~ 年月日指导教师:教研室主任:指导教师评语:指导教师签名:年月日 成绩评定 项目 权重 成绩1、设计过程中出勤、学习态度等方面 0.22、课程设计质量与答辩 0.53、设计报告书写及图纸规范程度 0.3总 成 绩教研室审核意见:教研室主任签字:年月日 教学系审核意见:主任签字:年月日 摘 要设计要求 1 1 方案论证与对比 1 1.1 数码管显示方案一 1 1.2 数码管显示方案二 1 2 硬件电路的设计 2 2.1 STC89C52RC单片机与8255连接系统及复位电路的设计 2 2.2 数码管显示电路 3 2.3 时钟电路设计 3 2.4 键盘控制电路设计 4 2.5 系统总电路图 4 3 系统程序设计 5 3.1 总体设计 如图4: 5 3.2 主程序 6 3.3 显示子程序 6 3.4 计时模块子程序 8 3.4.1时钟计时程序 9 3.4.2 秒表 9 3.5 定时器T0中断服务程序 9 4 调试及性能分析 10 4.1 硬件调试 10 4.2 软件调试 10 4.3 性能分析 10 4.4 控制源程序清单 11 5 详细仪器清单 19 6 总结与思考及致谢 19 参考文献 20电子跑表 设计要求设计出电子跑表,具有以下功能:具有电时钟和跑表功能; 做时钟时在4位LED 显示器上显示分、秒; 做跑表时显示范围000.0秒~999.9秒;当按下启动按钮跑表开始计时,按下停止按钮停止计时,当按下复位按钮跑表回零。4位,且系统没有其他的处理任务;并且从节省I/O口和降低能耗出发,所以决定采用动态扫描法实现LED的显示,即采用方案二。 硬件电路的设计 STC89C52RC单片机与8255连接系统及复位电路的设计 STC89C52RC单片机与I/O扩展芯片8255的连接图如图1,其中包括一个单片机的最小系统。单片机最小系统包括晶振电路,复位电路以及电源电路。 为了初始化单片机内部的某些特殊功能寄存器,必须采用复位的方式,复位后可使CPU及系统各部件处于确定的初始状态,并从初始状态开始正常工作。单片机的复位是靠外电路来实现的,复位操作有两种情况,即上电复位和手动开关复位。本系统采用上电复位方式。 上电复位:上电复位电路时一种简单的复位电路,只要在RST复位引脚接一个电容到VCC,接一个电阻到地就可以了。上电复位是指在给系统上电时,复位电路通过电容加到RST复位引脚一个短暂的高电平信号,这个复位信号随着VCC对电容的充电而回落,所以RST引脚复位的高电平维持时间取决于电容的充电时间。为了保证系统安全可靠的复位,RST引脚的高电平信号必须维持足够才的时间。上电自动复位是通过外部复位电路的电容充电来实现的。只要VCC的上升时间不超过1ms,就可以实现自动上电复位。 图1 STC89C52RC单片机与8255连接系统电路图 数码管显示电路 时钟电路设计 时钟是单片机的心脏,单片机各功能部件的运行都是以时钟频率为基准有条不紊的一拍一拍地工作。因此,时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。常用的时钟电路有两种方式:一种是内部时钟方式,另一种为外部时钟方式。本文用的是内部时钟方式。 通过单片机MCS-51内部计数器每50ms溢出中断来实现计时功能。 键盘控制电路设计 该设计需要控制跑表开始和停止,当按下启动按钮跑表开始计时,按下停止按钮停止计时,当按下复位按钮跑表回零。图3 系统总电路图 系统程序设计 总体设计:图4 总体框架图 图 5 主程序流程图 :主程序 本设计中秒表采用定时器T0中断完成。主程序循环调用显示子程序和查键子程序,当端口有开关按下时,转入相应功能程序。其程序执行流图如图5所示。 显示子程序 时间显示子程序每次显示4个连续内存单元的十进制BCD码数据,首地址在调用显示程序时先指定[3]。 60H~65H为秒表计时单元,70H~75H为时钟显示单元。由于采用7段共阳极数码管动态扫描实现数据显示,所以显示用十进制BCD码数据的对应段码存放在ROM表中。显示时,先取出内存地址中的数据,然后查得对应的显示用段码从P0口输出,P2口将对应的数码管选中供电,就能显示该地址单元的数据值。图 6电子时钟程序流程图图 7跑表程序流程图 计时模块子程序 3.4.1时钟计时程序 50ms定时器溢出累加20次,使得最小单位为1s。此处电子时钟计时最大范围为59分59秒。如图6。 3.4.2 秒表 本模块利用了STC89C52的定时器0进行定时,每隔50ms就产

文档评论(0)

1亿VIP精品文档

相关文档