8253的基本工作原理和编程方法

合集下载

8253中文资料

8253中文资料

8253的工作原理

8253是可编程的计数器/定时器,其内部有三个独立的16位计数器/定时器通道,每个计数器通道均可按6种不同的方式工作,并且都可以按二进制或十进制计数。其CLK0~CLK2是计数器0~2的时钟脉冲输入端, GATE0~GATE2是门控脉冲输入端, OUT0~OUT2是输出端及内部结构见下图。

当用8253做外部事件计数器时,在CLK端所加的计数脉冲由外部事件产生,这些脉冲的间隔可以不相等。如果要用它做定时器,则CLK端应输入精确的时钟脉冲。这时, 8253所能实现的定时时间决定于计数脉冲的频率和计数器的初值,即定时时间=时钟脉冲周期t c ×预置的计数初值

n8253的控制逻辑由5个控制信号WR、CS、A1和A0组成,对应的操作见表1。

8253编程时,要对其控制字寄存器写入相应的控制字,控制字寄存器格式如表2所示。

其中: SC1, SC0———通道选择位。为00, 01, 10分别表示选择0, 1, 2通道。RL1, RL0———读/写操作位。00 表示锁存数据,可随时读取计数器中的计数值; 01 表示只读/写低8位,高8位自动置为0; 10表示只读/写高8位,低8位自动置为0; 11表示读/写16位数据,先低8位,后高8位。M2,M1,M0———工作方式选择位。8253 具有3 个独立的16 位减法计数器,6 种不同的工作方式。方式0 :又称计数结束产生中断工作方式。当程序将工作方式控制字写入控制字寄存器时,计数器的输出端OUT 立即变为低电平。在计数初值写入该计数器后,输出仍将保持为低电平。当门控信号GATE 为高电平时,计数器对输入端CLK的输入脉冲开始作减一计数,当计数器从初值减为0 时,输出端OUT由低电平变为高电平,该输出信号可作为向CPU 发出的中断请求信号。

第八章 8253定时计数器(例程)

第八章 8253定时计数器(例程)
与此同时,重新将时常数从CR读入CE,并继续计数.这样就 产生周期的分频信号。
GATE=1时方式2的计数过程
当时常数为N时,则OUT产生的信号为计数时钟的N分频, 高电平为(N-1)个计数时钟周期,低电平为1个计数时 钟周期。
GATE信号的作用效果
当GATE为低电平时,计数器暂停计数,GATE端的上升 沿使计数器重新读入时常数。
几个基本概念
CLK脉冲:是指CLK信号从上升沿到下降沿的时间
计数器:与计数通道的含义一致
时常数:是指通过指令写入到计数器的值,可以理解成计 数器的初值
最大时常数: 由于8253是减法计数,因此这两种计数的最 大初始值为0000.对于二进制减法计数,0000H实 际表示10000H(65536),而BCD码计数的0000表
11
先读写CR或OL的低8位,再读写高8位
8253的控制字
方式控制字的D3D位2D用1 于设定计数通道的工作方式:
M2M1M0
含义
000
方式0
001
方式1
×1 0
方式2
×1 1
方式3
100
方式4
101
方式5
方式控制字的最低位D0(即BCD位)用于指定读写数据的格 式,当BCD=0时,表示读写数据为二进制数,当BCD=1时 ,表示读写数据为两位十进制数。
第9章 定时/计数器8253应用设计

8253的基本工作原理和编程方法

8253的基本工作原理和编程方法

微机原理与接口技术实验报告

实验名称:8253的基本工作原理和编程方法

姓名:

学号:

专业班级:

指导老师:

实验日期:

一:实验目的

掌握8253的基本工作原理和编程方法。

二:实验内容

按下图虚线连接电路,将计数器0设置为方式0,计数器初值为N(N≤0FH),用手动逐个输入单脉冲,编程使计数值在屏幕上显示,并同时用逻辑笔观察OUT0电平变化(当输入N+1个脉冲后OUT0变高电平)。

