第七章 8253应用举例_2012

合集下载

8253工作方式以及应用举例

8253工作方式以及应用举例

第27课 8253工作方式以及应用举例8253的六种工作方式,8253的实际应用举例。

本课主题:教学目的:掌握8253六种工作方式的特点以及使用方法,通过实际应用举例强化8253的使用方法。

教学重点:8253的硬件连接和软件初始化方法。

教学难点:8253的在系统中的应用。

授课内容:8253的每个通道都有6种不同的工作方式,下面分别进行介绍。

1.方式0--计数结束中断方式(Interrupt on Terminal Count)2.方式1--可编程单稳态输出方式(Programmable One-short)3.方式2--比率发生器(Rate Generator)4.方式3--方波发生器(Square Wave Generator)5.方式4--软件触发选通(Software Triggered Strobe)6.方式5--硬件触发选通(Hardware Triggered Strobe)由上面的讨论可知,6种工作方式各有特点,因而适用的场合也不一样。

现将各种方式的主要特点概括如下:对于方式0,在写入控制字后,输出端即变低,计数结束后,输出端由低变高,常用该输出信号作为中断源。

其余5种方式写入控制字后,输出均变高。

方式0可用来实现定时或对外部事件进行计数。

方式1用来产生单脉冲。

方式2用来产生序列负脉冲,每个负脉冲的宽度与CLK脉冲的周期相同。

方式3用于产生连续的方波。

方式2和方式3都实现对时钟脉冲进行n分频。

方式4和方式5的波形相同,都在计数器回0后,从OUT端输出一个负脉冲,其宽度等于一个时钟周期。

但方式4由软件(设置计数值)触发计数,而方式5由硬件(门控信号GATE)触发计数。

这6种工作方式中,方式0、1和4,计数初值装进计数器后,仅一次有效。

如果要通道再次按此方式工作,必须重新装入计数值。

对于方式2、3和5,在减1计数到0值后,8253会自动将计数值重装进计数器。

8.2 8253的应用举例一、8253定时功能的应用例子1(用8253产生各种定时波形在某个以8086为CPU的系统中使用了一块8253芯片,通道的基地址为310H,所用的时钟脉冲频率为1MHz。

8253应用举例

8253应用举例

Y2#
A8 A9 A6 A074源自S138 G1 G2A# G2B#
3)
3
MOV AL,00110111B;T/C0 , ; OUT 96H,AL 96H, MOV AX, 8000H OUT 90H,AL 90H, MOV AL, AH OUT 90H,AL 90H, MOV AL,01110111B;T/C1 , ; MOV AX, 9H OUT 92H,AL 92H, MOV AL, AH OUT 92H,AL 92H,
7
六、 8253应用举例 应用举例
例1:现有一个高精密晶体振荡电路,输 现有一个高精密晶体振荡电路, 出信号是脉冲波,频率为1MHz 1MHz。 出信号是脉冲波,频率为1MHz。要求利用 8253做一个秒信号发生器 做一个秒信号发生器, 8253做一个秒信号发生器,其输出接一发 光二极管, 0.5秒点亮 0.5秒熄灭的方 秒点亮, 光二极管,以0.5秒点亮,0.5秒熄灭的方 式闪烁指示。 8253的通道地址为80H~ 的通道地址为80H 式闪烁指示。设8253的通道地址为80H~ 86H(偶地址) 86H(偶地址)
1.分频器设计 1.分频器设计
8253应用举例 8253应用举例
地址40H~43H)将5MHz的脉冲变为 的脉冲变为1Hz的脉冲。 的脉冲。 用8253(地址 地址 将 的脉冲变为 的脉冲 初值=f 初值 CLK/fOUT=5×106>65536,怎么办? × ,怎么办? 需要2个 级联, 采用方式3产生连续分频方波 产生连续分频方波, 需要 个T/C级联,T/C0采用方式 产生连续分频方波, 级联 采用方式2产生 产生1Hz脉冲。两个 脉冲。 做T/C1的CLK,T/C1 采用方式 产生 , 脉冲 , ; T/C的GATE统一控制。 MOV AL,00110111B;T/C0 统一控制。 的 统一控制

第七章定时_计数器8253

第七章定时_计数器8253

4
3
2
1
3
2
1
GATE=1 4 0 3 2
本章首页
7.2 定时/计数器8253-5/8254-2(续) 定时/计数器8253-5/82544)3方式——周期性方波输出 方式——周期性方波输出 ——
与方式2一样具有自动重新装载计 自动重新装载计 数初值的功能,与方式2的区别仅 数初值 触发方式: 触发 触发方式:写入初值后,WR= 在于输出波形不同 输出波形: 输出波形:输出占空比为1:1或近似1:1的方波。初值为偶数时,前半周为高电 平,后半周为低电平;初值为奇数时,前一半加1的计数过程中为高电平 GATE作用 作用: ,停止,= ,重新开始 GATE作用:=1,允许;=0,禁止;= 计数过程中写入新初值: 计数过程中写入新初值:计数器回零,输出完整的方波后,再开始新过程
A1A0 选中通道 0 0 0 1 1 0 1 1 T0 T1 T2 T3
A0~A1:端口选择线,接收CPU的低位地址,用于8253被选中时,选择内部端口 GATE0~GATE2:T0~T2的门控信号,对计数过程进行控制,具体作用视方式而定 CLK0~CLK2:T0~T2的脉冲输入,允许计数时,8253的Ti对CLKi输入的脉冲进行减 1计数 OUT0~OUT2:T0~T2的输出信号,Ti减为0,OUTi输出有效,输出波形视方式而定
16位计数初值寄存器 装入/读出初值 LSB MSB 通道的内部结构
本章首页
7.2 定时/计数器8253-5/8254-2(续) 定时/计数器8253-5/8254读写控制逻辑: 读写控制逻辑:接收CPU的地址、读/写信号,选中一个端口并确定传送方向
2. 计数初值 操作 WR RD A1 A0 PC机 实验台 逆 减 0 1 0 0 加载T0(向T0写入初值) 40H 304H 8253/8254是逆计数器(减1 0 1 0 1 加载T1(向T1写入初值) 41H 305H 计数器),减1计数器减为0 时输出有效 0 1 1 0 加载T2(向T2写入初值) 42H 306H

