[微机原理][课件][第16讲][8253原理及其应用][2]
《微机原理与接口技术》第九章8253
方式4——软件触发方式
6、方式5——硬件触发方式 这种工作方式同方式4很相似,当 控制字写入控制寄存器后,输出端OUT 变高。同方式4不同的一点是当计数值 写入通道计数器后,通道并未被触发, 也就是计数器并不立即开始计数。只 有当GATE信号的上升沿触发通道后, 通道计数器才开始计数。
方式5——硬件触发方式
;通道0初始计数值
;通道1控制字
;通道1初始计数值,03E8H=1000BCD
例2:计件系统。计件系统的功能就是记录 脉冲的个数。
一个脉冲代表一个事件,比如交通道路检测 系统中通过检测点的车辆,工业控制系统中流 水线上已加工好的工件。要求在计件过程中, PC机可以显示当前计数器的内容,当完成 10000个工件记录后,系统发出1KHz信号推动 喇叭发音通知用户。
第9章 可编程接口芯片
可编程接口概术 可编程定时/计数器接口芯片8253
可编程接口概术
一个简单的具有输入功能和输出功能的 可编程接口电路如下图,它包括一个输入接口, 其组成主要是八位的三态门;一个输出接口, 其组成主要是八位的锁存器;另外还有八位的 多路转换开关及控制这个开关的寄存器FF。
2、工作方式选择 对于通道1,由于要产生1KHz信号,故选用工作方 式3。对于通道0,要求初始计数值写入计数通道后, 计数器就可以工作,则通道0的启动方式应是软件启动。 另外由于要求计数溢出后产生一个信号来启动一个事 件,即喇叭发音,故可选的工作方式为方式0和方式4, 对于图所示方案,通道1的GATE信号由通道0的OUT 信号产生,这个OUT信号应该是电平型的,所以通道 0应选用方式0。
【微机原理】8253
1
1、设8253的地址为40~43H ,CLK 输入频率为2.19MHz 。编写一个程序,使8253芯片通道2工作在方式2,产生1KHz 的定时触发信号。请给出有关参数的计算过程。
★计数初值(Tc )与输入时钟频率(fCLK )及输出波形频率(fOUT )之间的关系为: Tc= fCLK / fOUT
★时间常数=2.19M/1K=2190 。
★根据题目要求,工作方式控制字应为10110100=0B4H 。
通道2的地址为42H 。
参考程序:
MOV AL ,0B4H
OUT 43H ,AL ;8253初始化
MOV AX ,2190
OUT 42H ,AL ;输出时间常数
MOV AL ,AH
OUT 42H ,AL
HLT
2、设8253的地址为60~63H ,CLK 输入频率为1.19MHz 。编写一个程序,使8253
芯
片通道2工作在方式3,产生600Hz的方波信号。请给出有关参数的计算过程。
★时间常数=1.19M/600=1983 。
根据题目要求,工作方式控制字应为10110110=0B6H。
通道2的地址为62H。
★参考程序:
MOV AL,0B6H
OUT 63H,AL ;8253初始化
MOV AX,1983
OUT 62H,AL ;输出时间常数
MOV AL,AH
OUT 62H,AL
HLT
3.若8253A中GATE1为高,CLK1的输入是1000Hz的连续输入脉冲,问:
⑴要求设置计数初值后,计数器开始计数,当计数为0时,OUT1输出一个输入脉冲周期的负脉冲,此计数器的工作方式是什么方式?
⑵若要求每1秒钟输出一个信号,计数初值应为多少?
微机原理8253
(2)、控制字 —— 在8253的初始化编程时,由CPU向8253的控制字寄存器
写入一个控制字,它规定了8253的工作方式。
3、 工作方式 —— 8253共有六种工作方式
(1) 方式0 —— 计数结束中断
(2) 方式1 —— 可编程的单拍脉冲 (3) 方式2 —— 频率发生器
(4) 方式3 —— 方播频率发生器
2、编程命令 (1).方式命令的作用 主要是对8253进行初始化,同时也可对当前计数值进 源自文库锁存。
8253初始化的工作有两点: 一、是向命令寄存器写入方式命令,以选择计数 器(3个计数器之一),确定工作方式(6种方 式之一),指定计数器计数初值的长度和装入 顺序以及计数值的码制(BCD码或二进制码) 二、是向已选定的计数器按方式命令的要求写入 计数初值。
5、8253 编程举例
(1) 初始化编程:使用通道0,工作在方式 1 下,按二——十进制计数,计数值为5080。
• 通道控制字 • 计数值的低8位为80,高8位为50。
MOV AL, 33H OUT 07H, AL MOV AL, 80H OUT 04H, AL MOV AL, 50H OUT 04H, AL
特点: 2. 若在计数过程中使用GATE信号,则使计数器重新开始计数。但GATE不 影响输出。
特点: 3. 若在计数期间改变计数值,只要没有门控信号的触发,不影响计数过程, 计数到0后,若有门控信号触发,则按新的计数值开始计数;若未计数到 0,即有门控信号触发,则立即按新的计数值重新开始计数。
微机原理,第九章(2)8253定时器—计数器应用设计
~ D0
Intel 8253
CLK1 GATE1 OUT1
A9 A8 BHE
o o o
CS
CLK2 GATE2 OUT2
+5V 产生信号
xtwang@mail.xidian.edu.cn
§ 9.4 8253的总线接口方法
EG4. 设 8253 的端口地址为 260H ~ 263H ,外部时钟信号为 1MHz ,要 求产生如下图所示的周期波形,画出8253的连接图,并编写初始化程 序段。
计数器1: 工作方式2,时常数1012 计数器2: 工作方式1,时常数1000
时常数=1012,工作方式2 输出信号周期:1.102s
产生信号
CLK2 GATE2 CS OUT2
时常数=1000,工作方式1 减1计数,在1000第个周期电平变高,在第1012个周期, 由GATE上升沿触发,电平变低,开始下一轮计数
方式2
或
方式3
00110100B 或 00110110B
时常数= Tout / Tin=512
或 00110110B
Step4:写初始化程序: MOV DX, 307H
MOV AL, 00110100B; OUT DX, AL MOV MOV OUT XCHG OUT xtwang@mail.xidian.edu.cn DX, AX, DX, AL, DX, 301H 512 AL AH AL
微机原理实验课件
实验一 I/O地址译码器实验
mov ah,06h mov dl,0ffh int 21h jnz ppp jmp start ppp: mov ah,4ch int 21h delay proc near mov bx,0ffh lll: mov cx,0 ll: loop ll dec bx jne lll ret delay endp code ends。
实验一 I/O地址译码器实验
当CPU执行I/O指令且地址在288H~28FH范围内,译码器 选中,必有一根译码线输出负脉冲。
图1-1
实验一 I/O地址译码器实验
例如: 例如:执行下面两条指令 MOV DX , 2A0H OUT DX , AL Y3输出一个负脉冲,执行下面两条指令 输出一个负脉冲, 输出一个负脉冲 MOV DX , 2A8H OUT DX , AL Y5输出一个负脉冲。 输出一个负脉冲。 输出一个负脉冲 利用这个负脉冲控制L7闪烁发光 闪烁发光( 利用这个负脉冲控制 闪烁发光(亮,灭,亮, ),时间间隔通过软件延时实现 灭,··· ···),时间间隔通过软件延时实现。 ),时间间隔通过软件延时实现。
实验五 中断
out 21h,al mov cx,10 ;记中断循环次数为10次 sti ;置中断标志位 ll: jmp ll int7: mov ax,data ;中断服务程序 mov ds,ax mov dx,offset mess mov ah,09 ;显示每次中断的提示信息 int 21h mov al,20h out 20h,al ;发出EOI结束中断 loop next in al,21h or al,80h ;关闭IR7中断
微机原理-8253
可编程定时器/计数器8253
8253可编程定时器 计数器的主要性能: 可编程定时器/计数器的主要性能 可编程定时器 计数器的主要性能: 个独立的16位计数器 有3个独立的 位计数器 个独立的 工作方式可编程控制 计数脉冲频率0~2MHz 计数脉冲频率 可以按二进制或BCD码计数 可以按二进制或BCD码计数 使用单一+5V电源 电源 使用单一
8253的 一、8253的内部结构和功能 8253的 二、8253的引脚功能 8253的 三、8253的工作方式 8253应用 应用举例 四、8253应用举例
一、8253的内部结构和功能
当用8253作外部事件计 作外部事件计 当用 数器时, 数器时,在CLK脚上 脚上 所加的计数脉冲是由外 这个八位的三态、 这个八位的三态、双 部事件产生的, 部事件产生的,这些脉 向缓冲器用于将 读写逻辑接收来自 冲的间隔可以是不相等 8253与系统总线相 与系统总线相 系统总线的控制信 如果用它作定时器, 的。如果用它作定时器, 接收CPU输出的 连,接收 输出的 号CLK引脚上应数入 ,以产生控制整 则 引脚上应数入 方式控制字或计数初 个器件工作的控制 精确的时钟脉冲, 精确的时钟脉冲,这时 发送CPU从计数 值,发送 从计数 信号。 信号。 8253所能实现的定时时 所能实现的定时时 器读出的计数值。 器读出的计数值。 计数脉冲周期× 间=计数脉冲周期×预 计数脉冲周期 在初始化编程时用于 寄存在CPU写入的 寄存在 写入的 置的计数初值
微机原理与接口技术_第7章8253
第七章 可编程计数器/定时器8253及其应用 ——概述 4. 可编程计数器/定时器8253 Intel 8253就是一种能完成上述功能的计数器/定时器 芯片,被称为可编程间隔定时器(Programmable Interval Timer,PIT)。 ①8253内部具有3个独立的16位计数器通道,通过对
出指令对8253进行读/写操作的信息,都经8位数据总
线D7~D0传送,这些信息包括:
⑴CPU在对8253进行初始化编程时,向它写入
的控制字。 ⑵CPU向某一计数器写入的计数初值。 ⑶从计数器读出的计数值。
10
§7-1 8253的工作原理 ——8253的内部结构和引脚信号
2.读/写控制逻辑
接收系统控制总线送来的输入信号,经组合后形成控制 信号,对各部分操作进行控制。可接收的信号有: ⑴CS 片选信号,低电平有效,由地址总线经I/O端口 译码电路产生。只有当CS为低电平时,CPU才能对8253进行连写 操作。 ⑵RD 读信号,低电平有效。当RD为低电平时,表示 CPU正在读取所选定的计数器通道中的内容。 ⑶WR 写信号,低电平有效。当WR为低电平时,表示 CPU正在将计数初值写入所选中的计数通道中或者将控制字写入 控制字寄存器中。 ⑷A1A0 端口选择信号。在8353内部有3个计数器通道 (0~2)和一个控制字寄存器端口。当A1A0=00时,选中通道0; A1A0=01时,选中通道1;A1A0=10时,选中通道2;A1A0=11时, 选中控制字寄存器端口。
理工大学《微机原理与应用第8章 8253及其应用》课件
Intel 8253是一种完成计数/定时的芯片,被 称为可编程间隔定时器。它内部具有3个独立的 16位计数器通道,通过对它进行编程,每个通 道均可按6种不同的方式工作,并且都可以按2 进制或10进制格式进行计数,最高计数频率能 达到2MHz。8253还适用于许多其他的场合,如 用作可编程方波频率产生器、分频器、程控单 脉冲发生器等等。(8254的特点)
在计数M初O值V 写入A82L5,3后34,H还要经过一个 时钟脉冲的M上O升V 沿和D下X降,沿3F,0H才能将计数初 值装入实际O的UT计数器D,X然,后A在L 门控信号 GATE的控M制O下V,对从ALC,LK12引H脚输入的脉冲 进行递减计O数UT。 DX,AL
2. 门控信号控制功能
表8-2 门控信号GATE的控制功能
4. 方式3--方波发生器
CLK
CWLRK
n=5
WR
n=4
GATE GOAUTTE OUT
54 2 5 2 5 4 2 5 2 42 4 2 4 2 4 2 4 2
13时 减 4时 钟★ 将 可...2如如,为,脉方. 迫 在如12果果每0第冲式.时在 如使 任果写 写输 一 ,3,计果何入 入入 个 都和GOOA数希时计 计一 时 使U方UTTT数 数个 钟 计过望候式E输变器器时脉数为程改重2出的的为钟冲器的高中 变新由初初脉使减高工电, 输装高值值冲计2电作,平电当 出入为为,数平类当平,波G新偶奇均器计,似变A则形数数使减的T数成并,,,1计在的计E值。低禁但变则则数写频数减以电当 当值止从为入率初为后平8减O计输低计2每0,值,U5时2数出电T3来。数同C,进,为端;一计P平时值在行O高U个数当得自时U后计下电T时值动到,数平输 的的重 O器 出G始 一 改的 件U新由,不矩继以AT计 个 变下 ,装高开T又续后是形数 计 输E一 并入 电始回进每序波从。数出计 平下个开到行个列。低周波数 变一高时始计时脉电初 成轮期形电数钟钟计冲平值 低循平就的。使脉数,电环,变,这计可 频冲 。继平计同而为时数按 率时续,数时第器是高新 。,进同。再一减对电的行时将一个2称平,计自计次计时的减,数动数将钟数到方。重重计脉值值0计新波新数冲,计装数 装初或使O从数入值 入U值计基初,T执减 计装数=本值从为 数1行入器,对开初而0计部减循时称值数3,,,
微机原理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;
8253实验 微机原理与接口技术
(计算计数初值、观察波形)。
3、流程图
8253 实验程序(主程序)
CODE SEGMENT ASSUME CS:CODE EQU 004BH TCONTRO TCON2 EQU 004AH CONTPORT EQU 00DFH DATAPORT EQU 00DEH DATA1 EQU 0500H START: JMP TCONT TCONT: CALL FORMAT CALL LEDDISP MOV DX, TCONTRO MOV AL, 0B6H OUT MOV MOV OUT MOV OUT HLT DX, DX, AL, DX, AL, DX, AL TCON2 00 AL 10H AL
Baidu Nhomakorabea
;8253控制口地址 ;计数器2地址
;设置显示编码‘8253---1’ ;调用显示子程序 ;8253 初始化
;B6H=10110110b;定时器2,先读
写低8位,再读写高8位,方式3,二进制数
键盘显示口 初始化
LEDDISP: MOV AL, 10010000H MOV DX, CONTPORT OUT DX, AL MOV BYTE PTR DS:[0600H], 00 LED1: CMP BYTE PTR DS:[0600H], 07H ; JA LED2 MOV BL, DS:[0600H] MOV BH, 0H MOV AL, CS:[BX+DATA1] MOV DX, DATAPORT OUT DX, AL ADD BYTE PTR DS:[0600H], 01H JNZ LED1 LED2: RET ;
微机原理-8253
当计数值为 奇数 时,前 (N+1) / 2 计数期间,
输出高电平,即 OUT = 1, 后(N-1) / 2 计数期间输出低电平,即 OUT = 0 。
方式3 的 操 作 时 序 图
mov al, 16h out WR CLK GATE OUT T 4
计数值 N =3 3
mov al, 04h
方式 2——频率发生器举例
计数器 2 CLK
GATE
+5V
OUT
MOV AL,0B4H;控制字 → AL OUT 07H,AL;控制字 → 控制寄存器 MOV AL,0F4H;计数值低8位→AL低字节 OUT 06H,AL;计数值低8位→计数器2 低字节 MOV AL,01H;计数值高8位→AL MOV AL,0B5H; OUT 07H,AL; MOV AL,00H; OUT 06H,AL; MOV AL,05H;
•
每个计数器有三个引脚:
GATE :门控信号输入端 ,GATE=1 启动计数,GATE=0 停止计数。 CLK :计数脉冲输入端,每一个CLK 脉冲信号的下降沿,使减一计 数器减一。 OUT :计数器输出端。当计数值减到0(或某个规定值)时,产生输 出信号。
8253 的引脚及计数器结构示意图
D7 1 24 VCC
方式0 —— 工作方式的特点
1、写入控制字后,OUT= 0 为低电平,只有当 GATE = 1 时,
微机原理_定时计数器8253
GATE2 由8255A.PB0控制
1.19MHz / 533H = 900Hz
如果需要自定义频率值为263,则可以:
MOV DX, 12H
MOV AX, 3480H
MOV SI, 263
DIV SI
;在AX中就得到了
计数值
音阶和频率的对应关系:
音符 1 2 3 4 5 6 7 1 频率 262 294 330 347 392 440 523 524
一、内部结构
8253定时/计数器的工作原理 定时/计数器的核心部件为可预置初值计数器。
预置初值后开始计数,CLK信号每输入一个脉冲, 计数值减1,一直减到0,并且OUT脚同时产生相应 输出信号,该信号可用作中断请求。
GATE门控 信号
计数脉冲
CLK 输入
可预置初值计数器
要注意定时器 的容量即位数
音符 1 2 3 4 5 6 7 1 频率 524 588 660 698 784 880 988 1048
五、应用实例 用8253产生A / D转换器的启动控制信号。
计 数
CLK0
M GATE0
值
OUT0
CLK1
N GATE1
OUT1
CLK2
L GATE2
OUT2
启动转换
时钟源 频率 F +5V
硬件触发
第7章8253微机原理及应用
MOV AL,37H;写入方式控制字 OUT 83H,AL MOV AL,50H;写入计数初始值低8位 OUT 80,AL MOV AL,12H ;写入计数初始值高8位 OUT 80H,AL
8253工作方式 (6种) • 方式1:可编程单稳电路
(MODE 1) CLOCK WRn#
GATE(TRIGGER) OUTPUT
43210
GATE(TRIGGER) OUTPUT
43243210
方式2—速率发生器
• 在这种方式下,当CPU输出控制字后,输出将 为高。在写入计数值后,计数器将立即自动对 输入时钟CLK计数。在计数过程中输出始终保 持为高,直至计数器减到1时,输出将变低, 经过一个CLK周期,输出恢复为高,且计数器 开始重新计数。
– 选通输入(门控输入)GATE——用于启动或禁止计数器的 操作,以使计数器 和计测对象同步。
• 每个计数器中有四个寄存器;
– ①控制寄存器——初始化时,将控制字寄存器 中的内容写 入该寄存器;
– ②计数初值寄存器——初始化时写入该计数器的初始 值;
– ③减法计数寄存器——计数初值由计数初值寄存器送人减 法计数寄存器,当 计数输入端输入一个计数脉冲时,减法 计数寄存器内容减1,当减到零时,输出 端输出相应信号表 示计数结束。
微机原理与接口技术第九章8253
12
SC1 0 0 1 1
SC0 0 1 0 1
计数 器 CNT0 CNT1 CNT2 不用
RL1 RL0 读写操作方式
0 0 1 1
0 1 0 1
计数器锁存操作(供 CPU读) 只读/写计数器低8位 只读/写计数器高8位 先读/写低8位,再读/ 写高8位
13
M2 0 0 ×
M1 0 0 1
M0 0 1 0
装入CR CLK CR→CE GATE
减1
新的CR→CE
OUT
CE
N
N
N
7
6
5
2
1
0
FF
19
(1)工作方式0—计数结束中断方式
特点: (1)软件启动:写入初值即启动计数 (2) GATE的作用是允许/禁止计数 (3) OUT由低变高表示计数过程结束, 若计数初值为N,则说明已经出现了 N+1个CLK脉冲信号,或者说已经 发生了N+1次事件
去8259A的IRQ0 +5V D Q CLK CL R 74LS74 扬声器 去8237 的DREQ0
Y2
CS
&
驱动 电路 去8255A的PB1 去8255A的PB0
46
计数器0
1.19MHz÷65536 = 18.2Hz,周期约为55ms 16位变量作为计数器,每执行一次中断服务程序就 执行一次加1操作
高校电子信息类-微机原理-第七章(1)可编程接口芯片8253
部
电
设
路
备
2021/4/1
3
School of Automation Science and Electrical Engineering
Computer and Systems
第七章 可编程接口芯片
7.1 输入输出接口(I/O接口)概念
– I/O接口的基本结构:设计成满足CPU与外设信息相互交换的要求
第七章 可编程接口芯片
7.1 输入输出接口(I/O接口)概念
–I/O接口的主要功能
• 对输入输出数据进行缓冲和锁存,输出接口有锁存环节,输入接口 有缓冲环节
• 对信号的形式和数据的格式进行变换 • 微机直接处理:数字量、开关量、模拟量 • 对I/O端口进行寻址 • 建立外设与计算机的连接
CPU
接
外
口
–为什么需要I/O接口
微机的外部设备多样性:工作原理、驱动方式、信息格式、以及工作 速度方面彼此差别很大,它们不能与CPU直接相连,必须经过中间电路 再与系统相连
2021/4/1
2
School of Automation Science and Electrical Engineering
Computer and Systems
• 16位计数初值,但由于计数值低8位为0,所以可以设定读/ 写操作控制段只写高8位,CR低8位自动清0。
微机原理8253
1.已经加在8253上的外部计数时钟频率为1MHZ,试说明若在不增加硬件芯片的情况下,使8253产生周期为1s的对称方波应如何实现?
2. 8253端口地址为40H~43H,CH0作为计数器,计数时钟频率1MHZ,下列程序执行后,输出脉冲的宽度是
MOV AL,36H
OUT 43H,AL
MOV AX,20000
OUT 40H,AL
MOV AL,AH
OUT 40H,AL
4.计数器/定时器8253,振荡器(频率为1MHZ)连线如下图所示,其中振荡器的脉冲输出端接通道0的计数输入端CLK0,设8253的端口地址为180H~186H。
请完成以下任务:
(1)该电路中通道0的OUT0输出2KHZ连续方波,通道0的计数初值为多少(写出计算式)?GATE0应接何电位?在图上画出。
(2)若要8253的OUT1端,能产生周期为1秒的连续方波,该如何解决?在图上画出。
(3)写出实现上述功能的8253初始化程序。
5. 有如图所示的接口简化图,要使发光二极管亮2秒,熄灭2秒,但该过程共进行20秒即终止,设OUT0输入频率为100HZ。8253端口地址为40H~43H编写出程序。
A1
A2
参考:
0端口
Mov al,35h 方式2
Out 43h,al
Mov al,00h
Out 40h,al
Mov al,50h
Out 40h,al
1端口
Mov al,77h 方式3
Out 43h,al
Mov al,00h
Out 41h,al
Mov al,04h
Out 41h,al
2端口
Mov al,b1h 方式1
Out 43h,al
Mov al,00h
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
01 00
000 0
数据锁存命令 ;读通道1计数值程序 读通道 计数值程序 MOV AL, 01000000B , OUT 0F6H, AL , IN AL, 0F2H , MOV AH, AL , IN AL, 0F2H , XCHG AH, AL ,
�
;通道0初始化程序 通道 初始化程序 MOV DX,316H ;置方式 , 置方式 MOV AL, 00110111B , OUT DX,AL , MOV DX,310H ;置初值 , 置初值 MOV AL,00H , OUT DX,AL , MOV AL,05H , OUT DX,AL , ;通道1初始化程序 通道 初始化程序 MOV DX,316H ;置方式 , 置方式 MOV AL, 01110011B , OUT DX,AL , MOV DX,312H ;置初值 , 置初值 MOV AL,80H , OUT DX,AL , MOV AL,04H , OUT DX,AL ,
二,计数功能的应用
设计一个自动计数系统( 提出中断申请). 例8-3:用8253设计一个自动计数系统(计数 : 设计一个自动计数系统 计数500向CPU提出中断申请). 向 提出中断申请 8253Hale Waihona Puke Baidu口地址: F0H, F2H, F4H, F6H, 端口地址: 端口地址 , , , , 8253工作方式:计数器1工作于方式 ,按BCD计数,先读写 工作方式:计数器 工作于方式 工作于方式0, 计数, 工作方式 计数 低字节,后读写高字节. 低字节,后读写高字节.
+5V
+5V
+5V
D7-D0 OUT1 GATE1 WR RD CLK1 A1 A0 CS D7~D0 INTR WR RD A2 A1
译码器
发光 LED
工 件
M/ IO AB
;通道1初始化程序 通道 初始化程序 MOV AL, 01110001B , OUT 0F6H, AL , MOV AL, 99H , OUT 0F2H, AL , MOV AL, 04H , OUT 0F2H, AL ,
§8.2 8253应用举例 应用举例
一,定时功能的应用
1. 用8253产生各种定时波形 产生各种定时波形 已知: 基地址为310H,3通道所用时钟脉冲频率为 例8-1已知:8253基地址为 基地址为 , 通道所用时钟脉冲频率为
1MHz(使用 使用8086CPU). 使用 . 要求: 要求: 输出频率为2KHz的方波; 的方波; (1)通道 输出频率为 )通道0输出频率为 的方波 产生宽度为480us的负脉冲; 的负脉冲; (2)通道 产生宽度为 )通道1产生宽度为 的负脉冲 以硬件方式触发, (3)通道 以硬件方式触发,输出单脉冲时间常数为 . )通道2以硬件方式触发 输出单脉冲时间常数为26. 分析:通道 工作于方式 工作于方式3,控制端GATE0接+5V, 分析:通道0工作于方式 ,控制端 , 时间常数N0=1MHz/2KHz=500; ; 时间常数 通道1工作于方式 ,由控制端GATE1的正跳变触发,单次触发, 的正跳变触发,单次触发, 通道 工作于方式1,由控制端 工作于方式 时间常数N1=480us/1us=480; ; 时间常数 通道2工作于方式 ,由控制端GATE2的正跳变触发,可连续触发, 的正跳变触发,可连续触发, 通道 工作于方式5,由控制端 工作于方式 时间常数N2=26. . 时间常数
假设在一个8086的系统中,使用 的系统中, 控制一个LED的点亮或熄灭. 的点亮或熄灭. 例8-3 假设在一个 的系统中 使用8253控制一个 控制一个 的点亮或熄灭 8253各端口地址分别为 各端口地址分别为81H,83H,85H,87H,CLK端输入的时 各端口地址分别为 , , , , 端输入的时 钟信号频率为2MHz,LED点亮和熄灭的时间均为 . 要求设计 点亮和熄灭的时间均为10s. 钟信号频率为 , 点亮和熄灭的时间均为 硬件电路和驱动程序. 硬件电路和驱动程序. 分析: 分析: 可以用周期为20s的方波信号驱动 可以用周期为 的方波信号驱动LED 的方波信号驱动 20s需要 需要n=20/ 0.5s=4*107 需要 单一通道的计数初值最大为2 单一通道的计数初值最大为 16=65536,因此需要多个定时器通道进行 , 级连. 级连. 计数器0与计数器 级连 计数器 与计数器1级连: 与计数器 级连: 设计数器0的初值 设计数器 的初值=5000,则f0=2×106Hz/5000=400Hz; 工作于方式 的初值 , × 2 计数器1的初值 计数器 的初值=400Hz/0.05HZ=8000, 工作于方式 的初值 , 工作于方式3
码制 00 11 通道 数据读写方式
;通道2初始化程序 通道 初始化程序 MOV DX,316H ;置方式 , 置方式 MOV AL, 10011011B , OUT DX,AL , MOV DX,314H ;置初值 , 置初值 MOV AL,26H , OUT DX,AL ,
011
1
工作方式
2. 控制 控制LED的点亮或熄灭 的点亮或熄灭
当前计数值的读取 控制信号, (1)利用 )利用GATE控制信号, 控制信号 使计数器停止计数. 使计数器停止计数.故干扰了 计数过程,需要硬件电路配合. 计数过程,需要硬件电路配合. (2)利用计数器锁存命令 ) 锁存现行计数值, 锁存现行计数值,就可从相应 的计数器通道中读取计数值. 的计数器通道中读取计数值.
+5V M/IO A3~A9 A0
译 码 器
A1 A2
CS GATA0
GATA1
A0 A1
D8~D15 WR RD
CLK0 OUT0 CLK1
2MHz
WR RD OUT1 LED
8253
控制LED的点亮或熄灭 用8253控制 控制 的点亮或熄灭
;初始化程序
MOV OUT MOV OUT MOV OUT MOV OUT MOV OUT MOV OUT AL,00110101B , 87H,AL , AL,00H , 81H,AL , AL,50H , 81H,AL , AL,01110111B , 87H,AL , AL,00H , 83H,AL , AL,80H , 83H,AL , 采用方式2 ;通道0采用方式 通道 采用方式 向控制口写通道0工作方式控制字 ;向控制口写通道 工作方式控制字 口写计数初值低字节 ;向通道0口写计数初值低字节 向通道 口写 口写计数初值 ;向通道0口写计数初值高字节 向通道 口写计数初值高 通道1采用方式 采用方式3 ;通道 采用方式 向控制口写通道1工作方式控制字 ;向控制口写通道 工作方式控制字 向通道1口写 口写计数初值低字节 ;向通道 口写计数初值低字节 口写计数初值 ;向通道1口写计数初值高字节 向通道 口写计数初值高