- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第七章 Intel 8253定时器/计数器 3.4 实时钟电路MC146818及其应用 一、MC146818的外部特性及工作原理 1.引脚功能 常用引脚介绍 如下: 七. 8253-/8254-2的应用举例 一、计数器------日时钟 1.要求 设计一个计一天时间的日计时器------日时钟。 2.分析 利用8253工作在3方式下,其输出为一系列方波,这种方波的周期是准确的,可以作为定时单位。比如,选用8253的计数器0,让其工作在3方式,计数初值设置为最大值-----65536。当输入时钟CLK0=1.1931816MHz,则输出方波的频率为 fouto=1.1931816MHz/65536=18.2Hz 输出方波的周期为: Touto=1/18.2×1000ms=54.945ms 1天24×60×60×1000ms/54.945ms=1573040(计时单位)。 若以十六进制表示,则为 01800B0H个计时单位(占用4个存储单元)。 为存放每次中断以后加1所得到的计数值,使用4个存储字节,其对应双字变量分别为: TIMER-LO(40H:6CH) 和 TIMER-HI (40H:6EH)。 同理可得:1小时包含65543个计时单位, 1分钟包含1092个计时单位, 1秒钟包含18.2个计时单位。 使用中断程序对计时时间单元进行加1累加,中断请求通过8259的IR0引入。 3.设计 (1)硬件设计 日时钟的硬件主要由定时/计数器8254和中断控制器8259A构成,共工作原理框图如图3.10所示。该图还画出了在日时钟运行时对内存RAM的使用情况。 8254 OUT 0 GATE 0 CLK 0 8259A IRQ 0 T=54.9ms IR 0 INT D 0~7 INTA 总 线 控 制 器 S 2 S 1 S 0 D Q Q 状态=000 CP PCLK +5V CPU INTR D 0~7 S 2 S 1 S 0 M … FEA5H F000H … TIMER-LO TIMER-HI 存储器 TIMER-INT (中断程序) … 00:00 00:20H 00:23H 40:6CH 40:6EH 向量 向量指针 时间值+1并保存 图3.10 日时钟运行原理示意图 2.3863632MHZ 中断号8 加1 到24小时? TIMER-OFL置1 并使日时钟复位0点 0 TIMER-LO 0 TIMER-HI Y N 开中断 有关寄存器进栈 TIMER-LO加1 到0? TIMER-HI加1 N Y 图3.11 日时钟中断8的中断服务程序流程图 (2)软件设计 A A 调用定时报时中断ICH 输出结束中断的命令 EOI到8259A 有关寄存器出栈 中断返回 关闭软驱电机计算值减1 减至0? 电机运行状态清零 输出命令关闭电机 N A 二、稳定延时 三、发声器 1.要求 利用定/计数器8253发600Hz的长/短音。按任意键,开始 发声;按ESC键,停止发声。8253的输入时钟CLK的频率 1.19318MHz。 2.分析 3.设计 (1)硬件设计 (2)软件设计 发声程序由主程序和子程序组成。主程序流程图如图3.13所 示。. 发长音(BL=6) (CALL SSP) 发短音(BL=1) (CALL SSP) 按下Esc键? 关闭扬声器 返回DOS 结束 Y Y N 开始 8253初始化 计算并装入初值 关闭扬声器 按下任意键? N 发长/短音的程序为: CODE SEGMENT ASSUME CS:CODE,DS:CODE ORG 100H START: JMP BEGIN LONG1 EQU 6 SHORT1 EQU 1 BEGIN: MOV AX,CODE MOV CS,AX MOV DS,AX
文档评论(0)