【接口实验】

题目:使用 8253/4 的计数器 0 和计数器 1 级连,采用定时方式工作,周期性的点亮及熄灭发光二极管各 2 秒 (周期为 4 s)

思路:

首先根据题目要求写入控制字,再将控制字写入到AL当中。

由于此试验箱的计数器0,计数器1以及控制端口的地址分别是200H、201H,203H,所以需要使用MOV指令将控制端口地址送入到DX寄存器当中。

通过使用OUT指令,将控制字写入到方式控制端。再使用MOV指令将通道0的端口地址写入到DX当中,同时将0移入到AL当中。

由于题目要求设定循环次数10000次,所以需要两次OUT指令,分别高八位低八位写入到计数器0的端口地址当中。

题目需要用级联对小灯泡进行控制,计数器1同计数器0,先将控制字写入到控制端口,由于计数器1设定计数初值为4,所以只需要一次写入到端口地址当中即可。

 

.MODEL SMALL
.486
DATA SEGMENT
IO_ADDRESS EQU 200H
D1 DW ?
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
;计数器0
       MOV AX,DATA
	  MOV DS,AX
	  MOV AL,37H;控制字为00110111
	  MOV DX,203H;控制端口地址送到DX
	  OUT DX,AL;写入方式控制端
	  MOV AL,0;循环次数为10000
	  MOV DX,200H;通道0端口地址为200H十六位,先移入到DX当中
	  OUT DX,AL;低八位写入计数器0的端口地址
	  OUT DX,AL;高八位写入计数器0的端口地址
;计数器1
	  MOV AL,56H;控制字为01010110
	  MOV DX,203H;控制端口地址送到DX
	  OUT DX,AL;写入方式控制端
	  MOV AL,4;计数初值为4
	  MOV DX,201H;通道一端口地址为201H
	  OUT DX,AL;将计数初值写入计数器1的端口地址
	  HLT
	  CODE ENDS
	  END START

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值