第8章 8253
第八章 8253定时计数器(例程)
➢ 在计数过程中,如GATE变为低电平,这时只是暂停计数 ,等待GATE信号变为高电平后,计数器继续“减1”计数
例题,向8253的A1A=0 11B的地址写入0011 0000B,则表示 计数器0设置成方式0,并且采用16位时常数,假设时常数为 1500,则计数器0的初始化程序段如下:
通过计数通道的端口地址可以访问通道中的CR、OL,当对通 道进行写操作时,实际上表示将计数初值(即时常数)写入CR; 当对通道进行读操作时,表示将从OL中读取计数值。
8253的控制字
定时/计数器8253一共有6种工作方式,由控制字 寄存器的内容来设定。方式控制字如下所示:
D7 D6 D5 D4 D3 D2 D1 D0 SC1 SC0 RL1 RL0 M2 M1 M0 BCD
电源(+5V) 地
连接去向 CPU
译码电路 CPU CPU CPU 外部
外部 外部
/ /
8253的原理结构及工作原理
每个计数通道主要包含四个部件: 计数寄存器CR(Conut Register, 16位)、 计数工作单元CE(Counting Element, 16位)、 输出锁存器OL(Output Latch, 16位)、 控制字寄存器(Control Word Register, 8位)。
计数过程中写入新的时常数,它只能在下一次分频脉冲后起作用
方式2的特点:
➢在置方式2的控制字后,OUT端变为高电平;
➢在置入时常数后,下一个CLK脉冲期间,将时常数从CR读 入CE,并开始“减1”计数;
➢当CE计数到01时,在OUT端输出一个负脉冲,并重新读入 时常数进行计数;
微型计算机原理及接口技术第8章8253
计数器/定时器的内部结构
8253内部包含三个完全一样的计数器/定时器通道, 每个通道的工作是完全独立的
每个通道包含:
① 一个8位控制字寄存器:由编程设定该通道的工作方式、读 写格式和数制
② 一个16位计数初值寄存器:由程序设定初始计数值,可分 成高8位和低8位两个部分,可作8位寄存器使用
③ 一个计数器执行部件(实际的计数器):实际上是一个16 位减法计数器,它的起始值是初始寄存器的值,由程序设 定。可分成高8位和低8位两个部分
优点:电路结构简单,价格便宜,通过 改变电阻或电容值,可以在一定的定时 范围内改变定时时间
缺点:电路在硬件已连接好的情况下, 定时时间和范围就不能由程序来控制和 改变,而且定时精度也不高
555定时器外部引脚和内部结构
可编程硬件定时
定时原理:利用可编程定时器/计数器芯 片附加硬件电路实现定时
输出信号的波形由工作方式决定,同时还要受 到GATE引脚上的门控信号控制,它决定是否 允许计数
计数器/定时器的定时功能
当加到CLK引脚上的脉冲为精确的时钟脉 冲,可实现定时的功能。
定时时间决定于计数脉冲的频率和计数 器的初值。
定时时间=时钟脉冲周期×预置的计数初值
计数器/定时器的计数功能
方式1:可编程单稳态输出方式
写入控制字后OUT初始状态:高电平 门控信号GATE的作用:①高电平或低电平均不起作用;
②只有在GATE发生由低到高的正跳变,输出OUT由高
到低跳变,并开始计数;③在计数过程中,若GATE产 生负跳变,不影响计数;④在计数器回0之前,GATE 又产生由低到高的正跳变,8253又将初始值装入,重 新开始计数,使生成脉冲加宽。 计数过程中OUT状态:保持低电平 计数结束OUT状态:发生由低到高的正跳变。 计数器回0后,是否重新计数:否 应用:用于定时
《微机原理与接口技术》(第3版_汪吉鹏)电子教案8
3. 8253内部结构
微型计算机的 I /O 接口技术
微型计算机的 I /O 接口技术 8253的内部结构如图上所示。主要由以下几部分组成:
①数据总线缓冲器
该缓冲器为8位双向三态,是CPU与8253内部之间的数据传输通道。
②读/写逻辑电路 接收CPU送来的读写、片选及地址信号,对8253内部各部件进行控制。 ③控制字寄存器
(2)DMA控制器响应请求
DMA控制器接到请求后,经控制电路向CPU提出保持请求信号HOLD,并等 待CPU的回答。如果控制器接有多个DMA设备,它要对各设备的请求进行排 队,选择优先级别最高的请求输出,作为向CPU发出的保持请求。
(3)CPU响应
CPU在每个时钟上升沿都检测有无HOLD请求,若有此请求,且自身正处在 总线空闲周期中,CPU就立即响应保持请求。如果CPU正在执行某个总线 周期,那么要到这个总线周期结束后再响应此保持请求。
2. 端口编址方式 CPU 寻址外设有两种方式:
(1)I/O设备与存储器统一编址 (2)I/O设备独立编址
一种具体机型内I/O设备采用哪种编址方式,取决于CPU的硬件设 计。
微型计算机的 I /O 接口பைடு நூலகம்术
(1)I/O设备与存储器统一编址:
内存与外设
00000
00001
将外设接口电路的一个端口作为存储器的一个单元。
查询方式输入过程的流程图: (1)CPU从接口(状态口)中读取状态 字 (2)CPU检测状态字,满足条件,CPU 从数据口输入(输出)数据。 (3)不满足条件,CPU重新读取状态字
启动
测试I/O设备状态 否
准备就绪? 是
执行数据传送
结束 查询方式流程图
微型计算机的 I /O 接口技术
第8章计数器8253
OUT DX, AL;写入工作方式控制字
MOV AL, 46H;计数值的低字节
MOV DX, 04C0H;设置8253计数器0地址
OUT DX, AL;写入计数值的低字节
MOV AL, 10110100B;二进制,方式2,写入16位数,计数器2
MOV DX, 04C6H;控制口地址
OUT DX, AL
(1) 输出锁存器锁存或停止计数以保存当前计数值 读出当前的计数值有两种方法: ① 把当前计数值输出的锁存器锁存 ② 通过GATE门控信号发一低电平信号,使计数 执行单元不作减1操作,计数过程停止。
9
(2) 从输出锁存器读数
注意:读8位和读16位的问题
若是读16位的数据,需分两次读出。
先读低字节,再读高字节,即执行两次输入指令。
moval30h控制字送almovdx126h控制口地址送dxoutdxal向控制口写入控制字moval88h低8位计数值是88hmovdx120h通道0端口地址送dxoutdxal向通道0写入计数初值的低8位moval66h高8位计数值为66houtdxal向通道0写入计数初值的高8位21例假设8253的计数器0工作在方式5按二进制计数计数初值为46h
方式2、方式3中,可用电平触发,也可上升沿触发。
13
1. 方式0——计数结束产生中断
该方式下,门控信号决定计数的停止或继续,装入 初值决定计数过程重新开始。计数过程波形图为:
14
2. 方式1——可重复触发的单稳态触发器 该方式是在门控信号的作用下才开始计数
15
3. 方式2——分频器 该方式下用门控信号达到同步计数的目的
16
4. 方式3——方波发生器 工作过程同方式2,只是输出的脉宽不同。
微机原理与接口技术:18第8章 计数器定时器与DMA控制器
交通信息与控制工程系教案(理论教学用)
课程名称微机原理与接口技术第 18 次第 9 周 2 学时上课教室WM1310 课程类型专业基础课授课对象自动化专业章节名称第8章计数器/定时器与DMA控制器(8.1,8.2)
教学目的和要求1.了解软硬件定时的原理;2.掌握8253的原理及应用。
讲授主要内容及时间分配1.接口电路概况;(10min)
2.8253的外部引线和内部结构;(20min)
3.8253的工作方式和控制字;(30min)
4.8253的应用。
(30min)
教学重点与难点重点:
1.软硬件定时的原理;2.8253的原理及应用。
难点:
8253的原理及应用。
要求掌握知识点和分析方法1.了解软硬件定时的原理;2.掌握8253的原理及应用。
启发与提问
1.软件定时与硬件定时的区别?教学手段
多媒体
作业布置思考题:
1.了解最新的硬件定时芯片的原理及其应用,如DS12887等。
主要参考资料
备注
长安大学讲稿(第十九讲)。
常用IO接口芯片
(5)并行接口可直接设置成用硬布线方式连接旳接口,也 可用可编程接口芯片构成可编程接口。
并行接口电路8255A
具有多种功能旳可编程并行接口电路芯片
最基本旳接口电路:三态缓冲器和锁存器 与CPU间、与外设间旳接口电路:状态寄存器
用PC6设置INTE1(输出) 用PC4设置INTE2(输入)
输入和输出中断经过
或门输出INTRA信号
PC3
INTRA
方式2双向时序
WR OBF INTR ACK
STB
IBF RD PA0~PA7 D0~D7
data-in data-out
data-out data-in
8255A旳应用
作为通用旳并行接口电路芯片, 825A具有广泛旳应用
方式2旳数据输入过程与方式1旳输入方式一样
方式2旳数据输出过程与方式1旳输出方式有一点 不同:数据输出时8255A不是在OBF*有效时向 外设输出数据,而是在外设提供响应信号ACK* 时才送出数据
方式2双向引脚
PA7~PA0
INTE1
PC6
PC7
INTE2 PC4 PC5
ACKA OBFA STBA IBFA
PC0
STBB IBFB
INTRB
输入缓冲器满信号 表达A口已经接受数据
中断允许触发器 PC2=1时 B口允许中断
中断祈求信号 祈求CPU接受数据
方式1输入联络信号
STB*——选通信号,低电平有效
由外设提供旳输入信号,当其有效时,将输入设备送 来旳数据锁存至8255A旳输入锁存器
IBF——输入缓冲器满信号,高电平有效
微机原理-8253
8253工作方式特点: 8253工作方式特点: 工作方式特点
方式0 在写入控制字后,输出端即变低,计数结束后, 方式0,在写入控制字后,输出端即变低,计数结束后,输 出端由低变高,常用该输出信号作为中断源。 出端由低变高,常用该输出信号作为中断源。 方式1 用来产生单脉冲。 方式1,用来产生单脉冲。 方式2 用来产生序列负脉冲,每个负脉冲的宽度与CLK脉冲 方式2,用来产生序列负脉冲,每个负脉冲的宽度与CLK脉冲 CLK 的周期相同。 的周期相同。 方式3 用来产生连续的方波。方式2和方式3 方式3,用来产生连续的方波。方式2和方式3都实现对时钟 脉冲进行n分频。 脉冲进行n分频。 方式4和方式5 波形相同,都在计数器回0 方式4和方式5的波形相同,都在计数器回0后,从OUT端输出 OUT端输出 一个负脉冲,其宽度等于一个时钟周期。 一个负脉冲,其宽度等于一个时钟周期。 方式0 方式0、1和4,计数初值装进计数器后,仅一次有效。方式2,3 计数初值装进计数器后,仅一次有效。方式2 在减1计数到0值后,8253会自动将计数值重装进计数器 会自动将计数值重装进计数器。 和5,在减1计数到0值后,8253会自动将计数值重装进计数器。
可编程定时器/计数器8253
8253可编程定时器 计数器的主要性能: 可编程定时器/计数器的主要性能 可编程定时器 计数器的主要性能: 个独立的16位计数器 有3个独立的 位计数器 个独立的 工作方式可编程控制 计数脉冲频率0~2MHz 计数脉冲频率 可以按二进制或BCD码计数 可以按二进制或BCD码计数 使用单一+5V电源 电源 使用单一
方式2:频率发生器(n分频器)
CLK
WR
GATE OUT
n=4
4
3 2
1 0 4 3
第八章 可编程计数器定时器8253及其应用
LSB=4 CR=4
CLK GATE
OUT CRCE 4 CRCE 2 4 CRCE 2 4 CRCE 2 4 CRCE 2 4
8253方式3 计数初值为奇数时的波形 CW=16H WR LSB=5
CR=5
CLK GATE OUT
CRCE
5 4
CRCE 2 5 2
CRCE 5 4
CRCE 4 3
8253方式0
两种特殊情况:
中途改变计数初值
CW=10H WR CR=3 CLK GATE OUT CR=3 LSB=3
LSB=3
CRCE 3 2
CRCE 1 3 2
1
0
8253方式1
2、方式1——可编程单稳态输出方式
时序图
CW=12H WR
LSB=3 CR=3
CLK GATE
OUT
CRCE
CRCE 3 2
1
0
8253方式1
工作过程
① 写入控制字,OUT立即变为高,并保持不变。 ② 写计数初值N,只有当GATE形成一个上升沿时,才在
下一个时钟脉冲的下降沿,将n装入实际计数器,同 时OUT由高变为低,开始减1计数(再来一个脉冲)。
③ 计数期间,OUT一直为低;当计数结束(计数值为0)
8253综述
Intel 8253是一种可编程的计数器/定时器芯片。 8253内部具有3个独立的16位计数器通道,通过对
它进行编程,每个计数器通道均有6种工作方式,并 且都可以按2进制或10进制2种格式进行计数,最高 计数频率能达到2MHz。 8253还可用作可编程方波频 率产生器、分频器、程控单脉冲发生器等。
教材第八章内容
第八章 可编程计数器/定时器8253及应用
第八章__定时器计数器8253
3.
引脚及其功能
• 数据线D7~D0:双向、三态。用于将8253/8254芯片与 系统数据总线相连,在芯片与CPU之间传送数据、命令 、状态信息。 • A1A0:片内端口选择线,输入。这两根线一般接到系 统地址总线的A1、A0 上。当-CS=0时8253/8254芯片被 选中,这两位地址线用来选择片内四个端口地址(三个 计数器的端口和一个控制字寄存端口),以便进行读写。 (当A1A0=00、01、10时,分别选计0、计1、计2) • 当A1A0=11时选中片内的控制寄存器,将命令字写入其 中。该控制寄存器只写,不可读。 • CLK:计数器时钟(计数脉冲)输入端。三个独立的 计数器,各自有一个独立的输入时钟脉冲信号CLK0、 CLK1、CLK2,每输入一个时钟脉冲信号CLK,计数器 中同步递减计数器CE的当前计数值便减1,进行计数或 定时控制。
2.
方式1(可编程单脉冲发生器)
• 在该方式中,写入方式命令字和装入计数初 值到计数寄存器后,计数器输出端OUT为高 电平。在GATE输入端出现一个上升沿后,计 数器使输出端OUT降为低电平,开始计数; 当计数值减到0,输出端恢复为高电平,完成 一个单脉冲输出过程。 显然输出端负脉冲的宽度与计数值的大小有 关,设预置计数值为N,计数时钟周期为TCLK, 那么输出负脉冲宽度就是N×TCLK。所以这是 一个可编程控制的单稳态发生器,如下图所 示。
(1) 控制字写入计数器时,所有的控制逻辑电路立即复位, 输出端OUT进入初始状态。该初始状态与工作方式有关, 设置成方式0时,OUT的初始状态为低电平,设置成其他工 作方式,OUT的初始状态为高电平。 (2) 初始值写入初值计数器CR以后,要经过一个时钟脉冲的 上升沿和下降沿,将初值送入计数执行单元,计数执行单 元从下一个时钟开始进行计数。 (3) 通常,在时钟脉冲CLK的上升沿对门控信号GATE进行采 样,各计数器的门控信号的触发方式与工作方式有关。在 方式0、方式4中,门控信号为电平触发;方式1、方式5中, 门控信号为上升沿触发;方式2、方式3中,即可用电平触 发,也可用上升沿触发。 (4) 在时钟脉冲的下降沿计数器进行计数。0是计数器所能 容纳的最大初值,因为用二进制计数时,16位计数器,0 相当于216,用BCD码计数时,0相当于104。
微机原理及接口技术课件第8章 常用可编程接口芯片
;执行锁存命令
MOV DX,CS+0
;计数器0端口地址
IN AL,DX 内容
;读计数输出锁存器中的低8位
MOV AH,AL
;保护
IN AL,DX 内容
;读计数疏忽锁存器中的高8位
XCHG AH,AL
;AX中是输出锁存命令瞬间,计数执行 单元中的计数值
13
8.2.3 8253的工作方式
8253 的工作方式:
在计数期间CPU又送来新的计数初值,不影响当前计数过程。计数器计数到0, OUT端输出高电平。一直等到下一次GATE信号的触发,才会将新的计数初值装入, 并以新的计数初值开始计数过程,如图8-4(c)所示。8253方式1下三种情况的时序 波形图,如图8-4所示。
18
8.2.3 8253的工作方式
8253方式1时序波形图
接口芯片的地址码经译码后接通芯片的片选端,对读操作而言,怎样使 输入端口的信息由数据总线进入CPU,数据何时读入CPU,这些都由读信号 控制。对于输出接口,当CPU对接口进行输出数据的操作时,发出写信号。 在PC系统中,对I/O接口的操作由IN、OUT指令完成。
3
8.1可编程接口芯片概述
3. 可编程 目前所用的接口芯片大部分是多通道、多功能的。所谓多通道就是指一
0:二进制计数 1:十进制计数
其中:D7 D6用于选择定时器;D5 D4用于确定时间常数的读/写格式;D3 D2用来 设定计数器的工作方式;D0用来设定计数方式。
11
8.2 可编程定时/计数器接口芯片8253
例题8.1 8253控制字写入示例
MOV DX,CS+3
;8253控制寄存器端口地址,设置8253内部寄存
输入
微型计算机原理与接口技术第八章课后答案
第八章1. 8253芯片有哪几个计数通道?每个计数通道可工作于哪几种工作方式?这些操作方式的主要特点是什么?答:8253内部包含3个完全相同的计数器/定时器通道,即0~2计数通道,对3个通道的操作完全是独立的。
8253的每个通道都有6种不同的工作方式。
方式0——计数结束中断方式:当对8253的任一个通道写入控制字,并选定工作于方式0时,该通道的输出端OUT立即变为低电平。
要使8253能够进行计数,门控信号GATE 必须为高电平。
经过n十1个脉冲后,计数器减为0,这时OUT引脚由低电平变成高电平。
OUT引脚上的高电平信号,一直保持到对该计数器装入新的计数值,或设置新的工作方式为止。
在计数的过程中,如果GATE变为低电平,则暂停减1计数,计数器保持GATE有效时的值不变,OUT仍为低电平。
待GATE回到高电平后,又继续往下计数。
方式1——可编程单稳态输出方式:当CPU用控制字设定某计数器工作于方式1时,该计数器的输出OUT立即变为高电平。
GATE出现一个上升沿后,在下一个时钟脉冲的下降沿,将n装入计数器的执行部件,同时,输出端OUT由高电平向低电平跳变。
当计数器的值减为零时,输出端OUT产生由低到高的正跳变,在OUT引脚上得到一个n个时钟宽度的负单脉冲。
在计数过程中,若GATE产生负跳变,不会影响计数过程的进行。
但若在计数器回零前,GATE又产生从低到高的正跳变,则8253又将初值n装入计数器执行部件,重新开始计数,其结果会使输出的单脉冲宽度加宽。
方式2——比率发生器:当对某一计数通道写入控制字,选定工作方式2时,OUT端输出高电平。
如果GATE为高电平,则在写入计数值后的下一个时钟脉冲时,将计数值装入执行部件,此后,计数器随着时钟脉冲的输入而递减计数。
当计数值减为1时,OUT端由高电乎变为低电平,待计数器的值减为0时,OUT引脚又回到高电平,即低电平的持续时间等于一个输入时钟周期。
与此同时,还将计数初值重新装入计数器,开始一个新的计数过程,并由此循环计数。
微机原理ch8
及其应用可编程计数器//定时器8253及其应用第八章可编程计数器主要内容§8-1 引言§8-2 8253的工作原理§8-2 8253的应用举例引言1 引言§8-1引言在微型计算机系统中,常需要用到定时功能。
例如:(1)按一定的时间间隔对动态RAM进行刷新;(2)扬声器的发声;(3)在计算机实时控制和处理系统中,按一定的采样周期对处理对象进行采样,或定时检测某些参数;(4)对外部事件进行计数。
这些情况下都需要用到定时信号,实现定时功能主要有三种方法:1、软件定时最简单的定时方法,完全由软件编程来控制改变定时时间,方便且节省费用;但CPU的利用率低,不通用。
2、不可编程的硬件定时使用不可编程器件设计数字电路实现计数或定时,但必须视要求改变电路参数,可以在一定的范围内改变定时时间。
在硬件已连接好的情况下,定时时间和范围就不能由程序来控制和改变,定时精度不高。
如:555及74LS190。
3、可编程的硬件定时可编程定时器/计数器电路利用硬件电路和中断方法控制定时,定时时间和范围完全由软件来确定和改变,并由微处理器的时钟信号提供时间基准,计时精确稳定。
与CPU并行工作,不占用CPU时间,应用比较广泛,如8253,8254。
§8-2 8253的工作原理一、8253的性能指标Intel 8253就是一种计数器/定时器芯片,被称为可编程间隔定时器(Programmable Interval Timer,PIT)。
性能指标如下:(1)NMOS,24脚双列直插式封装,+5V电源;(2)包含3个独立的16位计数器,最高计数频率高达2MHz;(3)所有的计数方式,操作方式都通过编程控制。
引脚图如下:二、8253内部结构和功能对照内部结构图,介绍8253内部的各组成部分的功能。
1、数据总线缓冲器是8253与系统数据总线的接口,由8位双向三态缓冲器构成,实现数据的输入和输出,通过编程确定8253的工作方式和时间常数。
第8章 输入输出方法及常用的接口电路
A1 A0 00~10 00~10 11
RD
0 1 1
WR
1 0 0
CS
0 0 0
操 作 A口、B口、C口→数据总线(读操作) 数据总线→A口、B口、C口(写操作) 数据总线→控制寄存器(写操作)
表8.2 8255A端口选择及操作功能表
A1 0 0 1 0 0 1 1 × 1 × A0 0 1 0 0 1 0 1 × 1 ×
0 0 0 0 0 0 0 1 0 0
输入操作(读)
输出操作(写)
断开功能
3.A组和B组控制电路 作用:接收来自CPU的读/写控制部分的信号和CPU送 入的控制字,然后分别决定各端口的功能。 ①A组控制电路控制端口A和C的高4位(PC7~PC4); ②B组控制电路控制端口B和C的低4位(PC3~PC0)。 ③根据控制字对端口C的某位实现“置0”或“置1”的操作。 4.数据总线缓冲器
2.状态端口 状态端口用于暂存反映外部设备工作状态的信息。 输入时,CPU应检测外设欲输入的信息是否准备就 绪,如果已准备好,则CPU可以读入信息,否则CPU等 待“就绪”信号的出现后再读入; 输出时,CPU应检测外设是否已处于准备接收状态, 即外设为“空”状态,若是“空”状态,则CPU输出数 据至外设。若外设处于“忙”状态,则CPU不能向外设 输出信息。这种“空”、“忙”、“就绪”均为状态信 息。 3.控制端口
图8.1 主机通过接口与外设相连
8.1.2 基本I/O接口 输入接口电路最基本的功能是三态缓冲,即通过一 组三态缓冲器保证任意时刻仅允许被CPU选中的设备经 由接口与CPU通信; 输出电路最基本的功能是锁存数据,保证外设能够 正确接收到信息。 1.基本输入接口 三态门电路是起缓冲和隔离作用的。只有当CPU选 中此接口即三态门选通时,才允许选定的输入设备将数 据送至系统数据总线,而其他没有选中的输入设备,此 时相应的接口三态门“关闭”,从而达到与数据总线隔 离的目的。
第八章 可编程计数器定时器8253及其应用
习题 CH8 8253
答(续上题): 计数器1工作在方式2,即分频器的方式.输出波形的频 率f=fclk/N=2MHZ/3000=666.7HZ,其周期为1.5ms,输出负 脉冲的宽度等于CLK的周期为0.5s. 方式3,即方波发生器的方式.输出频率 f=2MHZ/1000=2000Hz的对称方波. 三个OUT的输出波形如下:
3kHz +5V
产品计数脉冲
+5V
装箱脉冲
1
习题 CH8 8253
1.写出相关定时/计数器的工作方式,并简述理由. 答:T0的工作方式为1,因为方式1需要外触发才能计数,并且 在计数过程中OUT端输出低电平(2分) T1的工作方式为0, 因为方式0下计数器计数结束后,输出一个上升沿.(2分) 2.计算相关定时/计数器的计数初值. 答:计数器0的初值等于2秒钟计数的个数,即6000.(1分) 计数器1的初值等于19.(1分)
5
习题 CH8 8253
设8253的计数器0,工作在方式1,计数初值为2050H; 计数器1,工作在方式2,计数初值为3000;计数器2,工 作在方式3,计数初值为1000.如果三个计数器的GATE都 接高电平,三个计数器的CLK都接2MHz时钟信号,试画出 OUT0,OUT1,OUT2的输出波形. 答:计数器0工作在方式1,即可编程单稳态方式.这种方 式下, GATE必须有个上升沿,计数器才能启动.而GATE 接了高电平,当方式控制字写入后OUT0变高,计数器无 法启动,所以OUT0一直为高电平.
2
习题 CH8 8253
3.编写8253的初始化程序片断(8253占用地址90H~93H). 答:
MOV AL,00110011B ;通道0,方式1,BCD OUT 93H,AL MOV AL,00H OUT 90H,AL MOV AL,60H OUT 90H,AL OUT 93H,AL MOV AL,19 OUT 91H,AL (1分)
第8章8259和8253
▲响应内部中断条件: 当前指令执行 响应内部中断条件: 结束 中断响应过程如下: ▲中断响应过程如下:
主程序 中断响应周期 中断服务程序 保护现场 开中断 中断处理 关中断 读中断向量 服务程序 中断返回 断点 , 转入中断 恢复现场 识别中断源 FLAGS , CS , IP 进栈
清 TF , IF 标志
5
中断服务程序
中断服务程序:处理中断事件的程序段。 中断服务程序:处理中断事件的程序段。如除法 错中断服务程序、输入输出中断服务程序等。 错中断服务程序、输入输出中断服务程序等。 中断服务程序与一般的子程序对比: 中断服务程序与一般的子程序对比:子程序的调 用是由程序设定, 用是由程序设定,因此是确定的而中断服务程序 由某个事件引发,它的发生往往是随机的、 由某个事件引发,它的发生往往是随机的、不确 定的。 定的。
可屏蔽中断的响应过程 引脚上接收到一个高电平的中断请求信号, 当CPU在INTR引脚上接收到一个高电平的中断请求信号, 在 引脚上接收到一个高电平的中断请求信号 并且当前的中断允许标志为1时 并且当前的中断允许标志为 时,CPU就会在当前指令 就会在当前指令 执行完以后,开始响应外部的中断请求。具体地说, 执行完以后,开始响应外部的中断请求。具体地说,就 引脚上发两个负脉冲, 是CPU往INTA引脚上发两个负脉冲,外设接到第 个负 往 引脚上发两个负脉冲 外设接到第2个负 脉冲以后,立即往数据线上给CPU送来中断类型码。 送来中断类型码。 脉冲以后,立即往数据线上给 送来中断类型码 CPU在响应外部中断、并进入中断子程序的过程中,要 在响应外部中断、 在响应外部中断 并进入中断子程序的过程中, 依次作下面几件事: 依次作下面几件事: (1) 从数据总线上读取中断类型码,将其存入内部暂存器。 从数据总线上读取中断类型码,将其存入内部暂存器。 (2) 将标志寄存器的值推入堆栈。 将标志寄存器的值推入堆栈。 (3) 把标志寄存器的中断允许标志 和单步标志 清零。 把标志寄存器的中断允许标志IF和单步标志 清零。 和单步标志TF清零
8253工作原理
7.3 可编程串行接口芯片8251A
7.3.1 8251A的基本性能 8251A是可编程的串行通信接口芯片,基本性能如下: (1)两种工作方式。同步方式和异步方式。同步方式下, 波特率为0~64K;异步方式下,波特率为0~19.2K。 (2)同步方式下的格式。每个字符可以用5、6、7或8位来 表示,并且内部能自动检测同步字符,从而实现同步。除此 之外,8251A也允许同步方式下增加奇/偶校验位进行校验。 (3)异步方式下的格式。每个字符也可以用5、6、7或8位 来表示,时钟频率为传输波特率的1、16或64倍,用1位作为 奇/偶校验,1个启动位,并能根据编程为每个数据增加1个 、1.5个或2个停止位。可以检查假启动位,自动检测和处理 终止字符。 (4)全双工的工作方式。其内部提供具有双缓冲器的发送 器和接收器。 (5)提供出错检测。具有奇偶、溢出和帧错误三种校验电 路。
(5)方式3:方波速率发生器。
特点:与方式2类似,只是进行减2操作,直到0时, OUT变低 ,并自动重新写入计数值减2操作,直到0时, OUT变高。一 般作为方波发生器使用。
(6)方式4:软件触发的选通信号发生器。
特点:写入控制字寄存器后,输出OUT就变高;GATE为高计数,为低停止计 数;不自动重新计数,需要重新将计数值写入计数器后开始计数;计数到0时 ,OUT变为低,经过一个CLK周期 后变为高。不自动重新计数,只有重新软 件写入计数值,同时GATE为高时开始计数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
从8253的6种工作方式中可以看到门控信号GATE十
分重要 ,而且对不同的工作方式 ,其作用不一样。现将各 种方式下,GATE的作用列于表中。
第8章 常用输入输出接口芯片应用 GATE
第8章 常用输入输出接口芯片应用
3 8253的控制字
可编程定时器8253的控制字格式如图所示。
8253的控制字D0用来定义用户所使用的计数值是
下面我们以图所示的连接图为例,写出8253的初始 化程序。请读者分析此程序的初始化顺序以及各计数 器的工作方式。 SET8253: MOV
MOV OUT MOV OUT MOV OUT MOV
DX,0FF07H
AL,36H DX,AL AL,71H DX,AL AL,0B5H DX,AL DX,0FF04H
OUT 70H,AL
第8章 常用输入输出接口芯片应用
例3:要求计数器2工作在方式2, 按二进制计数,计数值为1
MOV AL,0B4H
OUT 73H,AL MOV AL,10H
OUT 72H,AL
MOV AL,11H
OUT 72H,AL
第8章 常用输入输出接口芯片应用
第8章 常用输入输出接口芯片应用
下面是对计数器2的初始化程序:
MOV AL, 0B6H ;选择计数器2,写双字节,方 式3,二进制计数 OUT MOV 43H,AL AX,533H ;装入控制寄存器
OUT
MOV OUT
42H,AL
AL,AH 42H,AL
;送低字节
;装入高字节
第8章 常用输入输出接口芯片应用
OUT 70H,AL
第8章 常用输入输出接口芯片应用
例5:读计数器1当前计数值
MOV AL,40H
OUT
IN MOV IN MOV MOV
73H,AL
AL,71H CL,AL AL,71H AH,AL AL , CL
第8章 常用输入输出接口芯片应用
4 8253的寻址及连接
1.寻址
8253占用4个接口地址,地址由 CS 确定。
二进制数还是BCD数。 8253控制字中,RL1RL0为00时的作用将在下面说明。 8253每个计数器都有自己的 16 位的计数值寄存器 , 由于其使用简单,亦不做说明。
第8章 常用输入输出接口芯片应用
8253的控制字格式
第8章 常用输入输出接口芯片应用
8253的编程及应用举例
若8253的3个计数器和1个控制寄存 器的端口地址分别为70H、71H 、 72H和73H。 例1:要求计数器1工作在方式0,用 8位二进制计数,计数值为128。
第8章 常用输入输出接口芯片应用
MOV AL,50H
OUT 73H,AL MOV AL,80H
OUT 71H,AL
第8章 常用输入输出接口芯片应用
例2:要求计数器0工作在方式1,
按BCD码计数,计数值为3000。
第8章 常用输入输出接口芯片应用
MOV AL,23H
OUT 73H,AL MOV AL,30H
一个计数器的初始化顺序
第8章 常用输入输出接口芯片应用
摘录该段程序如下:
MOV AL,36H ;计数器0,双字节, ;方式3,十六进制计数 OUT MOV 43H,AL AL,0 ;写入控制寄存器
OUT
OUT
40H,AL
40H,AL
;写低字节
;
第8章 常用输入输出接口芯片应用
另一种初始化编程顺序
5. 方式4(软件触发选通)
设置此方式后,输出OUT 立即变为高电平。一旦装 入计数值,计数立即开始。
第8章 常用输入输出接口芯片应用
6. 方式5(硬件触发选通)
设置此方式后,OUT输出为高电平。GATE的上升沿 使计数开始。当计数结束时由输出端OUT送出一宽度为 一个时钟周期的负脉冲。 在此方式下 ,GATE 电平的高低不影响计数 , 计数由 GATE的上升沿启动。 若在计数结束前 , 又出现 GATE 上升沿 , 则计数从头 开始。
DX,AL
MOV AL,AH OUT DX,AL
从以上的叙述中可以看到,8253在应用上具有很高 的灵活性。通过对外部输入时钟信号的计数,可以达到
计数和定时两种应用目的。
第8章 常用输入输出接口芯片应用
8253与8088系统总线的连接
第8章 常用输入输出接口芯片应用
PC机中8253的连接简图
第8章 常用输入输出接口芯片应用
初始化及其应用
①逐个对计数器进行初始化。 ②先写所有计数器的方式字,再装入各计数器的计 数值,其过程如图所示。
第8章 常用输入输出接口芯片应用
数,每一个时钟周期计数器减1。
2.方式1(可编程单稳) 当计数值装入计数器后 , 要由门控信号 GATE 上升 沿开始启动计数。
第8章 常用输入输出接口芯片应用
可编程定时器8253内部结构框图
第8章 常用输入输出接口芯片应用
3.方式2(频率发生器)
在该方式下,计数器装入初值。开始工作后,计数器 的输出OUT将连续输出一个时钟周期宽的负脉冲。 4.方式3(方波发生器) 在这种方式下,可以从OUT得到对称的方波输出。
1
1
0 可选择计数器2
1 可选择控制寄存器
第8章 常用输入输出接口芯片应用
A0、A1与其他控制信号,如 CS, , 共同实现 .RD.WR 对8253的寻址。细节将在下面说明。
CLK
0~2是每个计数器的时钟输入端。计数器对此
时钟信号进行计数。CLK最高频率可达2MHz。 GATE
0~2门控信号,即计数器的控制输入信号,用来
第8章 常用输入输出接口芯片应用
由于规定工作在方式 3,在 OUT0输出端可以获得对
称方波。下面是对计数器1的初始化程序: MOV AL, 54H ;计数器1,只写低字节,方式2,二
进制计数
OUT MOV OUT 43H,AL AL,18 41H,AL ;写入控制寄存器 ;将低字节计数值18写入计数器1
例4:要求计数器0工作在方式3,
输出方波的重复频率为2KHZ, 计数脉冲输出为2.5MHZ,采用
BCD码计数。
第8章 常用输入输出接口芯片应用
计算计数初值: TC=2.5MHZ/2KHZ=1250
MOV AL,37H
OUT 73H,AL MOV AL,50H
OUT 70H,AL
MOV AL,12H
值,具体实现方法有如下两种:
、A0、A1来
当对 8253 的计数器进行读操作时 , 可以读出计数 ①使计数器停止计数时 , 先写入控制字 , 规定好 RL1和RL0的状态——也就是规定读一个字节还是读两 个字节。
第8章 常用输入输出接口芯片应用 表 各寻址信号组合功能
第8章 常用输入输出接口芯片应用
CS 输入信号,低电平有效。
RD 读控制信号,低电平有效。
WR 写控制信号,低电平有效。
第8章 常用输入输出接口芯片应用
可编程定时器8253引线图
第8章 常用输入输出接口芯片应用
A0 、A1 为8253的内部计数器和一个控制寄存器的
编码选择信号,其功能如下: A1 A0 0 0 0 1 可选择计数器0 可选择计数器1
第8章 常用输入输出接口芯片应用
微机系统中实现定时的方法有几种?
第8章 常用输入输出接口芯片应用
1. 软件定时
2. 硬件定时
3. 可编程定时器定时
第8章 常用输入输出接口芯片应用
可编程定时器8253
1 . 外部引线及其功能
8253与总线相连接的引线主要是: D0~D7双向数据线,用以传送数据和控制字。
第8章 常用输入输出接口芯片应用
MOV
OUT MOV
AL,0A8H
DX,AL AL,61H
OUT
MOV MOV OUT MOV
DX,AL
DX,0FF05H AL,00H DX,AL AL,02H
OUT
MOV MOV
DX,AL
DX,0FF06H AX,0050H
第8章 常用输入输出接口芯片应用
OUT
控制计数器的工作。
OUT 0~2计数器输出信号,用来产生不同方式工作时 的输出波形。
第8章 常用输入输出接口芯片应用
2. 内部结构
可编程定时器8253内部有3个结构完全相同的16位 计数器。(计数器0、计数器1和计数器2) 1.方式0(计数结束产生中断) 在这种方式下,计数器对CLK输入信号进行减法计
②在计数过程中读计数值。这时读出当前的计数
值并不影响计数器的工作。为做到这一点 , 首先写入 8253一个特定的控制字:SC1SC000××××。这是控制 字的一种形式。
第8章 常用输入输出接口芯片应用
2.连接
为了用好 8253,读者必须能熟练地将它连接到系统 总线上。图就是8253与8088系统总线连接的例子。 在图中 , 主要解决了 8253 与 8088 总线的连接。通过 译码器,使8253占FF04H~FF07H四个接口地址。假如在 连接中采用了部分地址译码方式 , 使 A0 不参加译码 , 则 8253 的每一个计数器和控制寄存器分别占用两个接口 地址。