微机原理与接口技术——简易八人抢答器设计

本文介绍了一种使用8255并行接口芯片设计的八人抢答器电路及软件实现方法。通过设定B口为输入、A口为输出,实现了对八个输入信号的实时监测和响应,当有人按下抢答按钮时,相应的LED灯亮起显示抢答者编号。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

八人抢答器利用8255来实现,A口接数码管输出,B口接输入,代码如下:

**`;=========================================================
; 文件名: A82551.ASM
; 功能描述: B口为输入,A口为输出,实现八人抢答器
; IOY0
;=========================================================

IOY0         EQU   0600H          ;片选IOY0对应的端口始地址
MY8255_A     EQU   IOY0+00H*2     ;8255的A口地址
MY8255_B     EQU   IOY0+01H*2     ;8255的B口地址
MY8255_C     EQU   IOY0+02H*2     ;8255的C口地址
MY8255_MODE  EQU   IOY0+03H*2     ;8255的控制寄存器地址

SSTACK	SEGMENT STACK
		DW 32 DUP(?)
SSTACK	ENDS
CODE	SEGMENT
		ASSUME CS:CODE
START:	MOV DX, MY8255_MODE
		MOV AL, 82H
		OUT DX, AL;初始化8255
		
		MOV DX, MY8255_C
		MOV AL,00H
		OUT DX,AL
		
AA1:	MOV DX, MY8255_B
		IN  AL, DX;读入B口数据
		CALL DELAY
		CMP AL,0FFH;由于采用共阴极,所以没有人抢答时为全1,比较输入的数据
		           ;与FF,即可知道是否有人抢答
		JZ AA1     ;如果没有则跳转到开头,继续检测
		MOV AH,AL
		AND AL,01H
		JZ DISP1
		MOV AL,AH
		AND AL,02H
		JZ DISP2
		MOV AL,AH
		AND AL,04H
		JZ DISP3
		MOV AL,AH
		AND AL,08H
		JZ DISP4
		MOV AL,AH
		AND AL,10H
		JZ DISP5
		MOV AL,AH
		AND AL,20H
		JZ DISP6
		MOV AL,AH
		AND AL,40H
		JZ DISP7
		MOV AL,AH
		AND AL,80H
		JZ DISP8
DISP1:	MOV AL,06H	
		MOV DX, MY8255_A
		OUT DX, AL;输出1
		JMP EXIT
DISP2:	MOV AL,5BH	
		MOV DX, MY8255_A
		OUT DX, AL;输出2
		JMP EXIT
DISP3:	MOV AL,4FH	
		MOV DX, MY8255_A
		OUT DX, AL
		JMP EXIT
DISP4:	MOV AL,66H	
		MOV DX, MY8255_A
		OUT DX, AL
		JMP EXIT
DISP5:	MOV AL,6DH	
		MOV DX, MY8255_A
		OUT DX, AL
		JMP EXIT
DISP6:	MOV AL,7DH	
		MOV DX, MY8255_A
		OUT DX, AL
		JMP EXIT
DISP7:	MOV AL,07H	
		MOV DX, MY8255_A
		OUT DX, AL
		JMP EXIT
DISP8:	MOV AL,7FH	
		MOV DX, MY8255_A
		OUT DX, AL
		JMP EXIT
DELAY:	PUSH CX
		MOV CX, 0F00H
AA2:	PUSH AX
		POP  AX
		LOOP AA2
		POP  CX
		RET
EXIT:  
CODE	ENDS
		END  START

硬件连接图如下

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值