首页 > 分享 > 8254 定时/计数器应用实验

8254 定时/计数器应用实验

一、实验目的

1.掌握 8254 的工作方式及应用编程。

2.掌握 8254 典型应用电路的接法。

二、实验内容与要求

1、计数应用实验,编写程序,应用8254的计数功能,使用单次脉冲模拟计数,使每当按动‘KK+’5次后,产生依次计数中断,并在屏幕上显示一个字符‘M’.

2.定时应用实验。编写程序,应用8254的定时功能,产生一个ls的方法,并且本装置的示波器功能来观察。

三、实验步骤

1. 计数应用实验

将8254的计数器0设置为方式0,计数值为十进制数4,用单次脉冲KK1+作为CLK0时钟,OUT0连接MIR7,每当KK1+按动5次后产生中断请求,在屏幕上显示字符“M”。

4532e7d8a6874309b383eecdee96977e.png

图4.5.3  8254计数应用实验接线图

实验步骤:

(1)实验接线如图4.5.3所示(由于8254单元中GATE0信号已经上拉+5V,所以GATE0不用接线)。

(2)编写实验程序,经编译、链接无误后装入系统。

419ecfca07fe4c08b6ca723f6d3839af.png

(3)单击run按钮,运行实验程序,每连续按动5次KK1+,在界面的输出区会显示字符“M”(改成K),观察实验现象。

(4)改变计数值,验证8254的计数功能。

2. 定时应用实验

将8254的计数器0和计数器1都设置为方式3,用信号源1MHz作为CLK0时钟,OUT0为波形输出1ms方波,再通过CLK1输入,OUT1输出1s方波。

44e7c6528a734c9f8d89ab1c325ca4e4.png

图4.5.5  8254定时应用实验按线图

实验步骤:

(1)接线图如图4.5.5所示。

(2)根据实验内容,编写实验程序(例程文件名为:A82542.ASM),经编译、链接无误后装入系统。

467c95e756e64ea1b7e10c8965ca8aaf.png

(3)单击run按钮,运行实验程序,8254的OUT1会输出1s的方波,可用软件自带的示波器功能进行观察。

 (4)用示波器观察波形的方法:单击虚拟仪器菜单中的“示波器”按钮或直接单击工具栏的2f346cb71bc3450b9c0863f12bc86466.png 按钮,在新弹出的示波器界面上单击46d4afc6ef624aad9418e2a7b3c6543f.png 按钮运行示波器,就可以观测出OUT1输出的波形。

四、电路连接

1. 计数应用实验

6f268d9134f84e239082198ad4cef4fc.jpeg

2. 定时应用实验

536b3aee42c54edfa8dfc3870685996b.jpeg

五、代码设计

1.中断入口地址

MOV AX, 0000H

        MOV DS, AX

        MOV AX, OFFSET IRQ7         ;取中断入口地址

        MOV SI, 003CH               ;中断矢量地址

        MOV [SI], AX                ;填IRQ7的偏移矢量

        MOV AX, CS                  ;段地址

        MOV SI, 003EH

        MOV [SI], AX                ;填IRQ7的段地址矢量

        CLI

        POP DS

子程序入口是中断类型号*4,从下图可以看出,IR7的中断类型号是F(0F),0F×4=003C,003E=0F×4+2

3e23c4d7c19949858aa9cdc50267e6b7.png

2.8254的初始化

MOV DX, CON8254         ;8254

        MOV AL, 36H             ;计数器0,方式3

        OUT DX, AL

36H=00 11 011 0:计数器0,先读写低8位,再读写高8位,方式3,二进制

8e4bbe22dd3f483399971df426073e22.png

3.8254计数器0的计数初值的计算

MOV DX, A8254

        MOV AL, 0E8H

        OUT DX, AL

        MOV AL, 03H

        OUT DX, AL

设计数初值为n,CLK频率为fc,方波频率为f则n=fc/f

因为本实验中CLK0频率为1MHz,波形输出1ms方波,即1000Hz.所以计数初值n=1000000/1000=1000,转换为十六进制为03E8H.

4.关于显示字符

MOV AX, 014BH

INT 10H ;显示字符K