三:硬件电路

四:源程序

汇编程序

ioport equ 0d400h-0280h

io8253a equ ioport+283h

io8253b equ ioport+280h

code segment

assume cs:code

start: mov al,14h ;设置8253通道0为工作方式2,二进制计数mov dx,io8253a

out dx,al

mov dx,io8253b ;送计数初值为0FH

mov al,0fh

out dx,al

lll: in al,dx ;读计数初值

call disp ;调显示子程序

push dx

mov ah,06h

mov dl,0ffh

int 21h

pop dx

jz lll

mov ah,4ch ;退出

int 21h

disp proc near ;显示子程序

push dx

and al,0fh ;首先取低四位

mov dl,al

cmp dl,9 ;判断是否<=9

jle num ;若是则为'0'-'9',ASCII码加30H

add dl,7 ;否则为'A'-'F',ASCII码加37H

num: add dl,30h

微机原理与接口技术82558253初始化编程原

微机原理与接口技术82558253初始化编程原

微机原理与接口技术8255 8253初

始化编程原

微机原理与接口技术--8255|8253初始化编程原理解析

000

微机原理与接口技术研究方向:指令数据在计算机中是如何传输的;

(1)控制总线

(2)地址总线

(3)数据总线

在计算机中要研究数据是如何传输的,就是知道计算机是如何寻址的(地址译码)、CPU与外设是如何进行数据交互的、CPU中的控制器是如何控制外设进行数据传输的;

一、8253芯片

74LS138芯片的工作原理:当一个选通端(G1)为高电平,另外选通端G2A、G2B为低电平时,可将地址端(A、B、C)的二进制编码在一个对应的输出端一低电平译出;

(1)8253与8086CPU的连接方式

注意:

z如果8253与8位数据总线的微机相连,只要将A1A0分别与地址总线的最

低两位A1A0相连即可。

z如果系统采用的是8086CPU,则数据总线为16位。CPU在传送数据

时,总是将低8位数据送往偶地址端口,将高8位数据送到奇地址端口。

偶地址端口的数据总是通过低8位数据总线送到CPU,奇地址端口的数据

总是通过高8位数据总线送到CPU。

当仅具有8位数据总线的存储器或I/O接口芯片与8086的16位数据总线相

连时,既可以连到高8位数据总线,也可以接在低8位数据总线上。

在实际设计系统时,常将这些芯片的数据线D7~D0接到系统数据总线的低

8位,这样,CPU就要求芯片内部的各个端口为偶地址(地址总线的A0=

0)。应改用地址总线中的A2A1实现端口选择,即将A2连到8253的A1引

脚,而将A1与8253的A0引脚相连。(如上如所示)

实验二 定时计数器8253工作方式

实验二 定时计数器8253工作方式

实验二定时/计数器8253工作方式

一、实验目的

1.熟悉8253在系统中的典型接法

2.掌握8253的工作方式及应用编程

二、实验设备

Dais-8086H 教学实验系统1台仿真示波器1台

三、实验内容及步骤

8253是一种可编程定时/计数器,有3个16位计数器,其计数频率范围为0~2MHz,用+5V单电源供电。

●8253的功能用途:

⑴延时中断⑵可编程频率发生器⑶事件计数器⑷二进制倍频器

⑸实时时钟⑹数字单稳⑺复杂的电机控制器

●8253的6种工作方式:

⑴方式0:计数结束中断⑵方式1:可编程频率发生

⑶方式2:频率发生器⑷方式3:方波频率发生器

⑸方式4:软件触发的选通信号⑹方式5:硬件触发的选通信号

本实验设8253的0通道工作在方式3,产生方波。

四、程序流程

四、实验电路

五、实验步骤

(1)按实验电路图连接线路:

①8253的GATE0接+5V。

②8253的CLK0插孔接分频器74LS393的T2插孔,分频器的频率源为:4.9152MHZ。

③按照实验一中3.3的实验步骤②要求连接138译码电路,8253的CS孔与138译码器的Y0孔相连。

