可编程计数器定时器8253解释.ppt

* * 实现定时功能的方法: (1)软件定时(延时) CPU利用率低 (2)不可编程的硬件定时 555 外接阻值、电容值确定后,不可改,精度低。 (3)可编程的硬件定时(通过中断;软件赋初值) Inter 8253 可编程间隔定时器 Programmable Interval Timer (PIT) 3个16位计数器通道,最高计数频率2MHz 第九章 可编程计数器/定时器8253 9.1 8253工作原理 9.1.1 内部结构和引脚 1 24 2 23 3 22 4 21 5 20 6 19 7 18 8 17 9 16 10 15 11 14 12 13 8253 D7 D6 D5 D4 D3 D2 D1 D0 CLK0 OUT0 GATE0 GND VCC WR RD CS A1 A0 CLK2 OUT2 GATE2 CLK1 GATE1 OUT1 WR 通道2 数据总线 (缓冲器) 读写 控制 逻辑 RD CS A0 A1 控制字 寄存器 CLK2 GATE2 OUT2 通道1 CLK1 GATE1 OUT1 通道0 CLK0 GATE0 OUT0 D7~D0 内 部 数 据 总 线 (1)数据总线缓冲器 8位 双向 三态缓冲器 信息传递:a.CPU写入控制字,对8253初始化 b.CPU向某一计数器写入的计数初值 c.从计数器读出的计数值 (2)读/写控制逻辑 1)/CS 片选 低有效 由地址总线经I/O端口译码电路产生 2)/RD 读 低有效 CPU读所选定计数器通道中的内容 3)/WR 写 低有效 CPU正将计数初值写入所选中的计数通道 中,或将控制字写入控制字寄存器中 4)A1A0 端口选择信号 A1A0=00 通道0 A1A0=01 通道1 A1A0=10 通道2 A1A0=11 控制字寄存器端口 8086CPU系统中,8253的A1A0一般连地址线的A2A1,这样各端口均对应偶地址。 (3)计算器0~3 3个通道完全相同:a.8位控制字寄存器1个 b.16位计数初值寄存器1个 c.计数器执行部件(实际计数器)1个 (减法操作) d.输出锁存器1个 计数器初值减为0,OUT脚输出一个脉冲 功能:1)定时:定时时间=时钟脉冲周期tc×预置的计数初值n 2)计数:可计不等间隔的脉冲数 (4)控制字寄存器(只写) 对应位的含义如下: D7 │ D6 │ D5 │ D4 │ D3 │ D2 │ D1 │ D0 SC1 │ SC0 │ RL1 │ RL0 │ M2 │ M1 │ M0 │BCD 无效 1 1 选择通道2 0 1 选择通道1 1 0 选择通道0 0 0 计数器 SC0 SC1 方式5 1 0 1 方式4 0 0 1 方式3 1 1 x 方式2 0 1 x 方式1 1 0 0 方式0 0 0 0 工作方式 M0 M1 M2 先读/写计数器低8位 再读/写计数器高8位 1 1 只读 / 写计数器高8位 低8位为0 0 1 只读 / 写计数器低8位 高8位为0(自动) 1 0 计数器锁存操作(供CPU读) 0 0 操作方式 RL0 RL1 4位10进制(BCD)码计数 1 16 位2进制计数 0 2进制数:0000~FFFFH 216最大 BCD码: 0000~9999H 104最大 9.1.2 初始化编程(3个通道无先后要求) (1)写入控制字

文档评论(0)

1亿VIP精品文档

相关文档