[工学]第4章_定时器、计数器接口.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]第4章_定时器、计数器接口

第4章 定时器/计数器接口 4.1 8254可编程定时器/计数器 4.2 8254在PC系列机中的应用 4.3 MC146818及其应用 4.4 本章小结 4.5 习题与思考题 可编程定时器/计数器基本功能 可以实现以下基本功能: 1、以均匀分布的时间间隔中断分时操作系统,以便切换程序 2、向I/O设备输出周期可控的精确的定时信号 3、用作可编程波特率发生器 4、检测外部事件发生的频率或周期 5、统计外部某过程(如生产、试验、武器发射等过程)中某一事件发生的次数,并将计数结果返回CPU 6、在定时或计数达到编程规定的值以后,向CPU申请中断 计数/定时的基本概念 一、定时/计数 1.定时 一天24小时的计时,称为日时钟。长时间的计时(日、月、年直至世纪的计时)称为实时钟。 2.计数 3.定时与计数的关系 计时的本质就是计数,只不过这里的“数”的单位是时间单位。 计数/定时的基本概念(续) 二、频率一声音一音乐 把计数和定时联系起来,就会引出频率的概念。由频率可以引出声音,不仅考虑发声频率的高低,还考虑发声所占时间的长短,就会引出音乐的概念。 三、微机系统中的定时 内部定时——计算机本身运行的时间基准或时序关系,计算机每个操作都是按照严格的时间节拍执行的; 外部定时——外部设备实现某种功能时,本身所需要的一种时序关系。 计数/定时的基本概念(续) 四、定时方法 1.软件定时 利用CPU内部定时机构,运用软件编程,循环执行一段程序而产生的等待延时。这是常用的一种定时方法,主要用于短时延时。 优点:不需增加硬件设备 缺点:降低了CPU的效率 计数/定时的基本概念(续) 2.硬件定时 采用可编程通用的定时/计数器或单稳延时电路产生定时或延时。 优点:不占用CPU的时间,定时时间长,使用灵活,定时准确。 缺点:需增加硬件设备 4.1 8254可编程定时器/计数器 4.1 8254可编程定时器/计数器 4.1.1 8254的引脚信号和内部结构 图4.1 8254引脚图 图4.2 8254的内部结构 表4.1 8254读写逻辑的读写控制 图4.3 计数器内部结构 计数器通道内部逻辑图 8254控制字含义 ①D7D6( SC1SC0 ):用于选择计数器。 SC1SC0 = 00 选择0号计数器 SC1SC0 = 01 选择1号计数器 SC1SC0 = 10 选择2号计数器 SC1SC0 = 11 不用 图4.4 方式命令字格式 8254控制字含义(续) ②D5D4(RL1RL0):用来控制计数器读/写的字节数(1或2个字节)及读/写高低字节的顺序。 RL1RL0 = 00 :为锁存命令,把由 SC1SC0指定的计数器的当前值锁存在锁存寄存器中,以便去读取它 RL1RL0 = 01 :仅读/写一个低字节 RL1RL0 = 10 :仅读/写一个高字节 RL1RL0 = 11 :读/写2个字节,先是低字节,后是高字节 8254控制字含义(续) ③D3~D1(M2~M0):用来选择计数器的工作方式。 M2M1M0 = 000:0方式 M2M1M0 = 001:1方式 M2M1M0 = 010:2方式 M2M1M0 = 011:3方式 M2M1M0 = 100:4方式 M2M1M0 = 101:5方式(110和111不用) ④D0(BCD):用来指定计数器的码制,是按二进制数还是按二——十进制数计数。 BCD = 0 :二进制 BCD = 1: 二——十进制 8254控制字含义(续) 例1:选择2号计数器,工作在3方式,计数初值为533 H(2个字节),采用二进制计数。其初始化程序段为: MOV DX,307H;命令口 MOV AL;2号计数器的初始化命令字 OUT DX,AL;写入命令寄存器 MOV DX,306H;2号计数器数据口 MOV AX,533H;计数初值 OUT DX,AL;先送低字节到2号计数器 MOV AL,AH;取高字节送AL OUT DX,AL;后送高字节到2号计数器 8254控制字含义(续) 读当前计数值: 先发一条锁存命令(即方式命令中的RL1RL0 = 00),将减1计数器的计数值锁存到输出锁存器;然后,执行读操作,便可得到锁存器的内容,即当前计数值。 8254控制字含义(续) 例2:要求读出并检查1号计数器的当前计数值是否是全“1”(假定计数值只有低8位), 其程序段为: MOV DX,307H;命令口 L: MOV AL;1号计数器的锁存命令 OUT DX,AL;写入命令寄存器 MOV DX,

文档评论(0)

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

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

1亿VIP精品文档

相关文档