当前位置:网站首页>实验5 8254定时/计数器应用实验【微机原理】【实验】
实验5 8254定时/计数器应用实验【微机原理】【实验】
2022-06-24 20:55:00 【日星月云】
实验5 8254定时/计数器应用实验【微机原理】【实验】
前言
以下内容源自微机原理实验指导书
仅供学习交流使用
请您阅读文章声明,默认同意该声明
3.1 8254定时/计数器应用实验
3.1.1实验目的
1、掌报8254的工作方式及应用编程;
2、掌据8254的典型应用电路接法;
3、学习8254在PC系统中的典型应用方法。
3.1.2实验内容
1、通讨定验简担很的单次脉冲单元,按动微动开关向计数器依次发出单脉冲,观察每来一个脉冲时计新当前计数值的变化情况。
2、定时应用定验。编写程序,应用8254的定时功能,产生一个1s的方波,并用本装置的示波器功能观察。
3.1.3实验原理
8254是Intel公司生产的可编程间隔定时器。是8253的改进型,比8253具有更优良的性能。
8254具有以下基本功能:
(1)有3个独立的16位计数器;
(2)每个计数器可按二进制或十进制(BCD)计数;
(3)每个计数器可编程工作于6种不同工作方式;
(4)8254每个计数器允许的最高计数频率为10MHz(8253为2MHz);
(5)8254有读回命令(8253没有),除了可以读出当前计数单元的内容外,还可以读出状态寄存器的 容。
(6)计数脉冲可以是有规律的时钟信号,也可以是随机信号。
计数初值公式为n=fCLKi / fOUTi其中fCLKi是输入时钟脉冲的频率, fOUTi是输出波形的频率。
图3-1-1是8254的内部结构框图和引脚图,它是由与CPU的接口、内部控制电路和三个计数器组成。8255的工作方式如下述:
(1)方式0:计数到0结束输出正跃变信号方式
(2)方式1:硬件可重触发单稳方式。
(3)方式2:频率发生器方式,
(4)方式3:方波发生器
(5)方式4:软件触发选通方式
(6)方式5:硬件触发选通方式。

图3-1-18254的内部接口和引脚
8254的控制字有两个:一个用来设置计数器的工作方式,称为方式控制字;另一个用来设置读回命令,称为读回控制字。这两个控制字共用一个地址,由标识位来区分。方式控制字格式如表3-1-1所示。读回控制字格式如表3-1-2所示。当读回控制字的D4位为0时,由该读回控制字D1-D2位指定的计数器的状态寄存器内容将锁存到状态寄存器中。状态字格式如表3-1-3所示。

8254实验电路原理图如下图所示。

3.1.4实验说明及步骤
1、计数应用实验
图3-1-2为参考连线图。OUT0可以连接到一个LED,以观察其输出的高低电平值。将计数器0设置为方式0,计数初值N可自行决定,按动单次脉冲单形(位于实验台底都中间)的微动开关产生单次脉冲送CLK。编写程序在屏幕上显示计数器0的当前计数值。
实验步骤如下所述:
(1)按实验内容编写程序,实现8254对KK1+按键次数的响应
-------------理论知识------------
1、确认端口地址
IO基地址0600H
XR1---A0
XR2---A1
地址范围600H~603H
0#计数器端口地址:0600H
1#计数器端口地址:0602H
2#计数器端口地址:0604H
控制寄存器端口地址:0606H
2、确定工作方式与计数初值
计数器0工作于方式0,计数结束产生中断方式
读
写
3、确定控制字
写
00 11 000 0
读
00 00 000 0
4、初始化程序
A EQU 0600H
B EQU 0602H
C EQU 0604H
S EQU 0606H
;N=9;计数初值
CODE SEGMENT
ASSUME CS:CODE
;初始化计数器0程序
MOV AL,00110000B
MOV DX,S
OUT DX,AL ;送控制字
MOV DX,A
MOV AL,09H ;9 =0000 1001
OUT DX,AL ;送低8位
MOV AL,00H ;9 =0000 0000
OUT DX,AL ;送高8位
;读取计数器0当前的计数值到CX中
MOV AL,00000000B
MOV DX,S
OUT DX,AL ;送控制字
MOV DX,A
IN AL,DX ;读低8位
MOV CL,AL
IN AL,DX ;送高8位
MOV CH,AL
CODE ENDS
END SRART
-------------理论知识------------
(2)设计实验线路图,完成线路连接。
(3)打开实验箱电板,运行程序,按动KK1+微动开关,观察开关按动后屏幕显示的计数值和LED灯的变化

