第9章 8253芯片介绍

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

三、8253的工作方式
8253 是一种面向微机系统的专用接口芯片,它的 每一个计数器都可以按照控制字的规定有 6 种不同的工 作方式, 每种工作方式中都有以下三种情况:
* 正常计数的波形图;
* 正在计数过程中改变门控信号GATE后对整个计
数工作的影响;
* 正在计数的过程中改变计数值对整个计数工作的
调度。
定时器和计数器都由数字电路中的计数电路构成。 前者记录高精度晶振脉冲信号,因此可以输出准确的时 间间隔,称为定时器,而当记录外设提供的具有一定随 机性的脉冲信号时,它主要反映脉冲的个数,称为计数 器。
定时的方法有3种:软件定时、不可编程的硬件定 时和可编程的定时。
1. 软件定时
根据CPU执行每条指令需要一定的时间, 重复执行一些指令就会占用一段固定的时间, 通过适当地选取指令和循环次数便很容易实现
定时功能,这种方法不需要增加硬件,可通过
编程来控制和改变定时时间,灵活方便,节省 费用。缺点是CPU重复执行的这段程序的本身 并没有什么具体目的,仅为延时,从而降低了 CPU利用率。
2.不可编程的硬件定时 这种方法采用数字电路中的分频器将 系统时钟进行适当的分频产生需要的定时 信号;也可以采用单稳电路或简易定时电 路(如常用的555定时器)由外接RC电路 控制定时时间。但是,这种定时电路在硬 件接好后,定时范围不易由程序来改变和 控制,使用不甚方便,而且定时精度也不 高。
表9.1 8253读/写操作逻辑表 CS RD WR A1 A0
寄存器选择和操作
0 0 0 0 0 0 0 0 1 0
1 1 1 1 0 0 0 0 × 1
0 0 0 0 1 1 1 1 × 1
0 0 1 1 0 0 1 1 × ×
0 1 0 1 0 1 0 1 × ×
写入计数器0 写入计数器1 写入计数器2 写入控制字寄存器 读计数器0 读计数器1 读计数器2 无操作 禁止使用 无操作
D0 D1 D2 D3 D4 D5 D6 D7 8 7 6 5 4 3 2 1 9 11 10 CLK0 GATE0 OUT0 CLK1 GATE1 OUT1
数 据 线
计 数 器 0
计 数 器 1 计 数 器 2
15 14
RD
控 制 线
WR A1 A0
CS
22 23 20 19 21
13
18 16 17
OUT
3 2 1 0 FF 3 2
图9.5(a) 方式1 正常计数
CW = 12 LSB = 3 WR CLK GATE OUT 3 2 1 3 2 1 0
图9.5(b) 方式1时GATE 信号的作用
CW = 12 WR CLK GATE
LSB = 2
LSB=4
OUT
2 1 0 FF FE 4 3
本章内容
· 定时与计数技术及应用 定时/计数器 —— 8253
学习目的
了解定时/计数技术的应用情况
掌握8253的连接与编程
熟习8253的工作方式
9.1 定时与计数
定时计数技术在计算机中具有极为重要的
作用。微机控制系统中,常要按一定的采样周
期对处理对象进行采样或定时检测某些参数等, 用计数器对外部事件计数,即记录外设提供的 脉冲个数。在实时操作系统和多任务操作系统 中,可以利用定时器产生的定时中断进行进程
CLK2 GATE2 OUT2
电 源 线
VCC
GND
24 12
图9.3 8253PIT管脚图 图8-3 8253 的引脚信号
1. 与CPU的接口信号
(1)D0~D7——三态双向数据线。与CPU数据总线相连, 用于传递CPU与8253之间的数据信息、控 制信息和状态信息; (2)CS——片选信号(Chip Select),输入,低电平有效;
CW = 14 WR CLK GATE OUT
LSB = 3
3
2
1
3
2
1
3
a. 方式2 正常计数
图9.6(a) 方式2 正常计数
CW = 14 WR CLK GATE OUT
LSB = 3
3
2
2
3
2
1
3
图9.6(b) 方式2时GATE信号的作用
b. 方式2 GATE信号的作用
CW = 14
LSB = 4
CW = 18 WR CLK GATE OUT
LSB = 3
3
3
3
2
1
0
FF
b. 方式4 GTAE信号的作用
(3)WR——写信号,输入,低电平有效,用于控制CPU对 8253 的写操作,可与 A1,A0 信号配合以决定 是写入控制字还是计数初值;
(4)RD——读信号,输入,低电平有效。用于控制CPU 对8253的读操作,可与A1,A0信号配合读取 某个计数器的当前计数值; (5)A0,A1——地址输入线。用于8253内部寻址的4个 端口,即3个计数器和一个控制字寄存 器。一般与CPU低位的地址线相连 。
图9.5(c) 方式1时计数过程中改变计数值
3. 方式2 —— 比率发生器、分频器 (Rate Generator)
软、硬件启动,自动重复计数。装入初值后OUT端变高 电平,计数到最后一个CLK时OUT输出负脉冲,并连续 重复此过程。
方式 2用门控信号达到同步计数的 目的,波形图如图9.6(a)、(b)、(c) 所示。
(2)读/写控制逻辑
决定三个计数器和控制字寄存器中哪一个能进行工 作,并控制内部总线上数据传送的方向。
①CS片选信号,低电平有效(此时CPU才能对 8253进行读写操作), 由地址总线经I/O端口译码电路产生。 ②RD读信号,低电平有效,此时表示CPU正在读取所选定的计 数器通道中的内容。 ③WR写信号,低电平有效,此时表示CPU正在将计数初值写入 所选中的计数通道中或将控制字写入控制寄存器中。 ④A1A0端口选择信号,8253内部有3个计数器通道和一个控制寄 存器端口。当A1A0=00,01,10时表示分别选中计数器通道0,1,2, 当A1A0=11时选中控制寄存器端口。
方式3的工作过程同方式2,只是 输出的脉宽不同,波形如图9.7(a)、 (b)、(c)、(d)所示。
CW = 16 WR
LSB = 4
CLK GATE OUT 4 3 2 1 4 3 2 1 4 3
3 计数值为偶数时的波形 图9.7(a)a. 方式 方式 3 计数值为偶数时的波形
CW = 16 WR
2. 8253的内部结构
8253的内部结构如图9.1所示,由数据总线缓冲器、 控制寄存器、读/写控制逻辑和计数器等部分组成。
图9.1 8253的内部结构示意图
(1)数据总线缓冲器
该缓冲器为8位双向三态的缓冲器,可直接 挂在数据总线上。CPU通过8位数据总线D0~D7传
送如下信息:
①向控制寄存器写入控制字。 ②向某计数器写入计数初值。 ③CPU通过缓冲器读取计数器的当前计数值
LSB =5
WR
CLK
GATE OUT
4 3 2 1 5 4 3
图9.6(c) 方式2时计数过程中改变计数值
4. 方式3 —— 方波发生器 (Square Wave Generator)
软、硬件启动,自动重复计数。装入初值后OUT端变 高电平,然后OUT连续输出对称方波:
前 N/2或(N+1)/2 个CLK,OUT为高, 后N/2或(N-1)/2 个CLK, OUT为低。
用方式4工作时,GATE门控信号只是 用来允许或不允许定时操作的,定时的 执行过程由装入的初值决定,波形图如 图9.8(a)、(b)、(c)所示。
图9.8(a) 方式4 正常计数
CW = 18 WR CLK GATE OUT
LSB = 3
3
2
1
0
FF
a. 方式4 正常计数
图9.8(a) 方式4 正常计数
3.可编程的定时 在微机系统中,常采用软件、硬件相 结合的方法,用可编程定时计数器芯片构 成一个方便灵活的定时计数电路。这种电 路不仅定时值和定时范围可用程序确定和 改变,而且具有多种工作方式,可以输出 多种控制信号,它由微处理器的时钟信号 提供时间基准,故计时也精确稳定。如 Intel 8253。
2. 方式1 —— 可编程的单稳态触发器 (Programmable One Short)
硬件启动,不自动重复计数。装入初值后OUT端变高电平, 计数开始OUT端变为低电平,计数结束后又变高。
方式1的工作波形如图9.5(a)、 (b)、(c)所示。
CW = 12 WR
LSB = 3
CLK GATE
对8253来讲,外部输入到CLK引脚上的时钟脉冲 频率不能大于2.6MHZ,否则需分频后才能送到CLK端。
内部总线 初值寄存器
控制单元
减1计数器
OUT CLK GATE
输出锁存器
图9.2 计数器内部逻辑图
二、8253的引脚信号
8253是 一片具有3 个独立通 道的16位 计数器/定 时器芯片, 使用单一 +5V电源, 24引脚双 列直插式 封装,如 图9.3所示
图9.4(c) 方式0时计数过程中改变计数值
注意
8253写计数值是由CPU的WR信号控 制的,在WR信号的上升沿,计数值被送 入对应计数器的计数值寄存器,在WR信 号上升沿之后的下一个CLK脉冲才开始计 数。如果设置计数初值N,输出OUT是在 写入命令执行后,第N+1个CLK脉冲之后, 才变为高电平的。后面的方式1、2、4、5 也有同样的特点。
影响。
1. 方式0——计数结束中断方式 (Interrupt on Terminal Count) 软件启动,不自动重复计数。装入初值后OUT 端变低电平,计数结束OUT输出高电平。
方式0的工作时序如图 9.4(a)(b)(c)所示。
CW = 10 WR CLK GATE OUT
LSB = 4
4
(3)控制寄存器
接收从CPU来的控制字,并由控制字的D7、D6位的 编码决定该控制字写入哪个计数器的控制寄存器,控制 寄存器只能写入,不能读出。
(4)计数器
当8253用作计数器时,加在CLK引脚上脉冲的间隔 可以是不相等的;当它用作定时器时,则在CLK引脚应 输入精确的时钟脉冲,8253所能实现的定时时间,取决 于计数脉冲的频率和计数器的初值,即:定时时间=时 钟脉冲周期Tc×预置的计数初值n。
9.2 Intel 8253可编程定时器/计数器
一、8253的基本功能和内部结构
1. 8253 PIT的基本功能
(1)3个独立的16位计数器,最大计数范围为0~65535; (2)每个计数器均可以按二进制或二—十进制计数; (3)计数器速率可达2.6MHz; (4)可编程6种不同的工作方式; (5)所有输入和输出都与TTL兼容。 8253具有较好的通用性和使用灵活性,几乎适合于任 何一种微处理器组成的系统。
2. 与外部设备的接口信号
(1)CLK0(CLK1,CLK2)——时钟脉冲输入端,用于输 入定时脉冲或计数脉冲信号。CLK可以是系统时钟脉冲,也 可以是由其他脉冲源提供。8253规定加在CLK引脚的输入时 钟周期不得小于380ns; (2)GATE0(GATE1,GATE2)——门控输入端,用于外 部控制计数器的启动或停止计数的操作。当GATE为高电平 时,允许计数器工作,当GATE为低电平时,禁止计数器工 作; ( 3 ) OUT0(OUT1,OUT2)—— 计数输出端。在不同工 作方式中,当计数器计数到 0 时, OUT 引脚上必输出相应的 信号。
LSB = 5
CLK GATE OUT 5 4 3 2 1 5 4 3 2 1
b. 方式3 计数值为奇数时的波形
图9.7(b) 方式3 计数值为奇数时的波形
CW = 16 WR
LSB = 4
CLK GATE
OUT 4 3 2 1 4 4 4 3 2 1
c. 方式3 GATE信号的作用
图9.7(c) 方式3 GATE信号的作用
3
2
1
0
FF
a. 方式0 正常计数
图9.4(a) 方式0 正常计数
CW = 10 WR CLK GATE OUT
LSB = 3
3
2
2
2ห้องสมุดไป่ตู้
1
0
FF
图9.4(b) 方式0时GATE 信号的作用
CW = 10 WR CLK GATE OUT
LSB = 3
LSB = 2
3
2
1
2
1
0
FF
C. 方式0 计数过程中改变计数值
CW = 16 WR CLK GATE OUT
LSB = 5
LSB = 4
5
4
3
2
1
4
3
d. 方式3 计数过程中改变计数值
图9.7(d) 方式3 计数过程中改变计数值
5. 方式4 —— 软件触发选通方式 (Software Triggered Strobe)
软件启动,不自动重复计数。装入初值后输出端变 高电平,计数结束输出一个CLK宽度的负脉冲
相关文档
最新文档