输入输出及中断系统.ppt

  1. 1、本文档共120页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 一、8253可编程定时计数器 计数与定时的概念 在计算机处理计数问题时,首先要将计数量转化为电脉冲的形式,计数的任务即是对某电脉冲的出现次数进行度量的工作。引发计数工作的电脉冲称为计数脉冲。 第五节、可编程接口芯片及应用 * 计数方法与计数器 通常按计数的实现方法可将计数器操作分为增量计数器和减量计数器两种。增量计数器是指当计数脉冲到来后,计数的计数值加“1”;减量计数器反之。 增量计数器用于对事件的累计,而减量计数常用于限量计数。增量计数关心的是当前计数的量,减量计数 关心的是计数终到的时刻。 * 计数方法与计数器 通常按计数的实现方法可将计数器操作分为增量计数器和减量计数器两种。增量计数器是指当计数脉冲到来后,计数的计数值加“1”;减量计数器反之。 增量计数器用于对事件的累计,而减量计数常用于限量计数。增量计数关心的是当前计数的量,减量计数 关心的是计数终到的时刻。 * 定时方法与定时器 延时操作只关心时间间隔和延时终到的时刻,而计时操作则要求随时了解现在时刻的标准时间。延时操作的 实现方法很多,而计时操作的实现方法则很单一。 延时操作 模拟电路 计时操作 数字电路 * 实现定时和计数有两种方法:硬件定时和软件定时。 软件定时是利用CPU每执行一条指令都需要几个固定的指令周期的原理,运用软件编程的方式进行定时。 硬件定时,是利用专门的定时电路实现精确定时。这种定时方式又可分为简单硬件定时和利用可编程接口芯片实现定时。 * 二、 8253定时计数器 8253的结构框图 * 8253的引脚配置 * A1A0编码与8253内部寄存器的对应关系 表 8253寄存器寻址 A1 A2 寄存器选择和操作 0 1 0 0 0 写入0通道计数寄存器 0 1 0 0 1 写入1通道计数寄存器 0 1 0 1 0 写入2通道计数寄存器 0 1 0 1 1 写入3通道计数寄存器 0 0 1 0 0 读0通道锁存器 0 0 1 0 1 读1通道寄存器 0 0 1 1 0 读2通道寄存器 * 8253的编程控制字 图6-49 8253控制字格式 * 本节以下各例均设8253占用端口地址40H~43H。 方式0 减1计数到0时发中断请求 三、8253的工作方式及举例 * 方式0的时序图 * 例:设8253计数器通道0工作于方式0,用8位二进制计数,其计数值为50,二—十进制,则它的初始化程序段如下: MOV AL,11H ;设置控制字 OUT 43H,AL ;写入控制字寄存器 MOV AL,50 ;设置计数初值 OUT 40H,AL ;写入计数初值寄存器 * 方式1 可编程单脉冲输出 * 例:设计数器通道1工作于方式1,按二进制计数,计数初值为40H,它的初始化程序段为: MOV AL,62H ;工作方式控制字 OUT 43H,AL MOV AL,40H ;送计数初值 OUT 41H,AL * 方式2 周期性时间间隔计时器(频率发生器) * 例:设8253计数器0工作于方式2,按二进制计数,计数初值为0304H。 MOV AL ;设控制字,通道0,先读/写高8位 ;再读写低8位,方式2,二进制。 OUT 43H,AL MOV AL,04H ;送计数值低字节 OUT 40H,AL MOV AL,03H OUT 40H,AL ;送计数值高字节 * 方式3 方波发生器 * 例:设8253计数器2工作在方式3,按二—十进制计数,计数初值为4,则它的初始化程序段如下: MOV AL ;计数器2,只读/写低8位,工作方式3,二~十进制 OUT 43H,AL ;控制字送控制字寄存器 MOV AL,4 ;送计数初值 OUT 42H,AL * 方式4 软件触发选通 * 例:设8253计数器1工作于方式4,按二进制计数,计数初值为3,则初始化程序段为: MOV AL,058H ;设置控制字寄存器 OUT 43H,AL ;送控制字 MOV AL,3 ;置计数初值 OUT 41H,AL ;送计数初值 * 方式5 硬件触发脉冲 * 例:设8253的通道1工作于方式5,按二进制计数,计数初值为4000H,则它的初始化程序段为: MOV AL ;通道1,只读写高字节,方式5,二进制计数。 OUT 43H,AL MOV AL,40H OUT 41H,AL ;送计数初值

文档评论(0)

502992 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档