④用8芯排线或8芯扁平线把D0~D7总线接口(部分机型位于8251右侧)与数据总线单元D0~D7任一接口相连。

(2)运行实验程序

在系统处于命令提示符“P.”状态下,输入3490,按EXEC键。或从PC机发运行命令。

(3)用示波器测量8253的OUT0输出插孔有方波产生,仿真示波器查看CH1波形。

(4)按复位键RESET 返回“P.”

六、实验程序

CODE SEGMENT

ASSUME CS:CODE,DS:CODE,ES:CODE ORG 3490H

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

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

8253方式2

注意: (1)任何时候重新写入新的计数初值,当原计数值减为0时 ,才按新写入的计数值进行计数;(2)计数过程中,当 GATE再产生上升沿时,在下一个时钟脉冲下降沿,重新将 计数初值装入实际计数器,开始减1计数。
8253方式3
4、方式3——方波发生器
时序图
计数初值为偶数时的波形
CW=16H
两种功能:计数、定时
计数器0# D0~D7
VCC
控制寄存器 CRH CRL 计数器寄存器(CR)
CEH CEL 计数单元(CE)
RD WR
OLH 计数器 地址 CS 译码 A1 A0
GND GATE0 CLK0
OUT0 GATE 1 CLK1 OUT1 GATE2 CLK2 OUT2
OL 输出锁存器(OL) 1#
教材第八章内容
第八章 可编程计数器/定时器8253及应用
8-1 8253工作原理
一、8253的内部结构与引脚信号
二、8253的初始化编程 三、8253的工作方式 四、8253与系统的连接
8-2 8253的应用举例
一、8253定时功能举例
二、8253计数功能举例
8-1 8253工作原理
计算机中,经常用到定时功能,如:动态RAM
OUT
CRCE
CRCE 3 2
1wk.baidu.com

8253 原理

8253 原理

(2)在计数器工作期间,若写入新的计数值,而GATE 一直维持高电平,计数器仍按原计数值计数,直到计数 器回零并在输出一个时钟周期的低电平后,才按新计数 值计数。
CLK
WR
GATE
OUT 3 2
N=3
N=2

1 0 2 1 0 2 1
CLK WR
GATE
OUT 4 3 2 1 0 2 1
N=4
N=2
1
0
计数结束后,再受GATE触发,OUT 端继续输出相应宽度的负脉冲
(3)在计数期间对计数器又写入新的计数值,要等到当前的 计数值计满回0且门控GATE信号再次出现上升沿后,才按新 的计数值开始计数。
CLK WR
GATE
N=3
N=2
OUT
3
2
1
0
2
1
方式1计数期间对计数器又写入新的计数值
三、方式2——频率发生器(能自动装入计数初值)
CLK
WR
GATE
OUT
CW
N=3

3 2 1 0 (3) 2 1 0
特点: (1)计数器计数期间,输出OUT为高电平,当减1计数器 控制字写入后,输出端OUT以 为1时(注意不是减到0),输出端OUT变为低电平,当减到 高电平作为初始状态。 0时,OUT端又变为高电平并自动重新装入原计数初值,从 而开始一个新的计数过程。

8253使用详解

8253使用详解

第二章 可编程定时/计数器8253

1引言

1定时/计数用处

机内日历,时钟,喇叭,发声(30HZ~20KHZ ) 定时中断

秒计数器产生周T =18.2ms 的方波 1秒=1000/18.2=55个

2产生方法 ⎪⎪⎩

⎪⎪⎨⎧利用率高优点:发出中断信号并行工作,时间到,向定时芯片与硬件:计数

他任务,效率低在延时期间不能执行其(不实用)缺点

:达

到延时软件:软件执行指令,C P U C P U C P U C P U /

3 8253作用:8253是一个可编程接口芯片

①有三个独立16位定时/计数器,可对3个独立事件定时/计数 ②每个通道有6种工作方式 ③可按2#