2、定时应用实验
将8254的计数器0和计数器1都设置为方式3,用信号源1MHz作为CLKO时钟,OUTO为被形输出 1ms方波,再通过CLK1输入,OUT1输出1s方波。
实验步骤:
(1)接线图如图3-1-3所示,
(2)根据实验内容,编写实验程序,经编译、链接无提后装入系统
-------------理论知识------------
1、确认端口地址
IO基地址0600H
XR1---A0
XR2---A1
地址范围600H~603H
0#计数器端口地址:6C0H
1#计数器端口地址:6C2H
2#计数器端口地址:6C4H
控制寄存器端口地址:6C6H
2、确定工作方式与计数初值
计数器0工作于方式3,方波发生器
计数初值=输入频率/输出频率
1000=1M /1000
计数器1设置为方式3,方波发生器
计数初值=输入频率/输出频率
1 =1000 /1000
3、确定控制字
00 11 011 0
01 11 011 0
4、初始化程序
A EQU 06C0H
B EQU 06C2H
C EQU 06C4H
S EQU 06C6H
CODE SEGMENT
ASSUME CS:CODE
;初始化计数器0
MOV AL,00110110B
MOV DX,S
OUT DX,AL ;送控制字
MOV DX,A
MOV AL,03E8H ;1000 =0000 03e8
OUT DX,AL ;送低8位
MOV AL,0H ;1000 =0000 0000
OUT DX,AL ;送高8位
;初始化计数器1
MOV AL,01110110B
MOV DX,S
OUT DX,AL ;送控制字
MOV DX,B
MOV AL,03E8H ;1000 =0000 03e8
OUT DX,AL ;送低8位
MOV AL,0H ;1000 =0000 0000
OUT DX,AL ;送高8位
CODE ENDS
END SRART
-------------理论知识------------
(3)单击【RUN】按钮,运行实验程序,8254的OUTI会输出1的方波,可用软件自带的示被器功能进行观察。
(4)用示波器观察波形的方法:单击虚拟仪器菜单中的【示波器】按钮或直接单击工具栏的按【】钮,在新弹出的示波器界而上单击【】按钮运行示波器,就可以观测出OUT1输出的波形。
本实验现象结果如图3-1-4所示,
3.1.5实验提示
1.实验箱上我们的I/0基地址为0600H,CS接IOY0信号线。
2.在实验1计数应用实验中,初值不易过大(<10)。
3.将OUT0接LED灯,可观察计数运行情况。LED灯低电平有效,所以计数应用实验计数期间灯灭,计数结束灯亮。
最后
请您阅读文章声明,默认同意该声明
打赏通道
边栏推荐
- 1. 封装自己的脚手架 2.创建代码模块
- bindservice方法实现音乐播放暂停
- Why does Dell always refuse to push the ultra-thin commercial notebook to the extreme?
- JVM指令
- Scala adapter pattern
- 利用 Redis 的 sorted set 做每周热评的功能
- PMP考试“临门一脚”如何踢得漂亮?
- 戴尔为何一直拒绝将商用本的超薄推向极致?
- 腾讯云WeCity解决方案
- Which securities company should I choose to open an account online? Is it safe to open an account online?
猜你喜欢
The latest QQ wechat domain name anti red PHP program source code + forced jump to open

4年工作经验,多线程间的5种通信方式都说不出来,你敢信?

天书夜读笔记——内存分页机制

Bi-sql create

LLVM TargetPassConfig

Scala IO read by character

Install mysql5.6 under linux64bit - the root password cannot be modified

void* 指针

Assembly language (4) function transfer parameters

粉丝福利,JVM 手册(包含 PDF)
随机推荐
腾讯云WeCity丨你好 2022!
Bi SQL constraints
activity生命周期
4年工作经验,多线程间的5种通信方式都说不出来,你敢信?
Abnova丨CSV 磁珠中英文说明
Bi SQL drop & alter
胰蛋白酶中英文说明书
Powerbi - for you who are learning
Activity lifecycle
Première application de l'informatique quantique à la modélisation des flux de puissance dans les systèmes énergétiques à l'Université technique danoise
生态护航 云服务商挥起“英特尔大旗”
汇编语言(2)基础知识-debug
Cobalt Strike安装教程
Welcome to the new world of Lenovo smart screen
脱氧核糖核酸酶I中英文说明书
Matlab rounding
Transform BeanUtils to achieve list data copy gracefully
Tencent cloud wecity solution
void* 指针
Bi-sql index