8253、8255应用举例

8253、8255应用举例

8255应用举例
8255A在IBM PC/XT上的应用
1.打印机接口的信号与时序 主机把数据送给引脚DATA0~DATA7 同时送出数据选通信号STROBE* 打印机在BUSY信号线上发出忙信号 打印机处理好输入的数据时 撤消忙信号 同时又送出一个响应信号ACK*
2.用8255A方式0与打印机接口
;从PC7送出控制低脉冲 ;置STROBE*=0 ;产生一定宽度的低电平 ;置=1 ;最终,STROBE*产生低脉 冲信号
;打印子程序:返回 pop dx pop ax ret printc endp
3.用8255A方式1与打印机接口
8255A方式1与打印机接口时序配合
8255A的初始化 mov dx,0f003h mov al,0a0h out dx,al mov al,0ch out dx,al …… mov cx,counter mov bx,offset buffer call prints ;打印子程序:输出 prints proc push ax push dx print1: mov al,[bx] mov dx,0f000h out dx,al
;检测(PC7)为1否? ;为0,说明打印机没有响应,继续检测 ;为1,说明打印机已接受数据 ;准备取下一个数据输出 ;打印结束,恢复寄存器 ;返回
;使INTEA(PC6)为0,禁止中断
;打印字节数送CX ;取字符串首地址 ;调用打印子程序
;保护寄存器ov dx,0f002h print2: in al,dx test al,80h jz print2 ;打印子程序:返回 inc bx loop print1 pop dx pop ax ret prints endp
扬声器开 speakon

8253定时功能的应用例子

8253定时功能的应用例子
8253最大初值65536clk2mhz可实现最大时间间隔6553621032769ms所以需要两个计数器串联一个计数器的输出作为另一个计数器的输入五8253的应用以2mhz输入8253实现每5秒定时中断设8253端口地址40h43h分析
8.2.1 8253定时功能的应用例子 1、用8253产生各种定时波形 在某个以8086为CPU的系统中使用了一块8253芯片,通道
的基地址为310H,所用的时钟脉冲频率为1MHZ,要求三个计
数通道分别完成: (1)通道0工作于方式3,输出频率为2KHZ的方波; (2) 通道1产生宽度为480µ s的单脉冲; (3)通道2用硬件方式触发,输出单脉冲,时间常数为26。
图8.11 8253定时波形产生电路
各通道时间常数确定 通道0:=1MHZ/2KHZ=500 通道1:=480US/1US=480 通道2:=26
五、8253的应用
3. 以2MHz输入8253,实现每5秒定时中断(设8253端口地址 40H~43H) 分析:8253最大初值65536,CLK=2MHz可实现最大时间间隔
65536/(2106)=32.769ms
所以需要两个计数器串联,一个计数器的输出作为另一个计数 器的输入
五、8253的应用
AL, 04H
;写低8位
0F2H, AL
;写高8位
8253应用讲解
五、8253的应用
3. 以2MHz输入8253,实现每5秒定时中断(设8253端口地址 40H~43H) 分析:8253最大初值65536,CLK=2MHz可实现最大时间间隔
65536/(2106)=32.769ms
所以需要两个计数器串联,一个计数器的输出作为另一个计数 器的输入
MOV AL,80H OUT 83H,AL

