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

合集下载

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

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

一、8253的内部结构和引脚信号
• 注意: • 8088为CPU连接,地址总线高位参与译码;低位用于 各芯片内部端口寻址。 • 若8253的端口基地址为40H • 通道0地址40H • 通道1地址41H • 通道2地址42H • 控制字寄存器端口地址43H
一、8253的内部结构和引脚信号
可以被CPU 访问
8-1 可编程计数器/定时器的工作原理
• 控制寄存器可以用来控制工作模式。 • 计数器/定时器的工作模式就是指时钟脉冲和门脉冲怎样配合来产 生输出。 • 归纳起来,计数器/定时器可以有下面几种工作模式: • (1)门脉冲控制时钟输入。当门脉冲来到时,时钟有效;门脉冲结 束时,时钟无效。 • (2)用门脉冲来重新启动计数。 • (3)用门脉冲停止计数。即原来在不停地计数,当门脉冲到来时, 计数停止,并使输出端OUT进入高电平。 • (4)单一计数。这种情况下和门脉冲没有关系,只要门脉冲端为有 效电平就行了。计数器进行计数时不断输出信号,计数到达“0” 时,输出停止。 • (5)循环计数。每当计数值到达“0”时,给出一个输出信号,然后 又从初始值寄存器获得计数初值,开始新的计数过程。
微型计算机原理与接口技术
第八章
可编程计数器/定时器8253及其应用
• 8-1 可编程计数器/定时器的工作原理 • 8-2 8253的工作原理 • 8-3 8253的应用举例
8-1 可编程计数器/定时器的工作原理
• 计算机系统中经常要用到定时信号,如动态存储器的 刷新定时、系统日历时钟的计时以及喇叭的声源等都 是用定时信号来产生的。 • 一般,定时信号可以用软件和硬件两种方法获得。 • 软件方法:根据所需的时间常数设计一个延迟子程序 优点:节省硬件;缺点:执行延迟程序期间,CPU一 直被占用,降低CPU效率。 • 硬件方法:使用计数器/定时器。主要思想根据需要定 时时间,用指令对计数器/定时器设置定时常数,启动 计数器/定时器,计到确定值时,自动产生一个定时输 出。 优点:计数时不占用CPU的时间;利用其产生中断信 号,可建立多作业环境。

第七章定时_计数器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

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

第7章可编程计数器定时器8253与其应用
2. 8253的内部结构和引脚功能
① 数据总线缓冲器
8位、双向、三态缓冲器,8253和系统数据总线之间的接口电路。
CPUDB D0 ~ D7
数据 总线 缓冲器
内 部 总 线
8253的内部结构
CPU用输入、输出指令对 8253进行读/写操作的信息,都 经数据总线从D7~D0传送,这 些信息包括:
◇ CPU在对8253进行初始化 编程时,向它写入的控制字。
8253可用作可编程方波频率产生器、分频器、程控 单脉冲发生器等许多场合。
§7.1 8253的工作原理
一.8253的结构和功能
1. 8253的引脚
采用24个引脚的双列直插式封装。 D 7
■ 通道管脚(9个)
D6 D5
8253有3个计数/定时通道。
D4 D3
◇ 通道0有3个引脚:CLK0、GATE0、OUT0
② 计数器0~2
3个独立的计数器,构成3个通道ch0~ch2。
计数执行
GATE
OUT 2MHz。否 则需经分频
CPUDB 数据 总线
计数器0
CLK 0
GATE0
计数值锁 存单元LR
后才能送到 CLK端。
D0 ~ D7 缓冲器
OUT 0
CLK——计数/定时脉冲输入端
内 部 总 线
每个通道都包含:一个8位控制 字寄存器和一个16位计数器。
每个计数器内含:一个16位计 数初值寄存器、一个计数器执行部 件(16位减法计数器)和一个16位 输出锁存器。
§7.1 8253的工作原理
一.8253的结构和功能
2. 8253的内部结构和引脚功能
计数初值 寄存器CR
【注】外部 输入CLK引 脚上的时钟

微机原理 可编程计数器定时器8253及应用共51页文档

