汇编语言与接口技术_验证实验

目录

8254-计时器应用实验

实验代码

8254-对比实验

接线说明

实验代码

8255-验证实验

实验代码

8255-自设计实验

接线图

实验代码

8259-PC机内中断嵌套实验

实验代码

8259-扩展多中断应用实验

实验代码

Proteus练习

实验代码:


8254-计时器应用实验

要求:将计数器0设为方式0,设定计数器初值为5,GATE接开关。

程序开始运行后,按如下要求操作:

将开关置高电平,观察Led灯的亮灭,然后按动单次脉冲,数一数到底经过多少个单次脉冲后,Led灯的亮灭发生变化。

实验代码

IO8254_MODE EQU 283H ;8254 控制寄存器端口地址
IO8254_COUNT0 EQU 280H ;8254 计数器 0 端口地址
IO8254_COUNT1 EQU 281H ;8254 计数器 1 端口地址
IO8254_COUNT2 EQU 282H ;8254 计数器 2 端口地址
STACK1 SEGMENT STACK
DW 256 DUP(?)
STACK1 ENDS
CODE SEGMENT
ASSUME CS:CODE
START: MOV DX, IO8254_MODE ;初始化 8254 工作方式
MOV AL,11H ;计数器 0,方式 0,十进制编码
;依据8254的方式控制字格式,计数器0对应D7D6位00,读写格式选择读写低 8位即D6D5位01,工作方式0对应D3D2D1位000,十进制数对应D0位1,即00010001,十六进制即11H
OUT DX, AL
MOV DX, IO8254_COUNT0;装入计数初值
MOV AL, 05H
OUT DX,AL
MOV AX,4C00H ;返回到 DOS
INT 21
CODE ENDS
END STAR

8254-对比实验

要求:参考实验一的程序,使用计数器0和计数器1,计数器0设方式2,计数器1设方式3,修改代码和接线图,观察不同工作方式下,GATE信号变化,实验运行现象的不同,对比分析8254不同工作方式的差别。

接线说明

GATE接到同一个开关上(利用扩展区),Led灯分别接到两个灯上,CLK0和CLK1同时接到上升沿单次脉冲上。

实验代码

IO8254_MODE   EQU   283H       ;8254控制寄存器端口地址
IO8254_COUNT0 EQU   280H     ;8254计数器0端口地址
IO8254_COUNT1 EQU   281H     ;8254计数器1端口地址
IO8254_COUNT2 EQU   282H     ;8254计数器2端口地址
STACK1 SEGMENT STACK
        DW 256 DUP(?)
STACK1 ENDS
CODE SEGMENT
        ASSUME CS:CODE
START: MOV DX, IO8254_MODE       ;初始化8254工作方式
       MOV AL,15H                               ;计数器0,方式2, 10进制  0001 0101
       OUT DX, AL
       MOV DX, IO8254_COUNT0        ;装入计数初值到计数器0
       MOV AL,05H
       OUT DX,AL
       MOV DX, IO8254_MODE           ;初始化8254工作方式
       MOV AL,57H                               ;计数器1,方式3, 10进制  0101 0111
       OUT DX, AL              
       MOV DX, IO8254_COUNT1        ;装入计数初值到计数器1
       MOV AL,05H                              ;计数初值为5 
       OUT DX,AL
       MOV AX,4C00H                         ;返回到DOS
       INT 21H
       
CODE ENDS
     END START

8255-验证实验

要求:在设计接线以及填写代码时,选择用B口输入、A口输出,实现基本输入输出实验。

编写程序,完成拨动开关到数据灯的数据传输。要求只要开关拨动,数据灯的显示就改变。

实验代码

IO8255_MODE EQU 28BH
IO8255_A EQU 288H
IO8255_B
  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LeeYotta

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值