📄 8255的应用.txt
字号:
【实验内容一】
基本输入输出:
读入开关量到8255A,再将其通过指示灯显示。以8255A的A口作输入,B口作输出,输入用开关,输出用发光管,要求当输入不全为0时,输入与输出保持一致。当输入为全0时,发光二极管闪烁。
【实验连线一】
①8255的A口(J32)接8位开关K17-K24(J21)
②8255的B口(J31)接8位发光二极管L18-L25(J20)
③8255的片选端CS(J29)接I/0译码电路(J40-2)
【实验程序一】
PORTA = 308H
PORTB = 309H
CONTROL = 30BH
DCONS = 10H
DATA SEGMENT
MESS DB 0DH,0AH,'PRESSS ANYKEY TO EXIT...',0AH,0DH,'$'
DATA ENDS
CG SEGMENT 'CODE'
ASSUME CS:CG,DS:DATA
BEGIN: PUSH DS
XOR AX,AX
PUSH AX
MOV AX,DATA
MOV DS,AX
MOV DX,OFFSET MESS
MOV AH,9
INT 21H
MOV DX,CONTROL
MOV AL,90H
OUT DX,AL
MOV AH,0FFH
MOV BL,0
LP: PUSH AX
MOV AH,0BH
INT 21H
CMP AL,0
JNE BACK
POP AX
MOV DX,PORTA
IN AL,DX
NOP
NOP
TEST AL,AH
JZ SHIFT
MOV DX,PORTB
OUT DX,AL
JMP LP
SHIFT: MOV AL,BL
MOV DX,PORTB
OUT DX,AL
CALL DELAY
SHL BL,1
TEST BL,AH
JNZ LP
MOV BL,1
JMP LP
BACK: POP AX
RETF
DELAY PROC NEAR
PUSH AX
MOV BH,DCONS
DDLY: MOV CX,0
DELAY1: DEC CX
LOOP DELAY1
DEC BH
TEST BH,AH
JNZ DDLY
POP AX
RETN
DELAY ENDP
CG ENDS
END BEGIN
【思考题一】
如果改成用A口作输出,B口作输入,应怎样修改连线和程序?
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -