收藏 分享(赏)

可编程定时器/计数器i8253.ppt

上传人:cjc2202537 文档编号:1008971 上传时间:2018-05-16 格式:PPT 页数:39 大小:293KB
下载 相关 举报
可编程定时器/计数器i8253.ppt_第1页
第1页 / 共39页
可编程定时器/计数器i8253.ppt_第2页
第2页 / 共39页
可编程定时器/计数器i8253.ppt_第3页
第3页 / 共39页
可编程定时器/计数器i8253.ppt_第4页
第4页 / 共39页
可编程定时器/计数器i8253.ppt_第5页
第5页 / 共39页
点击查看更多>>
资源描述

1、可编程定时器计数器8253/8254 (PITProgrammable Interval Timer),图 7- 26 8253/8254的结构框图,(1) 数据总线缓冲器。 数据总线缓冲器是8253/8254与CPU数据总线连接的8位双向三态缓冲器。CPU用输入/输出指令对8253/8254进行读/写操作的所有信息都是通过这8条总线传送的。这些信息包括:CPU在初始化编程时写入8253/8254的控制字、CPU向8253/8254某一计数器写入的计数初值、CPU从8253/8254某一计数读取的计数值。 (2) 读/写逻辑。 读/写逻辑是8253/8254内部操作的控制部分。当片选信号有效,

2、 即 =0时,读/写逻辑才能工作。该控制逻辑根据读/写命令及送来的地址信息,决定三个计数器和控制字寄存器中哪一个工作,并控制内部总线上数据传送的方向。 ,(3) 控制字寄存器。 在8253/8254初始化编程时,由CPU向控制字寄存器写入控制字,以决定每个计数器的工作方式。此寄存器只能写入而不能读出。 (4) 计数器0、1、2。 计数器0、1、2是3 个16位减1计数器,它们互相独立, 内部结构和功能相同。每个计数器有3根信号线,它们是时钟输入CLK、门控输入GATE和输出OUT。计数器从CLK端接收时钟脉冲或事件计数脉冲,在脉冲下降沿按照二进制或二十进制从预置的初值开始进行减1计数。当计数值

3、减到零时,从OUT端送出一个信号。计数器在开始计数和计数过程中,受到门控信号GATE的控制。 ,定时/计数器初值的计算定时时间 = 时钟脉冲周期预置的计数初值定时频率 = 时钟脉冲频率预置的计数初值8253CLK输入脉冲的最大频率2MHz,在开始计数之前,必须由CPU用输出指令预置计数器的初值。在计数过程中,CPU可以随时用指令读取计数器的当前值。 2. 8253/8254的引脚功能 253的引脚如图 所示。计数器0、1、2和控制字寄存器的低2位地址由A1、 A0确定,A1、 A0的值依次为0011。8253/8254的4 个端口的操作情况如表 所示。 计数器0、1、2各有3个引脚。不同计数器

4、的相同定义的引脚,其功能也是相同的。 CLK:计数脉冲输入端。计数器对该引脚的输入脉冲进行计数。如果CLK信号是周期精确的时钟脉冲,则具有定时作用。8253/8254规定CLK端的输入脉冲周期不能小于380 ns。,GATE:门控输入端。这是控制计数器工作的一个外部信号。当GATE为低电平时,禁止计数器工作;当GATE为高电平时,允许计数器工作。GATE信号从计数开始到计数过程中都起作用。 OUT: 输出信号端。当计数器计数到零时,在OUT引脚上输出一个信号,该信号的波形取决于工作方式。 3. 8253/8254的控制字 在8253/8254工作之前,必须对它进行初始化编程,也就是向8253/

5、8254的控制字寄存器写入一个控制字和向计数器赋计数初值。 控制字的功能是:选择计数器,确定对计数器的读/写格式,选择计数器的工作方式以及确定计数的数制。8253/8254控制字的格式如图 7 - 29 所示。,图 7- 29 8253/8254控制字的格式,SC1、SC0:计数器选择位。这两位表示这个控制字是对哪一个计数器设置的。 00计数器0;01计数器1;10计数器2;11非法选择。 RW1、RW0:数据读/写格式选择位。CPU在对计数器写入初值和读取它们的当前值时,有几种不同的格式,由这两位来决定。 00将计数器当前值锁存于输出锁存器中,以便读出;01只读/写计数器的低8位,写入时高8

6、位自动设置为0; 10只读/写计数器的高8位,写入时低8位自动设置为0;11对16位计数器进行两次读/写操作,低字节在前,高字节在后, 两次操作的地址相同。 ,M2、M1、M0:计数器工作方式选择位。8253/8254的每个计数通道有6种不同的工作,工作方式由这3位决定。000方式0;001方式1;010方式2;011方式3;100方式4; 101方式5。 BCD:数制选择。8253/8254的每个计数器有两种数制二进制和二十进制,由这一位决定选择哪一种。BCD=0表示采用二进制计数,写入的初值范围为0000HFFFFH,其中0000H是最大值,代表65 536; BCD=1表示采用二十进制计