微原实验报告8253

微原实验报告8253

华北电力大学实验报告||实验名称 8253应用课程名称微机原理及应用||专业班级:自动化1202 学生姓名:屈言雪学号: 201202020222 成绩:指导教师:程海燕实验日期: 2014/12/16一、实验目的及要求:实验目的:(1) 学习可编程定时/计数器8253的工作原理及工作方式;(2)掌握使用8253的应用编程方法,并设计出相应电路在实验箱上正确连接;(3)熟练掌握WAVE6000实验系统的使用实验要求:1、基本要求:利用8253输出周期为1秒的方波。

2、在8259的IR2端输入中断请求信号,该信号由8253的方波信号产生(频率1Hz)。

每来一个上升沿,申请中断一次,CPU响应后通过输出接口74LS273使发光二极管亮,第1次中断,LED0亮,第2次中断,LED1亮,…… 第8次中断,LED7亮,中断8次后结束。

二、实验设备1.计算机b6000微机实验箱3.导线若干三、实验内容1、基本要求:利用8253输出周期为1秒的方波。

2、在8259的IR2端输入中断请求信号,该信号由8253的方波信号产生(频率1Hz)。

每来一个上升沿,申请中断一次,CPU响应后通过输出接口74LS273使发光二极管亮,第1次中断,LED0亮,第2次中断,LED1亮,…… 第8次中断,LED7亮,中断8次后结束。

四、实验步骤1、Proteus中的设计:(1)连接好8086与74LS373,如图:(2)设置38译码器译码:根据74LS273地址为8000H,知A15-A0只有A15为1、其余全为0时,即Y0有效时选中273;8259的地址为9000H,Y1有效时选中8259;8253的地址为A000H,Y2有效时选中8253;将38译码器的A、B、C端口分别接地址A12、A13、A14,使能端E1接A15,E2、E3都接地,如图:(3)连线8259,注意8259的A0要连接8086的A1,因为8259的数据端连接8084的低八位数据线,即偶存储体,因此8086的A0一直为0,若用8259的A0连8086的A0,则不能选中8259的奇地址端口;但在实验室中,由于使用的是只有8位的8088,用8088的A0连接8259的A0即可;使能端连接Y1,8259的地址为9000H,即A15-A12分别为1001,38译码器Y1有效选中8259;8259IR2端接8253的OUT1,表示将方波信号送入IR2申请中断,相当于开关的作用;如图:273,MR接电源的原因:MR只有接电源时,273才具有锁存功能。

微机原理与接口技术_第7章8253

微机原理与接口技术_第7章8253
15
§7-1 8253的工作原理 ——8253的内部结构和引脚信号
然后,开始递减计数。即每输入一个时钟脉冲,计数
器的值减1,当计数器的值减为0时,便从OUT引脚输出 一个信号。输出信号的波形主要由工作方式决定,同 时还受到从外部加到GATE引脚上的门控信号控制,它 决定是否允许计数。 当用8253作外部事件计数器时,在CLK脚上所加的计 数脉冲是由外部事件产生的,这些脉冲的间隔可以是 不相等的。 如果要用它作定时器,则CLK引脚上应输入精确的时 钟脉冲。这时,8253所能实现的定时时间,决定于计 数脉冲的频率和计数器的初值,即 定时时间=时钟脉冲周期tc×预臵的计数初值n
16
§7-1 8253的工作原理 ——8253的内部结构和引脚信号 ③引脚 8253的3个计数器都各有3个引脚,它们是:
CLK0~CLK2:计数器0~2的输入时钟脉冲从这里输
入。频率不能大于2MHz。
OUT0~OUT2:计数器0~2的输出端。
GATE0~GATE2:计数器0~2的门控脉冲输入端。
4
第七章 可编程计数器/定时器8253及其应用 ——概述 2. 不可编程的硬件定时 555芯片是一种常用的不可编程器件,加上外接电阻和电 容就能构成定时电路。这种定时电路结构简单,价格 便宜,通过改变电阻或电容值,可以在一定的定时范 围内改变定时时间。但这种电路在硬件已连接好的情 况下,定时时间和范围就不能由程序来控制和改变, 而且定时精度也不高。 3. 可编程的硬件定时 ①可编程定时器/计数器电路利用硬件电路和中断 方法控制定时,定时时间和范围完全由软件来确 定和改变,并由微处理器的时钟信号提供时间基 准,这种时钟信号由晶体振荡器产生,故计时精
12
§7-1 8253的工作原理 ——8253的内部结构和引脚信号 8253输入信号组合的功能表

