
微机原理及接口技术——电子表程序设计
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
《微机原理及接口技术——电子表程序设计》一书聚焦于基于微型计算机原理和接口技术的应用实践,详细讲解了如何运用这些理论知识来开发一个完整的电子表程序。
本程序设计实现的功能包括:
一、通过计时器8253实现秒、分、时的计数功能,即电子表计时。
二、利用8259产生7#中断来切换显示状态,在此状态下可以展示时间或秒钟。
三、借助8259产生的6#中断完成对秒、分和小时的修改设置。该程序采用的是24小时制。
对于第一项功能,即电子表计时,通过将8253的计数器2初始化为4CE9H(十进制11625),并将其工作模式设为方式二,并以二进制形式进行计数。然后,输出口out2连接到IRQ1上,在每产生一次1#中断时,对时间进行更新操作。由于OPCLK的频率是1.1625MHz, 因此在程序中设定每次当达到100次中断后才增加秒数。
对于第二项功能,状态切换则是通过内存中的显示标志DISHM来实现,默认情况下为时分显示(初值设为1)。每当7#中断发生时,将DISHM的当前值与1进行异或操作以更新其状态。具体而言,当DISHM等于1时表示时间分钟的状态;反之,则表示秒钟的状态。
对于第三项功能,即对秒、分和小时的时间修改,在不同的显示状态下有不同的处理方式:
- 当处于时分显示模式下,程序中会额外设定一个设置标志STH(初始值为1),表明此时正准备调整小时。如果这是首次进行时间的更改,则通过向8255的C端口发送数据并触发6#中断完成对小时的更新;随后该状态将切换到分钟设置模式。
- 如果在接下来的时间修改中没有改变分钟,再次进入时分显示模式后将继续从分钟开始调整。如果已经进行了分钟的设定(即产生了新的6#中断),则系统会自动回到小时调整的状态。
- 调整秒钟相对简单:只需先将显示状态切换到秒数显示,并向8255的C口发送数据,然后触发一次6#中断即可完成对秒数的修改。程序也会检查输入的有效性以确保正确的设置操作。
全部评论 (0)


