单片机实训设计报告 - 1 - 《单片机实训》设计报告 题目:可调电子时钟的设计 学 院:交通信息学院 专 业:电气自动化技术 班 级:电气 091 姓 名: 学 号:(长号) 指导老师: 单片机实训设计报告 - 2 - 一、实验内容 利用 CPU 的定时器和实验仪上提供的数码显示电路,设计一个可调电子时钟。显示格式如下:XX XX XX ,由左向右分别为:时、分、秒。同时还可以通过键盘(开关)对电子时钟的时间进行加减,达到可调。 二、实验内目的 1、 掌握定时器的使用和编程方法; 2、 掌握中断处理程序的编程方法; 3、 掌握数码显示电路的驱动程序编程方法; 4、 掌握键盘电路的程序编程方法; 5、 掌握模块子程序的编程方法; 6、 掌握硬件的线路的设计及连线方法。 三、实验说明 设计定时器每 50ms 中断一次,在中断服务程序中,对中断次数进行计数,50ms计数 20 次,就是 1 秒,然后再对秒计数得到分的值,对分计数得到小时的值,分别将各值送到相应的段地址端口和位地址端口,通过数码管显示结果,达到电子时钟的效果。在电子时钟的基础上,程序增加了键盘程序,对电子时钟进行可调(对秒/分/时进行加/减,此功能的增加使电子时钟功能更强、更实用。 四、硬件电路设计原理图 图 1 总电路图 单片机实训设计报告 - 3 - 图2 键盘控制电路 五、软件设计 (一) 程序设计框图 置定时器模式及常数 开始 设置初始常数 启动定时器 设置秒、分、时初值 键盘扫描 调用显示子程序 设置定时器初值 启动定时器 初始化显示参数 查表修正 A 值 段码输出 位选通 置定时器模式及常数 下一位选通 延迟 10MS 关闭位选通 开始 单片机实训设计报告 - 4 - 关中断、保护现场 秒单元内容加 1 到 1 分钟否? 秒单元内容清零 分单元内容加 1 分单元内容清零 时单元内容加 1 时单元内容清零 恢复现场 开中断 到 1 小时否? 到 2 4 小时否? 中断返回 开始 单片机实训设计报告 - 5 - (二)实验程序设计 步骤 1、用定时器编写延迟子程序; 2、编写学号显示子程序; 3、编写从 0~9 秒用数码管显示子程序; 4、据时分秒的要求,编写定时器 0 中断服务子程序; 5、结合以上子程序,与主程序相组合成电子时钟程序; 6、编写键盘控制加子程序; 7、组合以上子程序,与主程序相组合成可调电子时钟程序; #include / /程序定义 typedef unsigne...