微机原理chapter8.pptVIP

  • 3
  • 0
  • 约 49页
  • 2016-06-04 发布于河南
  • 举报
第八章 可编程计数器/定时器8253 在微机系统中,需要计数和定时功能。 计数:对外部事件计数 定时:计时功能,动态RAM定期刷新,扬声器发生。 定时方法:软件定时和硬件定时。 软件定时:指令的执行实现延时 硬件定时:定时器8253 Intel 8253:计数器和定时器芯片,可编程。 3个独立的16位计数器通道 每个计数器通道都可对输入的时钟脉冲进行计数 每个计数器通道有6种工作方式 最高计数频率能达到2MHz 8.1 8253的工作原理 8.1.1 8253的内部结构和引脚 1.数据总线缓冲器 (1)CPU在对8253初始化编程时,写入控制字。 (2)CPU向计数器写入的计数初值 (3)从计数器读出计数值 2. 控制逻辑 CS:片选信号,由系统地址总线高位部分经译码器译码得到。 RD:读控制信号,连接CPU的RD WR:写控制信号,连接CPU的WR A1,A0:端口地址信号,2条地址线可有4个编码,对应4个端口地址: 通道1,通道2,通道3,控制字寄存器 3. 计数器0—2 三个计数器通道完全相同且相互独立。 包括:一个8位控制字寄存器 一个16位计数初值寄存器 一个计数器执行部件 一个输出锁存器 计数工作原理: 每个通道工作时,都是对输入的CLK脉冲按二进制或十进制格式进行计数。 计数采用倒计数法,先对计数器置一个初值,再把初值装入实际的计数器,然后开始递减计数。每输入一个CLK脉冲,计数器的值自动减1,当计数器的值减到0时,从OUT输出一个脉冲信号。 输出信号的波形由工作方式决定。 计数器的工作过程受GATE门控信号的控制,决定是否允许计数。 做计数器使用: 当8253作外部事件计数器时,在CLK上所加的脉冲是由外部事件产生,脉冲的间隔是不均匀的。 做定时器使用: 当8253做定时器时,CLK脉冲必须是精确的时钟脉冲,即频率固定。做能实现的定时时间,由CLK计数脉冲的频率和计数初值决定。 定时时间=时钟脉冲周期*计数初值 例:某系统中,8253所使用的计数脉冲频率为0.5MHz,即脉冲周期tc=2μs,若8253预置计数初值n=500,则当计数器从500计数到0时,所实现的定时时间 T = 2 μs × 500= 1 ms 4. 控制字寄存器 8.1.2 初始化编程步骤和门控信号的功能 1.初始化编程步骤 在8253正常工作之前,必须进行初始化编程。 (1)写入控制字 选定计数器通道,规定该计数器的工作方式和计数格式 (2)写入计数初值 用输出指令向选中的计数器端口地址中写入一个计数初值,初值设置要符合控制字中有关格式的规定。 在某微机系统中,8253的3个计数器的端口地址分别为3F0H、3F2H、3F4H,控制字寄存器的端口地址为3F6H,要求8253的通道0工作于方式3,写入的计数初值n=1234H,则初始化程序为: MOV AL MOV DX,3F6H OUT DX,AL MOV AL,34H MOV DX,3F0H OUT DX,AL MOV AL,12H OUT DX,AL 2. 门控信号的控制功能 门控信号的上升沿、低电平或下降沿控制8253的计数。 8.1.3 8253的工作方式 8253的每个通道都有6种不同的工作方式。 1.方式0 计数结束中断方式 当写入控制字选定工作于方式0时,该通道的输出端OUT立即变为低电平。 要使计数器正常计数,门控信号GATE必须为高电平。 若CPU利用输出指令向计数通道写入初值n时,WR变为低电平,在WR的上升沿时,n被写入计数器初值寄存器。在WR上升沿后的下一个时钟脉冲的下降沿时,才把n装入通道内实际计数器中,开始减1计数。 此后,每从CLK输入一个脉冲,计数器就减1。经过n个脉冲后,计数器减为0,计数结束,此时OUT由低电平变成高电平。这个由低到高的正跳变信号,可连接到8259的中断请求端,做为中断请求信号。 在计数过程中,若门控信号GATE变为低电平,则暂停计数,当变为高电平时,计数继续。 2. 方式1 可编程单稳态输出方式 当CPU写入控制字工作于方式1时,OUT立即变为高电平。 在CPU装入计数值n后,无论GATE是高还是低,都不进行计数,必须等到GATE由低电平向高电平跳变,形成一个上升沿后,才在下一个时钟脉冲的下降沿,将n装入计数器,同时,OUT由高电平向低电平跳变,此后,每来一

文档评论(0)

1亿VIP精品文档

相关文档