7、数, 写入的初值范围为00009999,其中0000是最大值,代表10 000。 4. 8253/8254的工作方式 (1) 方式0计数结束时产生中断。,8253计数/定时器工作方式,当写入方式0控制字CW后,计数器输出端OUT立即变成低电平。当写入计数初值N后,若GATE为高电平,计数器开始计数。 在计数过程中, OUT端一直维持为低,直到计数0(结束)时,OUT端变为高,向CPU发出中断请求。 8253/8254用作计数时, 一般都工作在方式0。 方式0的特点是: 计数器只计一遍数。当计数到0时,并不恢复计数初值, 不开始重新计数,输出端OUT由低变高且一直保持为高。只有当写入一个新的计数

8、初值后,OUT才变低,开始新的计数。 在计数过程中可改变计数值。如果计数器为8位(RW1RW0=01),在写入新的8位计数值后,计数器将按新的计数值重新开始计数。 如果计数器为16位(RW1RW0=11), 在写入第一个字节后,计数器停止计数,在写入第二个字节后, 计数器按照新的数值开始计数。 , 在计数过程中,可由门控信号GATE控制暂停。当GATE=0时, 计数器暂停计数;当GATE变为1后,就接着计数。 方式0的OUT信号在计数到0时由低变高,可作为中断请求信号。 但由于在8253/8254内部没有中断控制电路,因此在多中断源系统中需外接中断优先权排队电路和中断向量产生电路。 ,8253

9、计数/定时器工作方式,方式1可编程单稳态输出方式写入工作方式字OUT变高GATE的上升沿才触使初值装入并启动计数,并使OUT变低若计数未满,再出现GATE的上升沿,重载初值,延长计数时间单稳在规定的时长内(初值),多个GATE信号,只被识别一次多个GATE信号一个OUT输出周期一次性,不重载,方式1的特点是: 当计数到0后,计数器可再次由外部启动, 按原计数初值重新开始计数,输出单脉冲,而不需要再次送一个计数初值。 在计数过程中,外部可发出门控脉冲,进行再触发。 这时不管原来计数到何值,计数器将重新开始计数,输出端仍保持低电平。 在计数过程中改变计数初值不影响本次计数过程。 若门控信号再次被触

10、发,则计数器才按新的计数值计数。 比较方式0和方式1, 有以下几点不同: 方式0设置计数初值后立即计数; 方式1设置计数初值后不立即计数,直到有外部触发信号后才开始计数。, 方式0在计数过程中能用门控信号暂停计数; 方式1在计数过程中若有门控脉冲时不停止计数,而是使计数过程重新开始。 方式0在计数过程中改变计数初值时,原计数停止, 立即按新的计数初值开始计数;方式1在计数过程中当改变计数初值时, 现行计数不受影响,新计数初值在下次启动计数后才起作用。 方式0在一次计数结束后,必须重新设置计数初值才能再次计数,即计数初值只能使用一次,方式1的计数初值在一次计数过程完成后继续有效。 (3) 方式2

11、分频器。 在这种方式下,CPU输出控制字后,计数器输出端为高电平。当写入计数初值后,计数器立即对CLK端的输入脉冲计数。 ,在计数过程中输出端始终保持为高,直到计数器减为1时,输出变低。经过一个CLK周期,输出恢复为高,同时按照原计数初值重新开始计数。如果计数值为N,则在CLK端每输入N个脉冲后,就输出一个脉冲。因此,这种方式可以作为分频器或用于产生实时时钟中断。 方式2的特点是: 不用重新设置计数初值, 计数器能够连续工作, 输出固定频率的脉冲。 计数过程可由门控信号GATE控制。当GATE为0时, 暂停计数。当GATE变为1后,下一个CLK脉冲使计数器恢复初值,重新开始计数。, 在计数过程

12、中可以改变计数初值,这对正在进行的计数过程没有影响。但当计数到1时输出变低,过一个CLK周期输出又变高,计数器将按新的计数值计数。所以对方式2改变计数初值时,在下一次计数有效。 (4) 方式3方波发生器。 在方式3时,当CPU设置控制字后,输出为高电平。在写入计数初值后就开始计数,输出保持为高。当计数到一半计数初值时,输出变为低,直至计数到0,输出又变为高,重新开始计数。 方式3与方式2的输出都是周期性的,它们的主要区别是: 方式3在计数过程中的输出有一半时间为高电平,另一半时间为低电平。,方式3方波发生器,方式3方波发生器写入工作方式字OUT变高GATE必须为高,GATE上升沿,重载初值初值

13、(n)偶数 n/2为高,n/2为低奇数 (n+1)/2为高,(n-1)/2为低计数到零,重载初值,所以, 若计数值为N,则方式3的输出为周期=(NCLK周期)的方波。 方式3的特点是: 当计数初值N为偶数时,输出端的高低电平持续时间相等,各为N/2个CLK脉冲周期;当计数初值N为奇数时,输出端的高电平持续时间比低电平持续时间多一个脉冲周期,即高电平持续(N+1)/2个脉冲周期。低电平持续(N-1)/2个脉冲周期。例如N=5,则输出高电平持续3个脉冲周期,低电平持续2个脉冲周期。 GATE=1,允许计数;GATE=0,停止计数。如果在OUT为低电平期间GATE=0,OUT将立即变高。当GATE变