8253与8255的应用举例

8253与8255的应用举例

;发长音 LOP: MOV BL,LONG1 CALL SSP
;查ESC键,停止发声 程序3/4 MOV AH,0BH INT 21H CMP AL,00H JE CONTINUE1;无键按下,发短音 MOV AH,08H;等待从键盘输入一个字符 INT 21H CMP AL,1BH;是ESC,停止发声 JE QUIT ;发短音 CONTINUE1:MOV BL,SHORT1 CALL SSP JMP LOP ;关闭扬声器,并退出 QUIT:IN AL,61H AND AL,0FCH OUT 61H,AL MOV AL,AH OUT 61H,AL
程序2/4
;关闭扬声器 IN AL,61H;读入8255 PB口原输出值 AND AL,0FCH;置PB0和PB1为0,关闭GATE2和与门 OUT 61H,AL
;查任意键,启动发声器 WAIT1:MOV AH,0BH;判断是否有任意键按下? INT 21H CMP AL,00H JE WAIT1;无键,则等待;否则发长音。
结果利用发光二极管显示,与 82538253 片选信号从译码器 的CLK2已接好 Y1 1.19MHZ 引入, 8253的 304 out 信号 ~ 信号连接 307H
工作方式? 用到几个通道?初始值? 硬件连线? 编程?
8253与8255的应用举例
1.要求 利用定时/计数器8253发600Hz的长/短音。按任意键,开启 发声;按ESC键,停止发声。8253的输入时钟CLK的频率为 1.9318MHz. 2. 分析 根据题意,有两个工作要做,一是声音的频率应满足 600Hz,二是发声持续的长短的控制。 (1)计数初值的确定: C=1.19318X106Hz/600= 1983 (2)长/短音的控制:设置延时常数寄存器BL,改变它,可以改 变延时时间; (3)扬声器的开/关控制:设置一个与门,利用8255A PB0,PB1引脚分别控制8253-GATE和与门的开关。 3.设计 (1)硬件设计

第7章8253微机原理及应用

第7章8253微机原理及应用
有一半时间为高,另一半时间为低。
(MODE 3) CLOCK
4 3 2 1 0(4) 3 2 1 0(4) 3 2 1 0
OUTPUT
n=4
n=4
n=3
OUTPUT 0(5) 4 3 2 1 0(5) 4 3 2 1 0(5) n=5
OUTPUT n=4
4 3 2 1 0(4) 3 2 1 0
GATE (RESET)
– 选通输入(门控输入)GATE——用于启动或禁止计数器的 操作,以使计数器 和计测对象同步。
• 每个计数器中有四个寄存器;
– ①控制寄存器——初始化时,将控制字寄存器 中的内容写 入该寄存器;
– ②计数初值寄存器——初始化时写入该计数器的初始 值;
– ③减法计数寄存器——计数初值由计数初值寄存器送人减 法计数寄存器,当 计数输入端输入一个计数脉冲时,减法 计数寄存器内容减1,当减到零时,输出 端输出相应信号表 示计数结束。
方式4—软件触发选通(启动计数原理类似于方式0)
• 在这种方式下,当写入控制字后,输出为高(原为高则保持为高,原为 低则变为高)。当写入计数值后立即开始计数(相当于软件启动),当 计数到0后,输出变低,经过一个输入时钟周期,输出又变高,计数器停 止计数。这种方式计数也是一次性的,只有在输入新的计数值后,才能 开始新的计数。
– (4)每个计数器有6种工作方式,可由程序 设置和改变。
– (5)所有的输入输出引脚电平都与TTL电平 兼容。
8253的结构和引脚
• 三个计数器中每一个都有三条信号线;
– 计数输入CLK——用于输入定时基准脉冲或计数脉冲;
– 输出信号OUT——以相应的电平指示计数的完成,或输 出脉冲波形; ·
二、8253在IBM-PC/XT机中的应用