微机原理 可编程计数器定时器8253及应用共51页文档
23、一切节省,归根到底都归结为时间的节省。——马克思 24、意志命运往往背道而驰,决心到最后会全部推倒。——莎士比亚
25、学习是劳动,是充满思想的遵守纪律的风气的培养,只有领 导者本 身在这 方面以 身作则 才能收 到成效 。—— 马卡连 柯 14、劳动者的组织性、纪律性、坚毅 精神以 及同全 世界劳 动者的 团结一 致,是 取得最 后胜利 的保证 。—— 列宁 摘自名言网
15、机会是不守纪律的。——雨果
21、要知道对好事的称颂过于夸大,也会招来人们的反感轻蔑和嫉妒。——培根 22、业精于勤,荒于嬉;行成于思,毁于随。——韩愈
微机原理 可编程计数器定时 器8253及应用
11、战争满足了,或曾经满足过人的 好斗的 本能, 但它同 时还满 足了人 对掠夺 ,破坏 以及残 酷的纪 律和专 制力的 欲望。 ——查·埃利奥 特 12、不应把纪律仅仅看成教育的手段 。纪律 是教育 过程的 结果, 首先是 学生集 体表现 在一切 生活领 域—— 生产、 日常生 活、学 校、文 化等领 域中努 力的结 果。— —马卡 连柯(名 言网)

微机原理与接口技术_第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

微机原理第七章 计数器定时器8253

三、Intel 8253
1. 芯片引腿 2. 编程结构 3. 结构组成 4. 控制寄存器格式 5. 编程命令 6. 工作模式
D7 D6 D5 D4 D3 D2 D1 D0 CLK0 OUT0
GATE0 GND
1
24
2
23
3
22
4
21
8253 5
20
6
19
7
18
8
17
9
16
10
15
11
14
12
13
D0---BCD位,用来设置装入CR计数值的格式。 0——计数值为二进制格式 1——计数值为BCD码格式
一作为计数器,在设置好计数初值后,便开 始减1计数,减到“0”时,输出一个信号;
二作为定时器,在设置好定时常数后,便进 行减1计数,并按定时常数不断地输出 为时 钟周期整数倍的定时间隔。
计数器与定时器的差别在于:计数器计 数到零时便输出一个信号并结束;而定时器 会不断地产生信号。
计数器与定时器的共同点在于: 它们的工作过程没有根本区别,都是基于
3. 结构组成
D7~D0
数据总线 缓冲器
计数器 0
CKL0 GATE0 OUT0
RD
CKL1
WR A0
读/写控制逻 辑电路
A1
内 部 总
计数器 1
GATE1 OUT1
CS
线
控制 寄存器
计数器 2
CKL2 GATE2 OUT2
8253的芯片引脚及结构组成
① 计数器0,计数器1,计数器2 ② 数据总线缓冲器
功能: 往控制寄存器设置控制字 往计数器设置初值 从计数器读取计数值 ③控制寄存器 ④读/写逻辑电路

可编程定时计数器8253的方式控制字及应用

可编程定时计数器8253的方式控制字及应用

第,期
周祥萍, 等: 可编程定时 ! 计数器 *+,- 的方式控制字及应用
・ ・ 9C
在计算机系统中使用的定时 ! 计数器归纳起来 有三大类: 软件定时 ! 计数器、 硬件定时 ! 计数器及可 编程定时 ! 计数器。软件定时 ! 计数器是实现系统定 时控制或延时控制的最简单的方法, 不需要外加硬 件电路并且定时精确, 但是 "#$ 开销大, 而且不能 响应中断, 否则定时不准确。硬件定时 ! 计数器是指 由硬件电路来实现的定时与计数, 对于较长时间的 定时一般用硬件电路来完成, 成本低, 使用方便, 缺 点是一旦元件设定就不能改变, 电路调试比较麻烦, 电阻电容长期工作, 会造成电路老化, 影响定时准确 度和稳定性。可编程定时 ! 计数器是一种软硬件结 合的定时 ! 计数器, 将定时 ! 计数器电路集成到一个 芯片上, 由 "#$ 通过程序设置其工作方式和计数初 值。 %&’() 公司的 *+,- 就是一种常用的可编程定时 ! 计数器。
$
引言
电力网的线损, 除与电源布局、 网络结构、 负荷分 布有关外, 更与运行管理有着直接关系。因此, 线损 率是衡量电力系统完善化程度和运行管理水平高低 的一项综合性技术经济指标。近年来随着管理水平 的提高和节能意识的增强, 如何利用无功补偿降低配 电线路损耗一直作为一个课题被广泛地进行研究。
!
无功功率补偿的必要性
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! (!) 确定计数初值。根据设计要求扫描键盘的 &>0 *A, !#4 动作周期为 !$ 23, 则频率为 $ . !/45。 >?% !)4, *A , 即 , &>0 *A =#4 ! 6 " 78/$ 9 " :;<$ 6 !$ 9 $ . ! 6 !$$ =#4 (-) 选择工作方式。由于系统每隔 !$ 23 完成 ! >?% !$4, *A 次动作, 则扫描键盘的动作频率为 !$$45, 可选用方 在这段程序中, 先向 +-") 的控制口 (口地址为 式 - 来实现。当 +-") 定时器工作在方式 - 时, 在写 输出方式控制字, 然后将通道 $ 的计数 初 值 !)4) 写入口地址为 的通道 入控制字与计数初值后, 定时器就启动工作, 每到 =#4 !$4 $ 计数器中。这样, 每隔 !$ 23, 即计数器减到 ! 时, 输出端 >?%$ 输出 从 !$ 23 时间, >?%$ 的输出就向 @C? 申请 ! 次中断, 一个 @AB 周期的低电平, 向 @C? 申请中断, 完成键 而实现了应用的需求。 盘扫描, 同时按原设定值重新开始计数, 实现了计数 - 结束语 值的自动重装。 根据上述要求, 可确定 +-") 定时器的控制字为 可编程定时 9 计数器 +-") 在计算机系统中, 尤 其是在工业测控系统中有着广泛的应用。在应用 , 即 。该控制字表示选择 定时器 $$$!$!$$D !#4 +-") 中, 重点是根据应用的要求, 合理选择工作方式, 计 的通道 $; 读写格式为先低字节, 后高字节; 工作方 算初值, 并编写初始化程序段。 式 -; 选用二进制计数。 ()) 程序实现。+-") 的初始化程序段如下:

