可编程并行接口8255(实验一)

实验目的

通过实验,掌握8255工作于方式0以及设置C口为输入口,B口为输出口的方法。

实验原理

待添加

实验步骤

待添加

求控制字

A端口无关可任选 ⇒ D 4 D_4 D4 = 0
B端口作为输出 ⇒ D 1 D_1 D1 = 0
C端口作为输入 ⇒ D 0 D_0 D0 = 1; D 3 D_3 D3 = 1
A组方式选择,B组方式选择 ⇒ 选择默认为方式0(基本的输入/输出方式) ⇒ D 6 D 5 D_6D_5 D6D5 = 00; D 2 D_2 D2 = 0
即控制字为:10001001 = 89h

ASM 汇编代码

io8255a		equ	288h	;A端口地址
io8255b		equ	289h	;B端口地址
io8225c		equ	28ah	;C端口地址
io8225ctrl	equ	28bh	;D端口地址
code	segment
		assume	cs:code
start:	mov dx,io8255ctrl	;将控制字写入控制端口
		mov al,89h
		out dx,al
inout:	mov dx,io8255c	;C端口作为输入
		in	al,dx		;从C端口输入一个数据
		mov	dx,io8255b	;B端口作为输出
		out	dx,al		;将从C端口输入的数据从A端口输出
		mov	dl,offh		;判断是否有按键
		mov	ah,06h
		int	21h
		jz	inout		;若无按键,则继续到inout运行
		mov	ah,4ch		;否则返回
		int	21h
code	ends
		end	start		
  • 2
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值