或10#

方式定时/计数 4 定时/计数 控制定时时间 ①定时

②计数 数脉冲个数

2 8253工作原理

一 内部结构 P244

1通道0~通道2 (定时/计数0~定时/计数2)

16位初始值计数器放计数初始值,减法计数器对外界输入脉冲减1操作,减到0时,使OUT 输出电平变化

计数锁存器用来锁存计数值,看中间结果

①计数 从CLK i 输入频率未知的脉冲,在计数锁存器中得到一定时间内脉冲个数

②定时 从CLK i 输入频率已知的脉冲,然后根据定时时间算出计数初始值,并放入初始计数器中,当减到0时,OUT i 电平变化

如定时1s 初始值=

1kHz

11000ms

=1000 1ms ×1001=1.001s 2 8253的引脚 24角IC

①与CPU 连 D 0~D 7 数据线(双向)

②与外设连CLK

2~CLK

——计数脉冲输入

OUT

2~OUT

——时间到,输出电平变化

8253可编程计数器定时器

8253可编程计数器定时器

8253的工作原理简介

8253可编程计数器/定时器的工作频率为0~2MHz,它有3个独立编程的计数器,每个计数器有三个引脚,分别为时钟CLK、门控GATE、计数器和计时结束输出OUT;每个计数器分别有6种工作方式。下面针对使用到的两种工作方式——方式1和方式2的工作原理[1]进行简述。

方式1:可编程单稳,即由外部硬件产生的门控信号GATE触发8253而输出单稳脉冲。计数器装入计数初值后,在门控信号GATE由低电平变高电平并保持时,计数器开始计数,此时输出端变成低电平并开始单稳过程。当计数结束时,输出端OUT转变成高电平,单稳过程结束,在OUT端输出一个单稳脉冲。硬件再次触发,OUT端可再次输出一个同样的单稳脉冲。单稳脉冲的宽度由装入计数器的计数初值决定。在WR信号的上升沿(CPU写控制字之后),输出端OUT保持高电平(若OUT原为低电平则变为高电平)。CPU写入计数值后,计数器并不马上开始计数,而要等到门控信号GATE启动之后的下一个CLK的下降沿才开始。在整个计数过程中,输出端OUT保持低电平,直至计数值至0,OUT变为高电平为止。

方式2:速率发生器,其功能如同一个N分频计数器。其输出是将输入时钟按照N计数值分频后得到的一个连续脉冲。在该方式下,当计数器装入初始值开始工作后,输出端OUT 将不断地输出负脉冲,其宽度为一个时钟周期的时间,而两个负脉冲间的时间脉冲个数等于计数器装入的计数初值。若计数初值为N,则每N个输入脉冲输出一个脉冲。当CPU写完控制字后,输出端OUT转变成高电平,计数器将立即自动开始对输入CLK时钟计数。在计数过程中,OUT端始终保持高电平,直至计数器的计数值减到1时,OUT端才变为低电平,其保持的宽度为一个输入CLK时钟周期的时间,然后输出端OUT恢复高电平,计数器重新开始计数。

8253的内部结构和工作方式

8253的内部结构和工作方式

8253的内部结构和工作方式

8253具有3个独立的计数通道,采用减1计数方式。在门控信号有效时,每输入1个计数脉冲,通道作1次计数操作。当计数脉冲是已知周期的时钟信号时,计数就成为定时。

一、8253内部结构

8253芯片有24条引脚,封装在双列直插式陶瓷管壳内。

1.数据总线缓冲器

数据总线缓冲器与系统总线连接,8位双向,与CPU交换信息的通道。这是8253与CPU之间的数据接口,它由8位双向三态缓冲存储器构成,是CPU与8253之间交换信息的必经之路。

2.读/写控制

