第八章 可编程计数器/定时器 8253及其应用 8-18253的工作原理 8-28253的应用举例 目录
第八章 可编程计数器/定时器 8253及其应用 8-1 8253的工作原理 8-2 8253的应用举例
概述 微机应用系统中常要求: ①外部实时时钟实现延时控制或计时; ②要求能对外部事件计数。 2009-05-49 20f38 日录运回凸量
2009-05-19 2 0f 38 微机应用系统中常要求: ①外部实时时钟实现延时控制或计时; ②要求能对外部事件计数。 概 述
实现上述要求可采用三种方法: ①软件定时 简单、灵活、价廉但CPU的利用率太低。 ②不可编程的硬件定时 如555芯片,结构简单,价格便宜,但定时时间和范围就不能 由程序控制和改变 ③可编程的硬件定时 用硬件电路和中断方法控制定时,定时和范围由软件确定 和改变,由CPU时钟信号提供精确时基,灵活方便,CPU 的利用率高。微机系统中经常使用可编程计数器/定时器 来实现。8253就是这种可编程计数器/定时器。 2009-05-49 30f38 目录 返回 面
2009-05-19 3 0f 38 实现上述要求可采用三种方法: ①软件定时 简单、灵活、价廉但CPU的利用率太低。 ②不可编程的硬件定时 如555芯片,结构简单,价格便宜,但定时时间和范围就不能 由程序控制和改变 ③可编程的硬件定时 用硬件电路和中断方法控制定时,定时和范围由软件确定 和改变,由CPU时钟信号提供精确时基,灵活方便,CPU 的利用率高。 微机系统中经常使用可编程计数器/定时器 来实现。8253就是这种可编程计数器/定时器
8-18253的工作原理 >8253的内部结构和引脚信号 >初始化编程步骤和门控信号的功能 >8253的工作方式 2009-05-49 40f38 日录运回凸量
2009-05-19 4 0f 38 8-1 8253的工作原理 8253的内部结构和引脚信号 初始化编程步骤和门控信号的功能 8253的工作方式
一、8253的内部结构和引脚信号 内部总线 8253内部包含数 D.~Do 数据 CLKo 计数器 总线 GATE。 据总线缓冲器、 0 缓冲器 0UT。 控制字寄存器、 RD WR◆ 读/写 CLK, 读/写控制逻辑 计数器 逻辑 GATE A 1 OUT 以及3个结构完全 控制字 CLK: 计数器 相同的计数器。 寄存器 GATE, 2 OUT, 2009-05-19 50f38 日录退回凸页
2009-05-19 5 0f 38 一、8253的内部结构和引脚信号 8253内部包含数 据总线缓冲器、 控制字寄存器、 读/写控制逻辑 以及3个结构完全 相同的计数器
1数据总线缓冲器 该缓冲器为8位双向三态的缓冲器,可直接挂在 数据总线上。通过它,一方面可以向控制寄存器写入 控制字,向计数器写入计数初值;另一方面也可由 CPU通过该缓冲器读取计数器的当前计数值 2读/写控制逻辑 读写逻辑的功能是接收来自CPU的控制信号,包 括读信号RD、写信号W爪、片选信号CS和芯片内部寄 存器的寻址信号A1、A0,并完成对8253各计数器的读/ 写操作 2009-0519 60f38 日录运回凸量
2009-05-19 6 0f 38 1 数据总线缓冲器 该缓冲器为8位双向三态的缓冲器,可直接挂在 数据总线上。通过它,一方面可以向控制寄存器写入 控制字,向计数器写入计数初值;另一方面也可由 CPU通过该缓冲器读取计数器的当前计数值 2 读/写控制逻辑 读/写逻辑的功能是接收来自CPU的控制信号,包 括读信号 RD、写信号WR、片选信号CS 和芯片内部寄 存器的寻址信号A1、A0,并完成对8253各计数器的读/ 写操作
◆CS片选信号,输入,低电平有效。有效时,表示8253 被选中,允许CPU对其进行读/写操作。通常连接到 VO端口地址译码电路的输出端 ◆W瓜写信号,输入,低电平有效。用于控制CPU对8253 的写操作,可与A1、A0信号配合以决定是写入控制字 还是计数初值 ◆RD读信号,输入,低电平有效。用于控制CPU对8253 的读操作,可与A1、A0信号配合读取某个计数器的当 前计数值 2009-05-19 70f38 日录运回凸量
2009-05-19 7 0f 38 CS片选信号,输入,低电平有效。有效时,表示8253 被选中,允许CPU 对其进行读/写操作。通常连接到 I/O端口地址译码电路的输出端 WR写信号,输入,低电平有效。用于控制CPU对8253 的写操作,可与A1、A0信号配合以决定是写入控制字 还是计数初值 RD读信号,输入,低电平有效。用于控制CPU对8253 的读操作,可与A1、A0信号配合读取某个计数器的当 前计数值
◆A1、A0,地址输入线。用于寻址8253内部的4个端口, 即3个计数器和一个控制字。一般与CPU低位的地址线相 连 cS RD WR A1 Ao 操作功能 0 1 0 0 0 计数初值装入计数器0 0 1 0 0 1 计数初值装入计数器1 0 1 0 1 0 计数初值装入计数器2 0 1 0 1 1 写控制寄存器 0 0 1 0 0 读计数器0 0 0 1 0 1 读计数器1 0 0 1 1 0 读计数器2 2009-05-19 80f38 日录退回凸页
2009-05-19 8 0f 38 A1 、A0,地址输入线。用于寻址8253内部的4个端口, 即3个计数器和一个控制字。一般与CPU低位的地址线相 连 0 0 1 1 0 读计数器2 0 0 1 0 1 读计数器1 0 0 1 0 0 读计数器0 0 1 0 1 1 写控制寄存器 0 1 0 1 0 计数初值装入计数器2 0 1 0 0 1 计数初值装入计数器1 0 1 0 0 0 计数初值装入计数器0 CS RD WR A1 A0 操作功能
3计数器 8253有3个独立的计数器通道,每个通道的结构完 全相同(见下图)。每一个通道有一个16位减法计数器, 还有对应的16位初值寄存器和输出锁存器。计数开始前 写入的计数初值存于初值寄存器;计数过程中,减法计 数器的值不断递减,而初值寄存器中的初值不变。输出 锁存器则用于写入锁存命令时锁定当前计数值 内部总线 初值寄存器 控制单元 减法计算器 CLK OUT 输出锁存器 GATE 2009-05-19 90f38 目录返回上凤
2009-05-19 9 0f 38 3 计数器 8253有3个独立的计数器通道,每个通道的结构完 全相同(见下图)。每一个通道有一个16位减法计数器, 还有对应的16位初值寄存器和输出锁存器。计数开始前 写入的计数初值存于初值寄存器;计数过程中,减法计 数器的值不断递减,而初值寄存器中的初值不变。输出 锁存器则用于写入锁存命令时锁定当前计数值
4控制字寄存器 接收来自CPU的控制字,并由控制字D7、D6位的编码 决定该控制字写入哪一个计数器的控制寄存器中 D7 D6 Ds D4 D3 D2 Di Do 二进制计数: SC1 SCo RLI RLo M2 MI Mo BCD BCD码计数 初值的范围为 0 2进制计数 0000H 000 方式0 FFFFH,其中 001 方式1 X10 方式2 0000H是最大 X11方式3 100方式4 值,表示65536。 101 方式5 00 计数器锁存·供CPU读 BCD计数: 01 只读/写计教器低字节 10 只读/写计数器高字节 写入初值范围为 11 先读/写计教器低字节·后读/写高字节 00 选择通道0 00009999, 01 选择通道1 10 选择通道2 其中0000表示 11 无效 最大值10000。 图9-38253控制字格式 2009-05-19 100f38 录 返回 凤
2009-05-19 10 0f 38 4 控制字寄存器 接收来自CPU的控制字,并由控制字D7、D6位的编码 决定该控制字写入哪一个计数器的控制寄存器中 二进制计数: 初值的范围为 0000H~ FFFFH,其中 0000H是最大 值,表示65536。 BCD计数: 写入初值范围为 0000~9999, 其中0000表示 最大值l0000