- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第8章 定时器计数器8253
第8章 定时器/计数器8253及其应用 8.1可编程定时器/计数器 8.2可编程定时器/计数器结构 8.3可编程定时器/计数器工作方式 8.4可编程定时器/计数器编程操作 8.5 8253应用举例 8.1 可编程计数器/定时器 1. 计数与定时控制 在控制系统中常常要求某些定时信号,以实现定时、延时及计数控制。例如:定时中断、定时检测、定时扫描、动态存储器刷新、运行系统日历时钟等,以及对外部事件进行的计数和统计等等。 有的高速接口电路按CPU的读写节拍工作,多数接口还需要独自的工作时钟,如一个串行接口电路,在接到CPU送来的数据后,要按照一定的节拍把数据变成串行形式逐位送出。接口电路中所需的节拍由定时电路提供。 控制系统中也常需对外部事件进行计数,外部事件产生输入的计数脉冲,等计数到某定值后,要求CPU给予服务。或者由CPU随时读取输入的计数值,对计数过程进行监控。 对具有准确周期的脉冲信号进行计数,可达到定时的目的。微机系统的定时分为两类——◆内部定时:微机本身运行的定时。计算机的每一种操作都是在精确的 内部定时信号控制下按时间节拍进行的,内部定时由处理器外围的时钟发生器/驱动器及分频控制电路完成,时序关系固定;◆外部定时:在计算机与外设或外设与外设之间的定时,外部定时因为外设和被控对象的不同而导致定时信号的不同。 2. 定时方法 实现计数和定时有软件和硬件两种方法。 (1)软件定时 编制相应的计数程序或延时程序交由CPU运行可实现软件计数或延时。这种方法节省硬件、灵活性好,但占用大量处理器时间,降低系统效率。 (2)硬件定时 完全由硬件控制计数/定时,如使用555芯片,它不占用CPU时间,但通用性和灵活性差,改变计数量和定时值必须更改电路硬件参数。 可编程计数器/定时器,现今数字系统广泛使用,其计数/定时功能可由程序灵活设置,作为独立部件和CPU并行工作。在微型计算机系统中是一个必备的接口部件。 作为定时器时,设置好常数以后,由系统时钟或某一固定频率的脉冲进行减1计数,并按定时常数的大小不断输出定时信号。 作为计数器时,设置好初值之后,便开始减1计数, 当减到0时,输出一个信号。 严格地讲,定时和计数工作过程没有本质的区别, 都是进行计数器减1操作,差别在于: 作为计数器时,在减到0时,输出一个信号便结束, 而作为定时器时,则不断产生定时信号。 本节重点讨论实现外部定时/计数的可编程定时器/计数器,它可实现如下功能: ①??多任务分时系统中作为中断信号实现程序的切换; ②??向I/O端口和外设输出精确的定时信号; ③??作为通用的波特率发生器; ④??对外部发生事件(产生的输入脉冲)计数; ⑤ 实现独立的时间延迟。 8.2 可编程计数器/定时器结构 现代微机中,定时与计数控制一般采用8253(如IBM PC机)或8254(286及其后的微机),8254是8253的改进型,它们的内部结构和工作原理相同。386以后的微机,与8254完全兼容的可编程计数器/定时器已经被集成到I/O控制逻辑芯片或总线转换逻辑芯片中。 1.概述 8253/8254采用+5V单一电源,芯片内有三个独立的16位计数器,每个计数器有6种可编程设置的工作方式,对外有3个引脚:计数脉冲输入信号CLK、门控信号GATE和状态输出信号OUT,所有信号都与TTL电平兼容。 8253/8254采用24引脚DIP(双列直插式)封装,与8253不同,8254还另有一种28引脚PLCC封装,能够执行状态回读命令。 8253/8254计数频率为0~2MHz/0~10MHz。 8254计数频率为8MHz,8254-2为10MHz。 8253-5与8254-5计数频率为5MHz 芯片由6个摸块组成,每个模块的功能如下—— 数据总线缓冲器及数据总线D7 - D0 数据总线缓冲器8位、三态、双向,是8253/8254内部总线与系统数据总线(低8位)之间的接口。数据总线缓冲器有三个基本功能: 通过编程向8253/8254写入确定其工作方式的命令字; 向计数寄存器装入计数初值; 读出指定计数器的当前计数值。 计数器0、计数器1、计数器2这三个计数器功能相同,各自独立。每个计数器的功能结构如下图所示。 2. 8253/8254内部结构(续) 每个计数器除了控制字寄存器、控制逻辑和状态寄存器及状态锁定逻辑外,计数部分有: 计数初值写入寄存器CR(Count Register)、 可预置同步递减计数器CE(Counting Element)和 计数值输出锁定寄存器OL(Output Latch), 它们都是16位的,其中CR和OL均由两个8位寄存器(CRM、CRL和OLM、OLL)组成,16位计数初值分两次装入CRM和CRL,CE不能由用户
原创力文档


文档评论(0)