读/写控制分别连接系统的IOR#和IOW#,由CPU控制着访问8253的内部通道。接收CPU送入的读/写控制信号,并完成对芯片内部各功能部件的控制功能,因此,它实际上是8253芯片内部的控制器。A1A0:端口选择信号,由CPU输入。8253内部有3个独立的通道和一个控制字寄存器,它们构成8253芯片的4个端口,CPU可对3个通道进行读/写操作3对控制字寄存器进行写操作。这4个端口地址由最低2位地址码A1A0来选择。如表9.3.1所示。

3.通道选择

(1) CS#——片选信号,由CPU输入,低电平有效,通常由端口地址的高位地址译码形成。

(2) RD#、WR#——读/写控制命令,由CPU输入,低电平有效。RD#效时,CPU读取由A1A0所选定的通道内计数器的内容。WR#有效时,CPU将计数值写入各个通道的计数器中,或者是将方式控制字写入控制字寄存器中。CPU对8253的读/写操作如表9.3.2所示。

4.计数通道0~2

每个计数通道内含1个16位的初值寄存器、减1计数器和1个16位的(输出)锁存器。8253内部包含3个功能完全相同的通道,每个通道内部设有一个16位计数器,可进行二进制或十进制(BCD码)计数。采用二进制计数时,最大计数值是FFFFH,采用BCD码计数时。最大计数值是9999。与此计数器相对应,每个通道内设有一个16位计数值锁存器。必要时可用来锁存计数值。

理工大学《微机原理与应用第8章 8253及其应用》课件

理工大学《微机原理与应用第8章 8253及其应用》课件
第八章 可编程计数器/定时器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,,,

8253计数器

8253计数器
▪ CLK0:307.2kHz ▪ cs: 200H ▪ 地址:控制字寄存器:203H
定时器0:200H 定时器1:201H 定时器2:202H
8253计数器/定时器
8253内部包含3个完全相同的计数器/定时器通道的 操作完全是独立的每个通道都包含一个8位的控制字 寄存器、一个16位的计数初值寄存器、一个计数执 行部件(实际的计数器)和一个输出锁存器。
8253的3个计数器都各有3个引脚: (1)CLK0—CLK2计数器0—2的输入时钟脉冲端 (2)OUT0—OUT2计数器0—2的输出端 (3)GATE0—GATE2计数器0—2的门控脉冲输入端
8253的工作方式
▪ 方式0:计数结束中断方式 ▪ 方式1:可编程单稳态输出方式 ▪ 方式2:比率发生器 ▪ 方式3:方波发生 ▪ 方式4:软件触发选通 ▪ 方式5:硬wk.baidu.com触发选通
实验要求
▪ 编程将8253的定时器0设置为方式3,定时器1设 置为方式3,定时器0输出的脉冲作为定时器1的 时钟输入。定时器2设置为方式3,定时器1的输 出作为定时器2的输入。
门控信号控制功能
工作方式 GATE为低电平或下降沿 GATE为上升沿
GATE为高电 平
方式0
禁止计数
允许计数
方式1
从初值开始计数,下 一个时钟后输出变为 低电平
方式2 禁止计数,使输出变高 从初值开始计数

8253的工作方式解读

8253的工作方式解读

8253的工作方式

1.方式0 计数结束产生中断

8253用作计数器时一般工作在方式0。所谓计数结束产生中断,是指在计数值减到0时,输出端(OUT)产生的输出信号可作为中断申请信号,要求CPU进行相应的处理。方式0有如下特点:

① 当控制字写进控制字寄存器确定了方式0时,计数器的输出(OUT端口)保持低电平,一直保持到计数值减到0。

② 计数初值装入计数器之后,在门控GATE信号为高电平时计数器开始减1计数。当计数器减到0时输出端OUT才由低变高,此高电平输出一直保持到该计数器装入新的计数值或再次写入方式0控制字为止。若要使用中断,可以计数到0的输出信号向CPU发出中断请求,申请中断。

③ GATE为计数控制门,方式0的计数过程可由GATE控制暂停,即GATE=1时,允许计数;GATE=0时,停止计数。GATE 信号的变化不影响输出OUT端口的状态。

