第9章 8253定时计数器
- 格式:ppt
- 大小:607.00 KB
- 文档页数:33
第9章 计数器和定时器电路Intel 8253/8254-PIT在控制系统中,常常要求有一些实时时钟以实现定时或延时控制,如定时中断、定时检测、定时扫描等,也往往要求有计数器能对外部事件计数。
要实现定时或延时控制,有三种主要方法:软件定时、不可编程的硬件定时、可编程的硬件定时器。
软件定时——即让计算机执行一个程序段,这个程序段本身没有具体的执行目的,但由于执行每条指令都需要时间,则执行一个程序段就需要一个固定的时间。
通过正确地挑选指令和安排循环次数很容易实现软件定时,但软件定时占用了CPU的时间,降低了CPU的利用率。
不可编程的硬件定时可以采用小规模集成电路器件如555,外接定时部件——电阻和电容构成。
这样的定时电路简单,而且利用改变电阻和电容,可以使定时在一定的范围内改变。
但是,这种定时电路在硬件连接好以后,定时值及定时范围不能由程序(软件)来控制和改变,由此就生产了可编程的定时器电路。
可编程定时器电路的定时值及其范围,可以很容易地由软件来确定和改变。
所以,功能较强,使用灵活。
本章就介绍这种定时器电路。
§9.1 概述Intel系列的计数器/定时器电路为可编程序间隔定时器PIT(Programmable Interval Timer),型号为8253,改进型为8254。
Intel 8253具有3个独立的16位计数器通道,使用单一5V电源,它是24个引脚的双列直插式器件。
9.1.1 8253-PIT的主要功能Intel 8253-PIT具有以下主要功能:(1) 一个芯片上有三个独立的16位计数器通道;(2) 每个计数器都可以按照二进制或二—十进制计数;(3) 每个计数器的计数速率可高达2MHz。
(82C54-2计数频率可达到10MHz);(4) 每个通道有6种工作方式,可由程序设置和改变;(5) 所有的输入输出都与TTL兼容。
9.1.2 8253-PIT的内部结构8253的内部结构如图9-1所示。
第九章可编程定时计数器8253一概述⒈定时器和计数器定时控制在微机系统中极为重要①定时器由数字电路中的计数电路构成,通过记录高精度晶振脉冲信号的个数,输出准确的时间间隔;②计数电路如果记录外设提供的具有一定随机性的脉冲信号时,它主要反映脉冲的个数(进而获知外设的某种状态),常又称为计数器。
⒉定时功能的实现方法①软件延时——利用微处理器执行一个延时程序段实现;②不可编程的硬件定时——采用分频器、单稳电路或简易定时电路控制定时时间;③可编程的硬件定时——软件硬件相结合、用可编程定时器芯片构成一个方便灵活的定时电路。
二 8253定时计数器的内部结构和外部特性⒈概述① 3个独立的16位计数器通道;②每个计数器有6种工作方式;③按二进制或十进制(BCD码)计数。
⒉内部结构内部结构图①数据总线缓冲器是8253与CPU DB连接的8位双向三态缓冲器,CPU通过它向8253写方式控制字到控制字寄存器中,写计数初值到计数通道,读取计数通道的当前计数值。
②读/写控制逻辑无效,8253的DB处于高阻状态,当有效,控制8253内部操作。
当和A1、A0、作,见下表。
8253读写操作及端口选择表注意:CPU对控制字寄存器只能写,不能读;CPU对计数通道写的是计数初值,读的是当前计数值。
③控制字寄存器8253初始化编程时,CPU写控制字到控制字寄存器,以选择计数通道及相应的工作方式。
④数通道0~28253内部包括3个功能完全相同和操作完全独立的计数通道,每个计数通道由16位减法计数器、16位计数初值寄存器和16位计数值锁存器组成。
初始化时,向计数通道装入的计数初值,先送到计数初值寄存器中保存,然后送到减法计数器。
计数器启动后,减法计数器对CLK的下降沿进行减1计数,在未锁定时把结果送入16位计数值锁存器中。
当计数值减到0时,输出OUT信号,一次计数结束。
计数初值寄存器的内容,在计数过程中保持不变。
计数初值寄存器和计数值锁存器占用一个端口地址(即该计数通道口地址),CPU读取计数通道的当前计数值来自计数值锁存器。