微机第7章-8253

微机第7章-8253
执行outnal输出数据控制led点亮iow地址译码器地址总线备一功能72可编程定时计数接口芯片8253计数器0计数器1clk1gate1out1clk0gate0门控信号out0输出信号时钟输入rdwrcsd7d0d15d0d15d051有三个独立的16位减法计数器2每个计数器都可以按二进制或bcd计数3每个计数器的计数频率最大为2mhz4每个计数器都有6种工作方式通过编程设置计数器2clk2gate2out2a0a1d15d0二引脚及内部结构数据总线缓冲器读写读写控制电路计数器0计数器计数器1clk0gate0out0clk1gate1out1d7d0rdwrwr时钟输入门控信号输出信号72可编程定时计数接口芯片82536控制字寄存器计数器2clk2gate2out2csa0a1a1a0端口选择00计数器001计数器110计数器211控制端口计数器通道结构gate初值寄存器crceclkoutd15d14d0执行部件减1计数器72可编程定时计数接口芯片82537输出锁存器ol?初值寄存器
5
可编程定时/计数接口芯片8253 7-2 可编程定时/计数接口芯片8253 二,引脚及内部结构
D7~D0
数据 总线 缓冲器
计数器 0
CLK0 时钟输入 GATE0 门控信号 OUT0 输出信号
RD WR A0 A1 CS
读/写 写 控制 电路
计数器 1
CLK1 GATE1 OUT1
A1,A0端口选择 0 0----计数器 计数器0 计数器 0 1----计数器 计数器1 计数器 1 0----计数器 计数器2 计数器 1 1----控制端口 控制端口
CLK
CW=10
n=3
WR GATE OUT 3 2 1 0
19
可编程定时/计数接口芯片8253 7-2 可编程定时/计数接口芯片8253 六,应用

8253举例

8253举例

mov al,10110110B
读当前计数值
在事件计数器的应用中,需要读出计数过程中的当前计数值 ,以便根据这个值做计数判断。具体做法是,先发一条锁存命 令,将减1 计数器锁存至输出锁存器中,再执行读操作,读出 锁存器中的内容。 mov dx, 307h ;设臵方式控制字
L: mov al, 01000000B;1号计数器锁存命令 out dx, al
例:使1号计数器T1,工作在0方式,采用十六位二进制, 计数初值的高低字节分别为BYTEH和BYTEL,其初始化程 序为: mov dx,307h ;设臵方式控制字 mov al,01110000B;1号计数器锁存命令 out dx,al mov dx,305h mov al,BYTEL
out dx,al
18
设8253端口地址:40H、41H、42H、43H, 8255端口A的口地址为80H。
•编程
0#计数器: 方式2;BCD计数;计数初值: 50 控制字: 15H 1#计数器: 方式3;BCD计数;计数初值: 1250 控制字: 77H •主程序: MOV AL,15H 送0 #计数器 OUT 43H,AL 方式控制字 送0 #计数器 计数初值 开中断 等待中断 MOV AL,50H OUT 40H,AL STI LOP: HLT JMP LOP
D0~D7 CLK0 GATE0 RD# WR# CS# A1 A0
OUT0 CLK1 GATE1
5MHz
OUT1
CLK2
1Hz
GATE2
OUT2
21
OUT 43H,AL MOV AX, 5000D OUT 40H,AL MOV AL, AH OUT 40H,AL MOV AL,01110101B;T/C1 MOV AX, 1000D OUT 41H,AL MOV AL, AH OUT 41H,AL

第7章 可编程计数器定时器8253及其应用

第7章 可编程计数器定时器8253及其应用

计数器2
GAT E2
OUT2
A1A0=10 8253的内部结构
§7.1 8253的工作原理


一.8253的结构和功能
2. 8253的内部结构和引脚功能
② 计数器0~2
3个独立的计数器,构成3个通道ch0~ch2。
计数初值 寄存器CR
计数执行 单元CE
计数值锁 存单元LR
CLK
GATE
OUT
CPU DB


