微机实验四 8254定时计数器应用实验

更新时间:2023-09-02 02:15:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

深 圳 大 学 实 验 报 告

课程名称:

学院: 信息工程学院

实验时间:

实验报告提交时间:

教务处制

实验目的与要求:

1. 掌握 8254 的工作方式及应用编程。 2. 掌握 8254 典型应用电路的接法。实验步骤 1.计数应用实验 编写程序, 将 8254 的计数器 0 设置为方式 3, 计数值为十进制数 4, 用单次脉冲 KK1 + 作为 CLK0 时钟,OUT0 连接 MIR7,每当 KK1+按动 5 次后产生中断请求,在屏幕 上显示 字符“M” 。 实验步骤: (1)实验接线如图 4.29 所示。 (2)编写实验程序,经编译、链接无误后装入系统。 (3)运行程序,按动 KK1+产生单次脉冲,观察实验现象。 (4 ) 改变计数值,验证 8254 的计数功能。

实验流程图:

开始

初始化中断矢量,填入中断程序 的偏移矢量,初始化 8259,8254

循环

是否有中断触 发?

N

Y 执行中断子程序

实验程序: A8254 EQU 06C0H B8254 EQU 06C2H C8254 EQU 06C4H CON8254 EQU 06C6H 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. 定时应用实验 编写程序, 将 8254 的计数器 0 设置为方式 3, 用信号源 1MHz 作为 CLK0 时钟, OUT0 为波形输出 1ms 方波。 实验步骤: (1)接线图如图 4.30 所示。 (2)根据实验内容,编写实验程序,经编译、链接无误后装入系统。 ( 3 ) 运 行 实 验 程 序 , 用 示 波 器 测 试 OUT0 输 出 , 验 证 程 序 功 能 。

实验程序: A8254 EQU 06C0H B8254 EQU 06C2H

C8254 EQU 06C4H CON8254 EQU 06C6H SSTACK SEGMENT STACK DW 32 DUP(?) SSTACK ENDS CODE SEGMENT ASSUME CS:CODE START: MOV DX, CON8254 MOV AL, 36H OUT DX, AL MOV DX, A8254 MOV AL, 0E8H OUT DX, AL MOV AL, 03H OUT DX, AL AA1: JMP AA1 CODE ENDS END START

;计数器 0,方式 3 ;写入控制字

;写入计数初值(低位) ;写入计数初值(高位)

2、教师批改学生实验报告时间应在学生提交实验报告时间后10日内。

本文来源:https://www.bwwdw.com/article/hbbi.html

Top