④ 计数过程中,可重新装入计数初值。如果在计数过程中,重新写入某一计数初值,则在写完新计数值后,计数器将从该值重新开始作减1计数。

2.方式1 可编程的单拍负脉冲

可编程的单拍负脉冲又称为单稳态输出方式,简称单稳定时。方式1的特点是:

① CPU写入控制字后,计数器输出OUT端为高电平作为起始电平,在写入计数值后计数器并不开始计数(不管此时GATE 是高电平还是低电平),而要由外部门控GATE脉冲上升沿启动,并在上升沿之后的下一个CLK输入脉冲的下降沿开始计数。

② GATE上升沿启动计数的同时,使输出OUT变低,每来一个计数脉冲,计数器作减一计数,直到计数减为 0时,OUT 输出端再变为高电平。OUT端输出的单拍负脉冲的宽度为计数初值乘以CLK端脉冲周期。设计数初值为N,则单拍脉冲宽度为N个CLK时钟脉冲周期。

实验三 8253计数器原理及分频实验

实验三 8253计数器原理及分频实验
写入N后,输出
3
方波速率发生器
{(N+1)/2个CLK高电平,(N-1)/2N个CLK低电平(N为奇数)
1/2N个CLK高电平,1/2N个CLK低电平(N为偶数)
4 5
软件触发选通 硬件触发选通
写入 N 后,过 N+1 个 CLK,输出一个宽度为 1 个 CLK 的脉冲 门控触发后,过 N+1 个 CLK,输出一个宽度为 1 个 CLK 的脉冲
03H 00H
D2位 位
方式2 方式
计数开
1 0 1 1
CLK
方式0 方式
计数开
0 1 1 fx 0
0 1 0 1 0
方式2 方式
计数开
往地址0x03写入 写入0xFF,开闸门,启动计数器 计数,并将 x接入. 计数, 往地址 写入 ,开闸门,启动计数器0计数 并将f 接入.
计数器1计数结束,则计数器 已经循环了 已经循环了N次 计数器 计数结束,则计数器0已经循环了 次 计数结束
▼ 8253的端口控制子
D7 D6 D5 D4 D3 D2 D1 D0
00 01 10 11
选择计数器0 选择计数器1 选择计数器2 非法选择
00 计数器锁存命令 01 只读/写最高有效字节 (高8位) 10 只读/写最低有效字节 (低8位) 11 先写最低有效字节 再写最高有效字节

实验五--8253方波实验

实验五--8253方波实验

.STACK 100

.CODE

START: MOV DX,COM_ADDR

MOV AL,35H

OUT DX,AL ;计数器T0设置在模式2状态,BCD码计数

MOV DX,T0_ADDR

MOV AL,00H

OUT DX,AL

MOV AL,10H

OUT DX,AL ;CLK0/1000

MOV DX,COM_ADDR

MOV AL,77H

OUT DX,AL ;计数器T1为模式3状态,输出方波,BCD码计数

MOV DX,T1_ADDR

MOV AL,00H

OUT DX,AL

MOV AL,10H

OUT DX,AL ;CLK1/1000

JMP $ ;OUT1输出1S的方波

END START

六、实验结果

蜂鸣器间歇性蜂鸣,逻辑测试笔红绿灯交替亮灭。

七、实验总结

通过这次实验,我了解了8253的功能,即作为计时器可以输出各种不同的波形,实现

对电路的控制;了解了8253与8088的接口端,特别是片选端口及其对地址的选择;熟悉了8253的控制寄存器和初始化编程方法,熟悉了8253的6种工作模式,该实验中用的是模式

2和模式3,分别作为频率发生器和方波方波发生器。

8253、8254的基本知识

8253、8254的基本知识

PC机系统板上的8253
IOR IOW 74LS138 A1 A0 D0 ~ D7 + 5V 8255 PB0 0 RD 0 WR 0 CS A1 A0 OUT0 8259A的IR0,系统计时 每隔55ms产生一次中断。 OUT1 8237的DRQ0,作DMA请求
D0 ~ D7 GATE0 GATE1 GATE2 OUT2 CLK0 CLK1 CLK2
WR GATE = 1 OUT N=4 写入计数值 开始计数
(4) 4 3 2 1 0 3 2 1
周期等于计数值 N
1个CLK
自动连续循环计数不用触发 计数值多次有效
方式3: 方式 :方波发生器
方式3与方式2相似 OUT输出是一个占空比为1:1的方波 若计数为奇数,则前面的1比后面的0多1个脉冲
计数器 0
计数初值寄存器 高8 低8 执行部件 D0 D7 输出锁存寄存器 ~ RD WR A0 A1 CS
O O 读/写
控制逻辑 O 控制 寄存器
计数器 1
CLK1 GATE1 OUT1
计数器 2
CLK2 GATE2 OUT2
8253的编程
写 8253的控制字,写入控制寄存器(A1,A0 = 11) 写入计数值,写到相应的计数器。 8253控制寄存器格式
WR N=4 GATE = 1 初始低电平 OUT 写入计数值 开始计数 4 3 2 1 计数到0产生高电平 0 计数值一次有效
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

微机原理与接口技术实验报告

实验名称:8253的基本工作原理和编程方法

姓名:

学号:

专业班级:

指导老师:

实验日期:

一:实验目的

掌握8253的基本工作原理和编程方法。

二:实验内容

按下图虚线连接电路,将计数器0设置为方式0,计数器初值为N(N≤0FH),用手动逐个输入单脉冲,编程使计数值在屏幕上显示,并同时用逻辑笔观察OUT0电平变化(当输入N+1个脉冲后OUT0变高电平)。

三:硬件电路

四:源程序

汇编程序

ioport equ 0d400h-0280h

io8253a equ ioport+283h

io8253b equ ioport+280h

code segment

assume cs:code

start: mov al,14h ;设置8253通道0为工作方式2,二进制计数mov dx,io8253a

out dx,al

mov dx,io8253b ;送计数初值为0FH

mov al,0fh

out dx,al

lll: in al,dx ;读计数初值

call disp ;调显示子程序

push dx

mov ah,06h

mov dl,0ffh

int 21h

pop dx

jz lll

mov ah,4ch ;退出

int 21h

disp proc near ;显示子程序

push dx

and al,0fh ;首先取低四位

mov dl,al

cmp dl,9 ;判断是否<=9

jle num ;若是则为'0'-'9',ASCII码加30H

add dl,7 ;否则为'A'-'F',ASCII码加37H

num: add dl,30h

mov ah,02h ;显示

int 21h

mov dl,0dh ;加回车符

int 21h

mov dl,0ah ;加换行符

int 21h

pop dx

ret ;子程序返回

disp endp

code ends

end start

五:实验难点与重点

8253的工作方式有六种,如何理解和运用这六种工作方式是个难点。8253具有3个独立的计数器,每个计数器必须单独编程进行初始化后才能使用,使用时有时会忘记初始化。

程序流程图:

六:实验感想

由于8253的读/写操作对系统时钟没有特殊的要求,因此它几乎可以应用于任何一种微处理器系统中,可作为可编程的方波频率发生器、分频器、实时时钟、事件计数器或单脉冲发生器等。在电路的设计中,因为实验箱上提供的脉冲频率太高,不利于观察定时器的输出波形,因此选用8253的定时器1作为分频器,其输出作为脉冲时钟供定时器0选用。在实验中,首先是电路的连接比较简单,考虑到8253有3个16位的计数器,当其中一个不能用时,可以用另一个代替,程序设计中允许选择计数器,所以在电路的连接上,可以用的两个计数器都连接好了。除了方式2和方式3外都用了查询方式。

计数器的6种工作方式验证都做完了,从中更深刻地认识8253定时计数器的结构和计数原理。对于这6种不同的工作方式,可以满足各种软件和硬件定时计数的要求。

相关文档
最新文档