我是靠谱客的博主 活力橘子,最近开发中收集的这篇文章主要介绍8254 定时/计数器应用实验一、实验目的二、实验内容与要求三、实验步骤四、电路连接五、代码设计六、实验现象,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、实验目的

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

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

二、实验内容与要求

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

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

三、实验步骤

1. 计数应用实验

将8254的计数器0设置为方式3,计数值为十进制数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

 

 

 

最后

以上就是活力橘子为你收集整理的8254 定时/计数器应用实验一、实验目的二、实验内容与要求三、实验步骤四、电路连接五、代码设计六、实验现象的全部内容,希望文章能够帮你解决8254 定时/计数器应用实验一、实验目的二、实验内容与要求三、实验步骤四、电路连接五、代码设计六、实验现象所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部