一.8253的结构和功能
2. 8253的内部结构和引脚功能
③ 控制字寄存器
8位寄存器,写入控制口(A1A0=11)。
CPU DB
D0 ~ D7
数据 总线 缓冲器 内 部 总 线 控制字 寄存器
CLK0
计数器0
GAT E0
OUT0
CLK1
在8253的初始化编程中, 由CPU向8253的控制字寄存器写 入一个控制字来设置8253的工 作方式。
§7.1 8253的工作原理


三.8253的工作方式
2. 方式1 可编程单稳态输出方式
N N
OUT
TCLK
写入控制字,OUT变高,写入初值,经 过一个CLK周期,初值到达计数执行单元。 无论GATE为何电平,都不工作。在GATE上 升沿作用下,并且OUT变低,开始计数,计 数到“0”,OUT变高,停止计数。
■ 通道管脚(9个)
8253有3个计数/定时通道。 ◇ 通道0有3个引脚:CLK0、GATE0、OUT0 ◇ 通道1有3个引脚:CLK1、GATE1、OUT1 ◇ 通道2有3个引脚:CLK2、GATE2、OUT2
8253
■ 与CPU连接的管脚(13个)

8253的工作原理及应用

8253的工作原理及应用

8253的工作原理及应用一、工作原理8253是一种常见的计时/计数芯片,它能够完成各种定时和计数功能。

它采用了三个计数器,分别为计数器0、计数器1和计数器2。

每个计数器可以独立工作,同时也可以与其他计数器进行协同工作。

具体的工作原理如下:1.计数器的基本工作原理是将外部时钟信号分频后输出,根据计数器的工作模式,可以输出不同的周期信号。

2.8253有三个计数器,计数器0可以设置工作模式,计数器1和计数器2可以由计数器0通过控制字来选择工作模式。

3.通过控制字可以设置计数器的工作模式,比如设置为定时器工作模式、内部触发工作模式、软件触发工作模式等等。

4.计数器工作的时候,是通过输入控制字来设置计数器的初始值,然后按照设定的模式进行计数,当计数到达设定的值时,会触发相应的事件,例如输出一个脉冲信号或者产生一个中断。

二、应用领域8253芯片在计算机系统中有广泛的应用,主要包括以下几个方面:1.定时器功能:8253芯片可以实现定时器的功能,通过改变控制字设置的工作模式和初始值,可以产生定时脉冲信号,精确地控制计时间隔。

这在操作系统中非常常见,可以用于定时器中断、延时等。

此外,它还可以用于工业自动化领域中的精确控制和同步任务。

2.计数器功能:8253芯片也可以作为计数器使用。

例如,在测量系统中,可以通过外部输入信号的脉冲数量来进行计数,并配合计时功能实现测量和统计。

3.PWM信号生成:8253芯片可以实现PWM(脉宽调制)信号的生成。

通过改变初始值和周期,可以控制PWM信号的占空比,实现对电机速度、光强等参数的控制。

4.音频处理:8253芯片中的计数器可以用于实现音频处理。

通过设定计数器的频率,可以控制音频信号的采样率,从而实现音频的录制和播放。

5.高速脉冲生成:8253芯片可以产生高速脉冲,用于直流电机控制、步进电机控制等应用场景中。

三、优势与不足8253芯片具有以下几个优点:•多功能性:8253芯片具有丰富的工作模式,可以根据不同的需求灵活地配置和应用。

8253举例解析

8253举例解析

12
3. 8253计数通道的级联应用
例3
已知某8253占用I/O空间地址为320H~323H, 如下图所示,输入其 CKL1 端的脉冲频率为 1MHz, 要求用8253连续产生10秒的定时信号。 分析:8253的一个通道的最大计数范围为65536,本例 中要求输出10秒定时信号,则计数初值N=10/10-6=107, 超过了8253一个通道的最大计数值,此时可以使用2个 8253通道级连方式来实现。若级连前2个通道的初值为 N1和N2,则级连后作为一个整体的计数值为N=N1×N2。
10
A0 A1 外部事件产生
A3~A9
译码 电路
8253用于外部事件的计数
11
根据要求,可以选择方式0来实现,计数初值N=100。 8253初始化程序段如下:
MOV DX,203H MOV AL,10H OUT DX,AL MOV DX,200H MOV AL,64H OUT DX,AL ;设置计数器通道0的地址 ;计数初值为100 ;设置方式控制字地址 ;设定通道0为工作方式0,二进制计数,只写入 ;低字节计数值
mov al,BYTEH out dx,al
1
编程命令
例1:选择2号计数器,工作在3方式,计数初值为 533H,采用二进制计数,其初始化程序为:
mov dx,307h out dx,al mov dx,306h mov ax,533h out dx,al mov al,ah out dx,al
;设置方式控制字 方波发生器 ;设置计数初值 ;计数初值为533H ;先送低字节 ;后送高字节
断,CPU在中断服务程序中完成数据采集,同时按
原设定值重新开始计数,实现了计数值的自动重装。
7
(2) 确定计数初值

