理论教育 中断方式实现时间调整及清零功能

中断方式实现时间调整及清零功能

时间:2023-11-19 理论教育 版权反馈
【摘要】:同样采用中断方式完成对电子钟时间的加减调整,并具有清零功能。图4-4电子钟电路图3.程序设计程序流程图如图4-5所示。参考程序如下:图4-5电子钟程序流程图续图4-5电子钟程序流程图续图4-5电子钟程序流程图4.仿真结果汇编文件通过emu8086编译生成exe文件,将exe文件添加到Proteus电路中8086的Program File,进行电路仿真。图4-6电子钟仿真结果

中断方式实现时间调整及清零功能

1.系统功能

本设计完成的功能是可以调整时间的电子钟,能够显示“时-分-秒”。

本设计用定时计数器8253提供定时中断,使用计数器0和计数器1,每间隔1s产生一次中断请求提供给中断控制器8259的IR0,在中断服务程序中完成时间信息的处理。同样采用中断方式完成对电子钟时间的加减调整,并具有清零功能。

数码管显示采用动态扫描方式。数码管动态扫描就是以一定的频率分时依次点亮多个数码管,只要时间间隔足够小(10ms以内),人眼无法识别出,就会形成多个数码管同时亮的现象。

2.Proteus电路设计

设计电路中需要的8086系统基本电路(最小模式电路、存储器电路、IO端口译码电路)在第三章中已详细介绍,此处不再赘述,只画出接口外设电路部分,电路如图4-4所示。

该电路用到的元件有8255A、8259、8253、BUTTON、RES、7SEG-MPX8-CC-BLUE。

图4-4 电子钟电路图

3.程序设计

程序流程图如图4-5所示。包含主程序、7个中断子程序、显示子程序、延时子程序,IR0中断子程序主要完成时间的累加计算,IR1—IR6中断子程序完成对时间的调整。显示子程序采用动态扫描方式,循环8次送不同的数据段码、位选码,每次调用延时子程序,进行短暂延时,利用眼睛的视觉暂留,以实现8个数码管同时显示“时-分-秒”的效果。

参考程序如下:

(www.daowen.com)

图4-5 电子钟程序流程图

续图4-5 电子钟程序流程图

续图4-5 电子钟程序流程图

4.仿真结果

汇编文件(asm文件)通过emu8086编译生成exe文件,将exe文件添加到Proteus电路中8086的Program File,进行电路仿真。电路仿真结果如图4-6所示。

5.思考题

考虑在系统中加入闹钟、定时器的功能,硬件、软件应如何设计修改?

图4-6 电子钟仿真结果

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