14、高以后,在下一个CLK脉冲来到时,计数器将重新装入初始值, 开始计数。在这种情况下通过门控信号使计数器实现同步, 称为硬件同步。 , 如果GATE信号一直为高电平,在写入控制字和计数值后,将在下一个CLK脉冲来到时装入计数初值并开始计数,这种情况称为软件同步。 在计数期间写入一个新的计数初值, 如果在输出信号半周结束之前没有收到GATE脉冲, 则要到现行输出半周结束后才按新的计数初值开始计数。如果在写入新计数初值之后在现行输出半周结束之前收到GATE脉冲,计数器将在下一个CLK脉冲来到时立即装入新的计数初值并开始计数。 (5) 方式4软件触发的选通信号发生器。 在这种方式下,当写入控制字后,输

15、出端OUT变为高电平, 以此作为初始电平。,方式4软件触发单脉冲,当写入计数初值后开始计数,称为软件触发。当计数到0后, 输出变低, 经过一个CLK周期,输出又变高,计数器停止计数。这种方式计数也是一次性的,只有在输入新的计数值后,才开始新的计数过程。若设置的计数初值为N,则是在写入了计数初值后经过(N+1)个CLK脉冲,才输出一个负脉冲。 一般将此负脉冲作为选通信号。 方式 4 的特点是: 当GATE=1时,允许计数;当GATE=0时,禁止计数。 所以, 要做到软件触发,GATE应保持为1。 在计数过程中,若改变计数初值,则按新的计数初值开始计数。 这称为软件再触发。 ,(6) 方式5硬件触

16、发的选通信号发生器。 在这种方式下,当写入控制字后,输出端出现高电平作为初始电平。 在写入计数初值后,计数器并不立即开始计数, 而是要由门控脉冲的上升沿来启动计数,这称为硬件触发。 当计数到0时,输出变低,又经过一个CLK脉,输出恢复为高。 这样在输出端得到一个负脉冲选通信号。计数器停止计数后要等到下次门控脉冲触发,才能再进行计数。 ,方式5的特点是: 写入工作方式字OUT变高初值写入后,并不置入计数执行部件载GATE上升沿后,才启动计数;到零后,输出与CLK等宽的负脉冲,重载初值,等待GATE, 若在计数过程中改变计数值,只要没有门控信号的触发, 就不影响本次计数过程。当计数到0后,若有新的

17、门控信号的触发,则按新的计数初值计数。 方式5和方式4都产生选通脉冲。这两种方式的区别在于: 方式4每次要靠软件设置计数初值后才能计数(软件触发), 方式5的计数初值只需设置一次,但是每次计数要靠门控信号的触发(硬件触发);方式4软件更改计数初值后立即起作用, 方式5软件更改计数初值后要有新的门控信号的触发才能起作用。 5. 8253/8254的读/写操作 8253/8254的写操作包括写控制字和写计数初值两项内容。 具体要求是: 各计数器的控制字都写到同一地址单元, 而各计数初值写到各自的地址单元中。, 对于每个计数器,必须先写控制字,后写计数初值。 因为后者的格式是由前者决定的。 写入的计

18、数初值必须符合控制字决定的格式。 16位数据应先写低8位,再写高8位。 当给多于一个的计数器写入控制字和计数初值时,其顺序有一定的灵活性,只要遵循上述要求即可。 8253/8254的读操作所得到的是当前计数值, 通常用于实时检测、实时显示和数据处理。在进行读操作时需要注意以下几点: 读操作是通过访问对应于各计数器的地址单元来实现的。 每个计数器的读操作必须按照控制字确定的格式。 如果是16位计数,读操作要进行两次,先读低8位,后读高8位。, 当计数器为16位时,为了避免在两次读出过程中计数值的变化,要求先将计数值锁存。锁存计数值的常用方法是使用计数器锁存命令:控制字的D7D6两位为所要锁存的计

19、数值, D5D4两位置为00。8253/8254的每个计数器都有一个输出锁存器(16位),平时它的值跟随计数值而变化。当向计数器写入锁存命令后,现行计数值被锁存(计数器仍能继续计数)。这样CPU读取的就是锁存器中的值。 当CPU读取了计数值或对计数器重新编程以后,锁存状态被解除,输出锁存器的值又随计数值变化。 ,8253的应用举例,8253应用定时针对时钟脉冲计数针对外部脉冲、外部事件波形发生,8253的应用举例定时波形,8253的应用举例定时波形,时间常数(初值)定时时间 = 时钟脉冲周期预置的计数初值定时频率 = 时钟脉冲频率预置的计数初值,8253的应用举例定时脉冲,8253的应用举例脉冲计数,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 教育学

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报