8253应用举例

8253应用举例
工作原理: 1) 用8253-5的通道0设定为计数方式计数,计数满50后, 由OUT0输出一个负脉冲,经反向后作为8259A的中断 请求信号,在中断服务程序中,启动8253-5通道1工 作,有通道1连续输出频率为2000Hz的方波信号,持 续5秒后结束。 2) 通道0工作于方式2,通道1工作于方式3,通道1的门 控信号GATE1由8255A的PA0控制。
8.3.5 8253-5的应用举例 一、用8253-5监视一个生产流水线 1.硬件设计
1 OUT0 CLK0 GATE0 8253
INT +5V
2.5MHz
8255PA0 CLK1 GATE1 OUT1
驱 动 器
图8-28 8253的应用—计数和定时
设计要求及设计方案确定
• 使用8253-5监视一个生产流水线,每通过50个 工件,扬声器响5秒钟,频率2000Hz。
习题:8.24
8253A-5的计数通道0连接如图习8-4所示,试回 答: (1)计数通道0工作于何种方式,并写出工作方 式名称; (2)写出计数通道0的计数初值(列出计D0 GATE0 CLK0
RD WR A0 A1 CS
8253
OUT0
1ms
400ns
图习8-4
• 计数器1初始化程序段: 计数初值= 100ms / (1/200kHz)==20000D=4E20H MOV AL,0111 0100B;通道1,方式2,16计数,二进制计数 OUT 87H,AL MOV AL,20H OUT 85H,AL MOV AL,4EH OUT 85H,AL
解: (1)由于出现一个CLK周期宽度的负脉冲的方式有方式 2\5两种,但是GATE0是一直保持高电平,因此方式5是 无法触发的,因此可以判断计数通道0工作于方式2 (2)因为CLK周期宽度为400ns, CLK正脉冲宽度为 200ns,因此 计数通道0的计数初值= 1ms/ 400ns=2500 (3)初始化程序段(设8253的口地址为:80H-83H) MOV AL,0001 0101B MOV 83H,AL MOV AL,00H OUT 80H,AL MOV AL,25H OUT 80H,AL

CH7 可编程计数器定时器8253及应用(ok)

CH7 可编程计数器定时器8253及应用(ok)
8
第七章
(3) WR :写信号 低电平有效,当 WR有效时,表示CPU正在将 计数初值写入所选中的计数通道或将控制字写入控 制字寄存器中。 (4)A1、A0 :端口选择信号 在8353内部有3个计数器通道(0~2)和一个控制 字寄存器端口。 A1A0=00时,选中通道0; A1A0=01时,选中通道1; A1A0=10时,选中通道2; A1A0=11时,选中控制字寄存器端口。
第七章
4
引脚图:
8 7 6 5 4 3 2 8253 1 22 23 19 20 21 9 11 10
15 14 13 18 16 17 24 12
RD WR
VCC
GND
CS
5
第七章
二、8253的内部结构和功能
6
第七章
1、数据总线缓冲器 一个8位双向的三态缓冲器,作为8253和系统数 据总线之间的接口; 实现CPU与8253之间数据的传送; 传送信息包括: (1)进行初始化编程时的控制字; (2)向某一计数器通道写入的计数初值; (3)从某一计数器通道读出的当前计数值。
3
7-2 8253的工作原理
一、8253的性能指标 Intel 8253是一种可编程的计数器/定时器芯片 ,称为可编程间隔定时器(Programmable Interval Timer,PIT)。 性能指标如下: (1)NMOS,24脚双列直插式封装,+5V电源; (2)包含3个独立的16位计数器,最高计数频率高 达2MHz; (3)所有的计数方式,操作方式都通过编程控制。
第七章 可编程计数器/定时器8253及其应用 7-1 引言 7-2 8253的工作原理
一、8253的性能指标 二、8253的内部结构和功能 三、8253的控制字 四、8253的初始化编程的步骤 五、8253的工作方式 六、8253的读写操作及与系统的连接
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

MOV AL, 01000000B
OUT 43H, AL ; 发锁存读的命令
IN
AL, 41H ;先读低8位
MOV AH, AL
IN
AL, 41H ;后读高8位
XCHG AH, AL
8253应用举例
1、硬件电路设计
➢ 地址译码电路设计 例1
➢ 地址译码电路设计 例2
2、“定时波形产生电路” 设计举例(做补充作 业)
➢ 硬件电路(1ms定时中断) 注:图中地址译码电路设计有误,重新修改。
➢ 编程: (1)8253初始化(1ms定时中断) :
通道1:方式3 (或方式2 ),2进制计数 输入时钟1.193MHz,输出方波1kHz 计数初值:1.193MHz / 1kHz = 1193
初始化程序:
MOV OUT MOV OUT MOV OUT
键按下时,发声;键松开时,停止发声。 用BIOS中断:INT 16H AH=0
判得到的AH(键盘扫描码)的b7位
AL, 01110110B 43H, AL AX, 1193 41H, AL AL, AH 41H, AL
(2)设置中断向量:
CLI
MOV
AX, SEG IR2_SUB
MOV
DS, AX
MOV
DX, OFFSET IR2_SUB
MOV
AL, 72H
MOV
AH, 25H
INT
21H
STI
(3)设置中断屏蔽字:
某8086系统中,8253的口地址为40h~43h,8259的 口地址为20h~21h,中断类型码为70h~77h。8253计数 器1的输入时钟为1.193MHz,定时输出中断请求信号至 8259的IR2。在中断服务程序中对中断次数计数,存在 IR2_COUNT单元中。要求: 1)设计硬件电路 (分1ms和1s定时中断两种情况); 2)编写8253初始化程序(分1ms和1s定时中断两种情况); 3)编程设置中断向量,设置中断屏蔽字; 4)编写中断服务程序。
➢ 硬件电路图
➢ 地址译码电路
➢ 8253通道0初始化程序 通道0:方式3,2进制计数 输入时钟2MHz,输出方波2KHz
计数初值:2MHz / 2KHz = 1000
初始化程序:
MOV OUT MOV OUT MOV OUT
AL, 00110110B 43H, AL AX, 1000 40H, AL AL, AH 40H, AL
1个计数器不够计数,怎么办?
→ 2个计数器级联 补充作业:做“1s定时中断”的情况
4、8253在PC机中的应用
PB1PB0=11时,计数器2输出的方波信 号才能送到扬声器,扬声器才能发声。
➢ 编程举例——产生频率为f的通用发声程序
思考:
用键盘模拟“电子琴” 1)将电子琴发声的各频率对应的计数值做成表 2)根据键盘输入的数字查表得到计数值 3)设置8253计数器2的计数初值 4)设置8255的PB0PB1,控制扬声器发声
8253编程方法
➢ 8253初始化程序 通道1:方式3,BCD码计数 计数初值:1250
初始化程序:
MOV
AL, 01110111B
OUT
43H, AL
MOV
AX, 1250H
OUT
41H, AL
MOV
AL, AH
OUT
41H, AL
如果是二进制计数,计数初值如何设置?
➢ 读取计数值程序 要先锁存,才能读到稳定的计数值。
➢ 8253通道1初始化程序
通道1:方式2,2进制计数 输入时钟2MHz,输出负脉冲40KHz
计数初值:2MHz / 40KHz = 50
初始化程序:
MOV OUT MOV OUT
AL, 01010100B 43H, AL AL, 50 41H, AL
➢ 8253通道2初始化程序 通道2:方式1,BCD码计数
IN
AL, 21H
AND
AL, 11111011B
OUT
21H, AL
(4)中断服H
INC
MOV
OUT
POP
IRET
AX IR2_COUNT AL, 20H 20H,AL AX
思考:
定时1s中断,计数值= 1.193MHz / 1Hz = 1193000>65536
输入时钟2MHz (0.5us), 输出500us宽度的单脉冲。
计数初值:500us / 0.5us = 1000
初始化程序:
MOV OUT MOV OUT MOV OUT
AL, 10110011B 43H, AL AX, 1000H 42H, AL AL, AH 42H, AL
3、“计数电路” 设计举例(做补充作业 )
相关文档
最新文档