第10章 定时计数器8253分析

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

第十章定时计数器8253/8254

基本内容:8253/8254的功能、编程结构和工作原理,掌握8253/8254的外部接线、编程和使用方法。

基本要求:了解8253/8254的编程结构、工作原理及模式;掌握8253/8254的编程应用。重点内容:8253/8254的编程结构、工作原理及模式和编程应用。

难点内容:8253/8254的编程结构和工作模式。

可编程控制接口芯片的学习要点:

(1)不强调对接口芯片内部电路原理的具体分析;

(2)侧重掌握接口芯片的外特性。

①主要引脚的名称及定义;

②内部逻辑结构框图及功能描述;

③控制字、状态字的组成及定义;

④工作方式的定义。

第一节概述

一、定时信号的获得

定时/计数技术用于构建微机系统的定时子系统。

所谓定时(计数)就是通过硬件或软件的方法产生一个时间基准,以此来实现对系统的定时或延时控制。

定时有三种主要方法:软件定时、纯硬件定时及可编程的硬件定时器/计数器。

(1)软件定时

使用延迟子程序

由于执行每条指令都需要时间,则执行一个程序段就需要一个固定的时间,通过适当地挑选指令和安排循环次数来实现软件的定时。

该方法要求完全占用CPU的时间,因而降低了CPU的利用率。

(2)纯硬件定时

采用固定的电路,如可以采用小规模集成电路555,外接电阻和电容构成单稳延时电路。这样的定时电路简单,而且通过改变电阻和电容,可以使定时在一定的范围内调整。但它由纯硬件来完成,给使用带来不便。

(3)可编程硬件定时器/计数器

这是目前在控制系统中广泛使用的方法,它通过编程来控制电路的定时值及定时范围,功能强,使用灵活。在计算机系统中,象定时中断、定时检测、定时扫描等等都是用可编程定时器来完成定时控制的。

Intel 8253/8254就是常用的可编程定时/计数器。8253最高工作频率2.6MHz,8254

最高工作频率为10MHz。

计数器/定时器的用处:

①作为中断信号

②输出精确的定时信号

③作为波特率发生器

④实现延迟

二、可编程计数器/定时器的工作原理

计数器/定时器的基本原理图

计数器/定时器可以有下面几种工作模式:

①计数结束产生中断

②可重复触发的单稳态触发器

③分频器

④方波发生器

⑤选通信号发生器

第二节可编程计数器/定时器8253 一、8253的编程结构

3个计数器,每个计数器内部有:

8位的控制寄存器

16位的计数初值寄存器

计数执行部件

输出锁存器

8253的编程结构

二、8253的工作原理

8253的工作原理图

1、计数器0,计数器1,计数器2

计数器0、计数器1、计数器2是三个完全独立、结构相同的计数器,每一个计数器都是由一个16位的可预置的减法计数器构成。每一个计数器都有CLK、GATE、OUT

三个引脚。

①每一个计数器都是由一个16位的可预置的减法计数器构成,计数器的初值n 由程序预置。

②CLK:计数脉冲输入端。每进入一个脉冲,计数器计数值就减1。

③OUT:脉冲输出端。当计数器计数值减到“0”时,就从OUT端输出一个信号,输出信号的波形取决于工作方式。

则:定时时间 = 时钟周期 (T) ×预置的计数器初值( n )

④GATE:门控信号端,当GATE为低电平时,禁止计数器工作;当 GATE为高电平时,才允许计数器工作。

2、数据总线缓冲器

功能:①往计数器设置初值

②从计数器读取计数值

③往控制寄存器设置控制字

3、读写逻辑电路

A1、A0 对计数器和控制寄存器寻址,A1、A0为:

00----计数器0,01----计数器1,10----计数器2,11----控制器RD 读信号,读取选中计数器的内容(计数值)

WR 写信号,向选中的计数器写入计数初值,或向选中控制器写入控制字

CS 片选信号,有效表明8253被选中。

4、控制寄存器

在8253初始化时,由CPU写入控制字来设置计数器的工作方式。

特点:只能写入而不能读出。

三、8253 的控制字和编程

1、编程——即对8253初始化

刚接通电源时,8253处于未定义的状态,需用程序将其设置为一个特定的模式,即初始化。

步骤:①写入控制字;②写入计数器初值。

注意:

①三个计数器应该分别初始化

②计数器一旦初始化之后,就在设置的模式下进行减1计数

2、控制字的格式

①SC1、SC0:这两位决定这个控制字是哪一个计数器的控制字

②RL1、RL0:设置数据读/写格式。在读取计数值时,可令RL1、RL0 = 00,先将

写控制字时的计数值锁存,然后再读取。

③M2、M1、M0:设置每个计数器的工作方式。

④BCD:用于选择每个计数器的计数制。在二进制计数时,计数初值的范围是

0000H~FFFFH,其中0000H是最大值,代表65536。在BCD码计数时,计数初值的范围中0000~9999,其中,0000是最大值,代表10000。

注意:最大计数为0000,不是FFFFH或9999。除方式3外,最小值都为1。

四、8253的工作模式

8253的基本规则:

①控制字写入时,进入初始状态

②初值写入后,要经过上升沿和一个下降沿,才开始计数

③在CLK的上升沿被采样

④在CLK下降沿,计数器作减1计数

相关文档
最新文档