DW 32 DUP(?)
SSTACK ENDS
CODE SEGMENT
ASSUME CS:CODE
START:
MOV DX, 0646H ;控制端口地址0646H送DX,因為8255的cs端口接的是I0Y1,而I0Y1對應的編址空間是0640H-067FH,所以這裏是0646H。
MOV AL, 90H ;方式選擇控制字送AL
OUT DX, AL ;式選擇控制字輸給8255A的控制端口,完成端口 A 工作在方式 0 並作為輸入口,端口 B 工作在方式 0 並作為輸出口。
AA1: MOV DX, 0640H ;控制端口A地址0640H送DX
IN AL, DX ;端口A連接的開關的對應狀態送給AL
CALL DELAY
MOV DX, 0642H ;控制端口A地址0642H送DX
OUT DX, AL ;將AL的數據送到8255的端口B,從而使其連接的LED的燈發光
JMP AA1
DELAY:
PUSH CX
MOV CX, 0F00H
AA2:
PUSH AX
POP AX
LOOP AA2
POP CX
RET
CODE ENDS
END START