第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

3.项目电路原理框图 . 利用8253对外部事件进行计数,电路原理框 图如图7-1所示。电路由8086CPU芯片、8253芯 片、按钮开关UP和发光二极管LED等组成。
图7-1 电路原理框图
4.项目程序设计 . (1)程序流程图 利用8253对外部事件进行计数程序流程图 如图7-2所示。
图7-2 用8253对外部事件进行计数程序流程图
(2)程序清单 利用8253对外部事件进行计数程序清单如下所示。 CODE SEGMENT ASSUME CS:CODE START: MOV AL, 30H ; 二进制计数,方式0,先低后高,通 0 道0 MOV DX, 203H ;8253控制地址 MOV AL, 0 OUT DX, AL OUT DX, AL ; 高八位 MOV AL, 5 ; 计数器初始值。JMP AGAIN AGAIN: MOV DX, 200H ;通道0地址 CODE ENDS OUT DX, AL ; 低八位 END START
• 图7-5 计数器的内部结构
6.2 8253的控制字和读写操作 的控制字和读写操作
6.2.1 项目 :用8253控制 项目2: 控制LED闪烁 控制 闪烁 6.2.2 知识讲解 重点: 的控制字的设置、 重点:8253的控制字的设置、 8253的 的控制字的设置 的 用。 难点: 的读写操作。 难点:8253的读写操作。 的读写操作
2.项目电路连接与说明 . (1)项目电路连接:8253的片选孔用导线接至 )项目电路连接: 的片选孔用导线接至 译码处200H~207H插孔 CLK0接至 插孔, 接至OUT1插孔上, 插孔上, 译码处 ~ 插孔 接至 插孔上 CLK1接至 接至1MHz插孔上,GATE0和GATE1接至 插孔上, 接至 插孔上 和 接至 +5V电源插孔上,OUT0接至发光二极管 电源插孔上, 接至发光二极管LED0的阴 电源插孔上 接至发光二极管 的阴 极上。 极上。 对标准脉冲信号进行计数, (2)项目说明:用8253对标准脉冲信号进行计数, )项目说明: 对标准脉冲信号进行计数 就可以实现定时功能, 的工作频率为0~2MHZ, 就可以实现定时功能,8253的工作频率为 的工作频率为 , 所以输入的CLK频率必须在 频率必须在2MHZ以下。用实验板 以下。 所以输入的 频率必须在 以下 上的1MHz做为标准信号,将8253可编程计数器 定 做为标准信号, 可编程计数器/定 上的 做为标准信号 可编程计数器 时器的时间常数设在1000000次,就可以在定时器 时器的时间常数设在 次 的管脚上输出1秒钟 由于8253每个计数器只有十 秒钟。 的管脚上输出 秒钟。由于 每个计数器只有十 六位, 六位,因此要用两个计数器才能实现一百万次的计 实现每一秒钟输出状态发生一次反转。 数,实现每一秒钟输出状态发生一次反转。

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芯片具有丰富的工作模式,可以根据不同的需求灵活地配置和应用。

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)。
第七章
可编程计数器定时器 8253及其应用
1
D0 D1 D2 D3 D4 D5 D6 D7 RD WR A0 A1 CS
8 9 7 11 6 10 5 4 15 3 14 2 13 8253 1 22 18 23 16 19 17 20 24 21 12
CLK0 GATE0 OUT0
CLK1 GATE1 OUT1 CLK2 GATE2 OUT2
24
作业:
P324 1、4
25
17
(1)8253端口地址 因8253基地址为310H,所以各通道和控制R地址分别为 310H,312H,314H,316H。 则利用译码器进行译码时,各地址线电平要求如下:
18
(2)硬件电路设计
19
(3)工作方式选择及初值计算 ① 通道0工作于方式3,时间常数为1MHz/2KHz=500。 ② 通道1工作在方式1,时间常数为480μs/1μs=480。 ③ 通道2用硬件方式触发,工作在方式5,时间常数为26。 (4)对3个通道的初始化程序 ① 通道0初始化程序: MOV DX,316H ;控制口地址 MOV AL,00110111B ;通道0控制字,先低字节, ;后高字节,方式3,BCD计数 OUT DX,AL MOV DX,310H ;通道0地址 MOV AL,00H ;先写低字节 OUT DX,AL MOV AL,05H ;后写高字节 OUT DX,AL 20
② 通道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 ③ 通道2初始化程序 MOV DX,316H MOV AL,10011011B OUT MOV MOV OUT DX,AL DX,314H AL,26H DX,AL
14
15
16
例7-2 用8253产生各种定时波形 在某个以8086为CPU的系统中使用了一块8253芯片,通道 的基地址为310H,所用的时钟脉冲频率为1MHz。要求3个 计数通道分别完成以下功能: (1) 通道0工作于方式3,输出频率为2KHz的方波; (2) 通道1产生宽度为480us的单脉冲; (3) 通道2用硬件方式触发,输出单脉冲,时间常数为 26。
22
(2)设计的电路图如下
23
(3)8253编程
*************************计数器0********************************* MOV AL,00010000B ;计数器0,方式0,只写低字节 OUT 43H,AL ;二进制计数,写入控制字 MOV AL,0AH ;计数器0置初值10 OUT 40H,AL *************************计数器1****************************** MOV AL,0111X101B ;计数器1,方式2 OUT 43H,AL ;先写入低字节,后高字节,十进制BCD计数 MOV AL,00H ;计数器1置初值2000 OUT 41H,AL ;先写低8位 MOV AL,20H OUT 41H,AL ;后写高8位 ************************计数器2********************************* MOV AL,10110001B ;计数器2,方式0 OUT 43H,AL ;先写入低字节,后高字节,十进制BCD计数 MOV AL,00H ;计数器2置初值1000 OUT 42H,AL ;先写低8位 MOV AL,10H OUT 42H,AL ;后写高8位
;控制口地址 ;通道1控制字,先低字节, ;后高字节,方式3,BCD计数 ;通道1口地址 ;先写低地址 ;后写高地址
;通道2控制字,只读写低字节, ;方式5,BCD计数 ;通道2地址 ;只写入低字节
21
例7-3 利用8253定时1s产生中断,同时对外部逻辑开关闭合 次数计数。当记满10次后,让指示灯亮,设主频f=2MHz,系 统分配给8253口地址为40H~43H。试设计接口电路,并编程。 (1)思路 ① 计数10次满,输出脉冲驱动LED亮,可用方式0,计数结 束产生中断,用计数器0; ② 定时1s 因f=2MHz,故要计数2M个脉冲时间才能实现1s的定时; 而1个计数器最多可计65536个脉冲,所以需用2个计数器串 接,一个为2000,一个为1000,将OUT1连接CLK2。 其中计数器1工作在方式2,采用分频器;计数器2工作在 方式0。
VCC
GND
2
3
4
5
6
例7-1 某微机系统的8253的3个计数器的端口地址分别为 3F0H、3F2H和3F4H,控制字寄存器的端口地址为3F6H,要 求8253的通道0工作于方式3,计数初值n=1234H。 则初始化程序为: MOV AL,00110111B ;控制字:选择通道0,先读/写低字节, ;后高字节,方式3,BCD计数 MOV DX,3F6H ;指向控制口 OUT DX,AL ;送控制字 MOV AL,34H ;计数值低字节 MOV DX,3F0H ;指向计数器0端口 OUT DX,AL ;先写入低字节 MOV AL,12H ;计数值高字节 OUT DX,AL ;后写入高字节
7
方式0——计数结束中断方式8方式1——可编Fra bibliotek单稳态输出方式
9
方式2——比率发生器
10
方式3——方波发生器
11
方式4——软件触发选通
12
方式5 — 硬件触发选通
13
在计数的过程中读取数据
如要读通道1的计数值,8253端口地址F8H~FBH。 编程如下: MOV AL,0100 0000B; OUT 0FBH,AL ;锁存计数值 IN AL,0F9H MOV CL,AL ;低八位,与初始化设定有关 IN AL,0F9H MOV CH,AL ;高八位
相关文档
最新文档