8253定时计数器知识点总结
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
8253定时/计数器知识点总结
1、8253简介
8253是用来测量时间或者脉冲的个数,通过计量一个固定频率的脉冲个数,将时间信息转化为数字信息,供计算机系统使用。8253有着较好的通用性和灵活性,几乎可以在所有由微处理器组成的系统中使用。
2、性能描述
(1)每个8253芯片有3个独立的16位计数器通道;
(2)每个计数器通道都可以按照二进制或二—十进制计数;
(3)每个计数器的计数速率可以高达2MHz;
(4)每个通道有6种工作方式,可以由程序设定和改变;
(5)所有的输入、输出电平都与TTL兼容。
3、结构组成
结构框图如下
(1)数据总线缓冲器
8253内部实现与CPU数据总线连接的8位双向三态缓冲器,用以传送CPU向8253的控制信息、数据信息以及CPU从8253读取的状态信息,包括某一时刻的实时计数值。(2)读写逻辑控制
控制8253的片选及对内部相关寄存器的读/写操作,它接收CPU发来的址地信号以实现片选、内部通道选择以及对读/写操作进行控制。
(3)控制寄存器
在8253的初始化编程时,由CPU写入控制字,以决定通道的工作方式,此寄存器只能写入,不能读出。
(4)计数通道0号、1号、2号
三个独立的、结构相同的计数器/定时器通道,每个通道包含一个16位计数寄存器存放计数初始值,一个16位的减法计数器,一个16位的锁存器。
锁存器在计数器工作的过程中,跟随计数值的变化。
接收到CPU的读计数值命令时,锁存计数值,供CPU读取。
读取完毕之后,输出锁存器又跟随减1计数器变化。
另外,计数器的值为0的状态,还反映在状态锁存器中,可供读取。 4、引脚说明
与CPU 的接口信号:
(1)D0—D7:双向三态数据线,与CPU 相连用以传送数据、控制字以及状态信息。 (2)CS :片选输入信号,低电平有效。 (3)W R RD ,:读/写控制信号,低电平有效。
(4)10,A A :8253的内部计数器和一个控制寄存器的编码选择信号,其功能如下:
10,A A 与其他控制信号,如CS ,W R RD ,共同实现对8253的寻址,如下图:
8253寻址读写操作逻辑表
与外部设备的接口信号
(1)CLK 0、1、2:时钟脉冲输入端,输入定时脉冲或计数脉冲信号,CLK最高频率可达2MHz。8253规定CLK输入周期不得小于380ms。
(2)GATE 0、1、2:门控输入端,即计数器的控制输入信号,用来控制计数器的工作或停止。(3)OUT 0、1、2:计数器输出端,用来产生不同方式工作时的输出波形。在不同工作方式下,当计数器计数到0时,OUT引脚上必输出响应的信号。
5、工作方式
(1)模式0:计数结束中断方式。
计数器对CLK输入信号进行减法计数,每一个时钟周期计数器减1。
设定该方式后,计数器的输出OUT变低。
设置装入计数值时也使输出OUT变低。
计数减到0时,输出OUT变高,该输出信号可作为中断请求信号使用。
在计数过程中可以改变计数值,若是8位计数,则写入新值后的下一个脉冲按新值计数;若是16位计数,则在写入第一个字节后,停止计数,写入第二个字节后的下一个脉冲按新值计数。
在计数过程中,可由GATE信号控制暂停。当GATE=0时,暂停计数;当GATE=1时,继续计数.
(2)模式1:可重复出发的单稳态触发器
计数值装入计数器后,要由门控信号GATE上升沿启动计数,计数器的OUT输出低电平。
计数结束时,计数器的OUT输出高电平。
由OUT端得到从GATE上升沿开始,直到计数结束时的负脉冲。
若要再次获得所需宽度的负脉冲,可用GATE上升沿重新触发一次计数器。
若在形成单个负脉冲的过程中改变计数值不会影响正在进行的计数。新的计数值只有在前面的负脉冲形成后,又出现GATE上升沿才起作用。
若在形成单个负脉冲的过程中又出现GATE上升沿,则当前计数停止,后面的计数以新装入的计数值开始工作,所得到的负脉冲的宽度将包括前面未未计完的部分。
(3)模式2:分频器
计数器装入初值,开始工作后,计数器的输出OUT将连续输出一个时钟周期宽的负脉冲,两负脉冲之间的时钟周期数就是计数器装入的计数初值。
GATE用做控制信号,当其为低电平时,强迫OUT输出高电平。当其为高时,分频继续进行。
计数周期应包括负脉冲所占的那一个时钟周期,即计数减到1时开始送出负脉冲。
计数过程中,若改变计数值,则不影响当前的计数过程,而在下一次分频时,采用新的计数值。
(4)模式3:方波发生器
这种方式可以从OUT得到对称的方波输出。当计数值N为偶数时,则前N/2计数过程中,OUT为高,后N/2计数过程中,OUT为低;当计数值N为奇数时,则前(N+1)/2计数过程中,OUT为高,后(N-1)/2计数过程中,OUT为低。
GATE为低电平时,强迫OUT输出高电平;当GATE为高电平时, OUT输出对称方波。
产生方波过程中,若装入新的计数值,则方波的下一个电平将反映新计数值所规定的方波宽度。
(5)模式4:软件触发的选通信号发生器
设置此方式后,输出OUT立即变为高电平。一旦装入计数值,计数立即开始。计数结束时,OUT输出一个宽度为一个时钟周期的负脉冲,计数开始时刻不受GATE控制GATE为高电平时,计数才进行, GATE为低电平时,禁止计数
若在计数过程中装入新的计数值,计数器从下一个时钟周期开始以新的计数值进行计数
(6)模式5:硬件出发的选通信号发生器
设置此方式后,OUT输出为高电平。GATE的上升沿使计数开始。当计数结束时由输出端OUT送出一宽度为一个时钟周期的负脉冲
在此方式下,GATE电平的高低不影响计数,计数由GATE的上升沿启动
若在计数结束前,又出现GATE上升沿,则计数从头开始