第--章--计数器和定时器电路优秀文档.ppt
上传人:天马****23 上传时间:2024-09-10 格式:PPT 页数:21 大小:2.4MB 金币:10 举报 版权申诉
预览加载中,请您耐心等待几秒...

第--章--计数器和定时器电路优秀文档.ppt

第--章--计数器和定时器电路优秀文档.ppt

预览

免费试读已结束,剩余 11 页请下载文档后查看

10 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

8253-PIT的控制字8253-PIT的工作方式8353-PIT的编程(1)一个芯片上有三个独立的16位计数器通道;(2)每个计数器都可以按照二进制或二—十进制BCD计数;(3)每个计数器的计数速率可高达2MHz;(4)每个通道有6种工作方式;28253-PIT的引线若是8位计数,则在写入新的计数值后,计数器将按新的计数值重新开始计数,如图9-6所示。CPU读到的是执行输入指令瞬间计数器的现行值。作业:P274若要读取通道1的16位计数值,其程序为:当计数到0时,不开始重新计数。当GATE变高后,就接着计数,其波形如图9-5所示。(2)向8253输送一个通道控制字,令8253通道中的锁存器锁存。CW=10表示只写低8位计数值为4。CPU读到的是执行输入指令瞬间计数器的现行值。4.在计数过程中改变计数值读——数据由8253传向CPU;③若是16位计数值,则分两次写入,先写入低8位,再写入高8位。CPU读到的是执行输入指令瞬间计数器的现行值。当GATE引脚为低电平时,通常都是禁止计数器工作;当GATE引脚为低电平时,通常都是禁止计数器工作;1.数据总线缓冲器8位双向三态缓冲器,CPU用输入输出指令对8253进行读写的所有信息,都是通过这8条总线传送的。Intel8253-PIT的引线如图9-2所示:CLK:输入脉冲线。计数器就是对这个脉冲计数。8253规定,加在CLK引脚的输入时钟周期不能小于380ns。GATE:门控信号输入引脚。当GATE引脚为低电平时,通常都是禁止计数器工作;只有当GATE为高电平时,才允许计数器工作。OUT:输出引脚。当计数到“0”时,OUT引线上必然有输出。8253内部端口的选择线A1和A0通常接至地址总线的A1和A0。各个通道的读/写操作的选择,如表9-1所示。在8253的初始化编程中,由CPU向8253的控制字寄存器写入一个控制字其格式如图9-3所示。1.数据读/写格式(D5D4)在读取计数值时,可令D5D4=00,则把写控制字时的计数值锁存,以后再读取。在方式0,当控制字CW=10写入控制字寄存器,则使OUT输出端变低。要开始计数,GATE信号必须为高电平。在写入计数初值以后,通道开始计数,在计数过程中,OUT信号线一直维持为低电平,直到计数到“0”时,OUT才变为高电平。方式0过程如图9-4所示。方式0的主要特点是:(1)计数器只计数一遍。当计数到0时,不开始重新计数。只有在写入另一个计数值时,OUT变低,开始新的计数。任一通道的计数值,CPU可用输入指令读取。这三位决定8253的每个通道的6种不同的工作方式。(4)在计数过程中可以改变计数值。8353-PIT的编程CW=10表示只写低8位计数值为4。MOVAL,40H;这位决定8253的每个通道计数制:二进制和二—十进制。(1)利用GATE信号使计数过程暂停。在6种方式中,只有方式0,在写入控制字后输出为低。写——数据由CPU传向8253。OUT0F8H,AL这三位决定8253的每个通道的6种不同的工作方式。只有当GATE为高电平时,才允许计数器工作。(4)在计数过程中可以改变计数值。若是8位计数,则在写入新的计数值后,计数器将按新的计数值重新开始计数,如图9-6所示。即改变计数值是立即有效的。8253有六种不同的工作方式,它们的特点不同,因而应用的场合也就不同。8253在不同方式下门控输入信号的作用,如表9-3所示。GATE输入总是在CLK输入时钟的上升沿被采样。在方式0、2、3、4中,GATE输入是电平起作用,逻辑电平在CLK的上升沿采样。在方式1、2、3、5中,GATE输入是上升沿起作用的。4.在计数过程中改变计数值如表9-4所示。表中的立即有效都是指写入计数值后的下一个CLK脉冲以后,新的计数值开始起作用。5.计数到0后计数器的状态在方式0、1、4、5,计数器计到0后,都从这个最大计数值继续倒计数。方式2与3是连续计数,计数器自动装入计数值继续计数。初始化编程的步骤为:(1)写入通道控制字,规定通道的工作方式。(2)写入计数值。①若规定只写低8位,则写入的为计数值的低8位,高8位自动置0;②若规定只写高8位,则写入的为计数值的高8位,低8位自动置0;③若是16位计数值,则分两次写入,先写入低8位,再写入高8位。例如:若要用通道0,工作在方式1,按二—十进制计数,计数值为5080H。则初始化编程的步骤为:(1)确定通道控制字:(2)计数值的低8位为80H。(3)计数值的高8位为50H。若端口地址位为F8H~FBH,则初始化程序为