这里AH=01,AL=4BH=75=‘K’,会显示AL对应的字符。

六、实验现象

1. 计数应用实验

5646536b5c0c469c978c7519704f5e6b.png

修改代码,变成K。

22351118eb97494b879d4021407415d8.png

2. 定时应用实验

f5993d7a36df44fcbaef2acff1b376fb.png

3800b7f485e342078cd03b1b6eec30f7.png

附录 代码

1.计数应用实验

;=========================================================

; 文件名: A82541.ASM

; 功能描述: 通过对计数器0进行计数,计数初值为4,

; 当计数满后,产生正跳变触发中断,中断

; 程序显示M(每按5次输出一个M)

;=========================================================

IOY0 EQU 0600H ;IOY0起始地址

A8254 EQU IOY0+00H*2

B8254 EQU IOY0+01H*2

C8254 EQU IOY0+02H*2

CON8254 EQU IOY0+03H*2

SSTACK SEGMENT STACK

DW 32 DUP(?)

SSTACK ENDS

CODE SEGMENT

ASSUME CS:CODE, SS:SSTACK

START: PUSH DS

MOV AX, 0000H

MOV DS, AX

MOV AX, OFFSET IRQ7 ;取中断入口地址

MOV SI, 003CH ;中断矢量地址

MOV [SI], AX ;填IRQ7的偏移矢量

MOV AX, CS ;段地址

MOV SI, 003EH

MOV [SI], AX ;填IRQ7的段地址矢量

CLI

POP DS

;初始化主片8259

MOV AL, 11H

OUT 20H, AL ;ICW1

MOV AL, 08H

OUT 21H, AL ;ICW2

MOV AL, 04H

OUT 21H, AL ;ICW3

MOV AL, 01H

OUT 21H, AL ;ICW4

MOV AL, 6FH ;OCW1

OUT 21H, AL

;8254

MOV DX, CON8254

MOV AL, 10H ;计数器0,方式0

OUT DX, AL

MOV DX, A8254

MOV AL, 04H

OUT DX, AL

STI

AA1: JMP AA1

IRQ7: MOV DX, A8254

MOV AL, 04H

OUT DX, AL

MOV AX, 014DH

INT 10H ;显示字符M

MOV AX, 0120H

INT 10H

MOV AL, 20H

OUT 20H, AL ;中断结束命令

IRET

CODE ENDS

END START

2. 定时应用实验

;=========================================================

; 文件名: A82542.ASM

; 功能描述: 产生1s方波,输入时钟为1MHz,使用计数器0和1

; 计数初值均为03E8H

;=========================================================

IOY0 EQU 0600H ;IOY0起始地址

A8254 EQU IOY0+00H*2

B8254 EQU IOY0+01H*2

C8254 EQU IOY0+02H*2

CON8254 EQU IOY0+03H*2

SSTACK SEGMENT STACK

DW 32 DUP(?)

SSTACK ENDS

CODE SEGMENT

ASSUME CS:CODE

START: MOV DX, CON8254 ;8254

MOV AL, 36H ;计数器0,方式3

OUT DX, AL

MOV DX, A8254

MOV AL, 0E8H

OUT DX, AL

MOV AL, 03H

OUT DX, AL

MOV DX, CON8254 ;8254

MOV AL, 76H ;计数器1,方式3

OUT DX, AL

MOV DX, B8254

MOV AL, 0E8H

OUT DX, AL

MOV AL, 03H

OUT DX, AL

AA1: JMP AA1

CODE ENDS

END START

相关知识

基于单片机的盆花定时浇水系统软件设计
一种智能化成蚊密度监测设备的制作方法
第七讲:5.物联网开关——自动化控制任务光照控制台灯实验例程
OK
“花草保姆”——电子定时浇水器
光强一定时饱和光电流随入射光频率的变化关系辨析
实验二 秋播花识别与应用实验.doc
青岛四方实验小区花店
自动浇水系统设计说明
彩灯控制电路设计

网址: 8254 定时/计数器应用实验 https://m.huajiangbk.com/newsview893361.html

所属分类:花卉
上一篇: 基于 Verilog 的经典数字
下一篇: 使用74LS161设计任意进制计