---------------;=========================================================
; 文件名: A82552.ASM
; 功能描述: A口为输出,B口为输出,流水灯显示
;=========================================================
IOY0 EQU 0600H ;片选IOY0对应的端口始地址
MY8255_A EQU IOY0+00H2 ;8255的A口地址
MY8255_B EQU IOY0+01H2 ;8255的B口地址
MY8255_C EQU IOY0+02H2 ;8255的C口地址
MY8255_MODE EQU IOY0+03H2 ;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
MOV BX, 8001H
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL, 1
JZ AA1
MOV DX, MY8255_A
MOV AL,0FFH
OUT DX,AL
CALL DELAY
JMP START
AA1: MOV DX, MY8255_A
MOV AL, BH
OUT DX, AL
ROR BH, 1
CALL DELAY
CALL DELAY
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL,0
JZ START
JMP AA1
DELAY: PUSH CX
MOV CX, 0F000H
AA2: PUSH AX
POP AX
LOOP AA2
POP CX
RET
CODE ENDS
END START
;=========================================================
; 文件名: A82552.ASM
; 功能描述: A口为输出,B口为输出,流水灯显示
;=========================================================
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
MOV BX, 8001H
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL, 1
JZ AA1
MOV DX, MY8255_A
MOV AL,0FFH
OUT DX,AL
CALL DELAY
JMP START
AA1: MOV DX, MY8255_A
MOV AL, BH
OUT DX, AL
ROR BH, 1
CALL DELAY
CALL DELAY
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL,0
JZ START
JMP AA1
DELAY: PUSH CX
MOV CX, 0F000H
AA2: PUSH AX
POP AX
LOOP AA2
POP CX
RET
CODE ENDS
END START
;=========================================================
; 文件名: A82552.ASM
; 功能描述: A口为输出,B口为输出,流水灯显示
;=========================================================
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
MOV BX, 8001H
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL, 1
JZ AA1
CMP AL,2
JZ BB1
MOV DX, MY8255_A
MOV AL,0FFH
OUT DX,AL
CALL DELAY
JMP START
AA1: MOV DX, MY8255_A
MOV AL, BH
OUT DX, AL
ROR BH, 1
CALL DELAY
CALL DELAY
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL,0
JZ START
JMP AA1
BB1: MOV DX, MY8255_A
MOV AL, BH
OUT DX, AL
ROR BH, 1
CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL,0
JZ START
JMP BB1
DELAY: PUSH CX
MOV CX, 0F000H
AA2: PUSH AX
POP AX
LOOP AA2
POP CX
RET
CODE ENDS
END START
;=========================================================
; 文件名: A82552.ASM
; 功能描述: A口为输出,B口为输出,流水灯显示
;=========================================================
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
DATA SEGMENT
TABLE DB 03FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,7EH,76H,0F3H
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS: DATA
START: MOV DX, MY8255_MODE
MOV AL, 82H
OUT DX, AL
MOV BX, 8001H
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL, 1
JZ AA1
CMP AL,2
JZ BB1
MOV DX, MY8255_A
MOV AL,0FFH
OUT DX,AL
CALL DELAY
JMP START
AA1: MOV DX, MY8255_A
MOV AL, BH
OUT DX, AL
ROR BH, 1
;CALL DELAY
;CALL DELAY
MOV DX, MY8255_C
MOV AL,06H
OUT DX, AL
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL,0
JZ START
JMP AA1
BB1: MOV DX, MY8255_A
MOV AL, BH
OUT DX, AL
ROR BH, 1
MOV DX, MY8255_C
MOV AL,5BH
OUT DX, AL CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL,0
JZ START
JMP BB1
DELAY: PUSH CX
MOV CX, 0F000H
AA2: PUSH AX
POP AX
LOOP AA2
POP CX
RET
CODE ENDS
END START
;=========================================================
; 文件名: A82552.ASM
; 功能描述: A口为输出,B口为输出,流水灯显示
;=========================================================
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
DATA SEGMENT
;TABLE DB 03FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,7EH,76H,0F3H
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS: DATA
START: MOV DX, MY8255_MODE
MOV AL, 82H
OUT DX, AL
MOV BX, 8001H
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL, 1
JZ AA1
CMP AL,2
JZ BB1
CMP AL,4
JZ DD1
CMP AL, 8
JZ CC1
MOV DX, MY8255_A
MOV AL,0FFH
OUT DX,AL
CALL DELAY
JMP START
AA1: MOV DX, MY8255_A ;
MOV AL, BH
OUT DX, AL
ROR BH, 1
MOV DX, MY8255_C
MOV AL,06H
OUT DX, AL
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL,0
JZ START
JMP AA1
FF: JMP START
BB1: MOV DX, MY8255_A
MOV AL, BH
OUT DX, AL
ROR BH, 1
MOV DX, MY8255_C
MOV AL,5BH
OUT DX, AL
CALL DELAY
CALL DELAY
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL,0
JZ START
JMP BB1
DD1: MOV DX, MY8255_A
MOV AL, BH
OUT DX, AL
ROR BH, 1
MOV DX, MY8255_C
MOV AL,4FH
OUT DX, AL
CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL,0
JZ FF
JMP DD1
CC1: MOV DX, MY8255_A
MOV AL, BH
OUT DX, AL
ROL BH, 1
MOV DX, MY8255_C
MOV AL,3FH
OUT DX, AL
CALL DELAY
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL,0
JE FF
JMP CC1
DELAY: PUSH CX
MOV CX, 0F000H
AA2: PUSH AX
POP AX
LOOP AA2
POP CX
RET
CODE ENDS
END START
最终
;=========================================================
; 文件名: A82552.ASM
; 功能描述: A口为输出,B口为输出,流水灯显示
;=========================================================
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
DATA SEGMENT
;TABLE DB 03FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,7EH,76H,0F3H
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS: DATA
START: MOV DX, MY8255_MODE
MOV AL, 82H
OUT DX, AL
MOV BX, 8001H
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL, 1
JZ AA1
CMP AL,2
JZ BB1
CMP AL,4
JZ DD1
CMP AL, 8
JZ CC1
MOV DX, MY8255_A
MOV AL,0FFH
OUT DX,AL
CALL DELAY
JMP START
AA1: MOV DX, MY8255_A ;快
MOV AL, BH
OUT DX, AL
ROR BH, 1
MOV DX, MY8255_C
MOV AL,06H
OUT DX, AL
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL,0
JZ START
JMP AA1
FF: JMP START
BB1: MOV DX, MY8255_A ;慢
MOV AL, BH
OUT DX, AL
ROR BH, 1
MOV DX, MY8255_C
MOV AL,5BH
OUT DX, AL
CALL DELAY
CALL DELAY
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL,0
JZ START
JMP BB1
DD1: MOV DX, MY8255_A ;鞋
MOV AL, BH
OUT DX, AL
ROR BH, 1
MOV DX, MY8255_C
MOV AL,4FH
OUT DX, AL
CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL,0
JZ FF
JMP DD1
CC1: MOV DX, MY8255_A ;甩干
MOV AL, BH
OUT DX, AL
ROL BH, 1
MOV DX, MY8255_C
MOV AL,3FH
OUT DX, AL
CALL DELAY
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL,0
JE FF
JMP CC1
DELAY: PUSH CX
MOV CX, 0F000H
AA2: PUSH AX
POP AX
LOOP AA2
POP CX
RET
CODE ENDS
END START
2.0
;=========================================================
; 文件名: A82552.ASM
; 功能描述: A口为输出,B口为输出,流水灯显示
;=========================================================
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
DATA SEGMENT
mm db (?)
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS: DATA
START: MOV DX, MY8255_MODE
MOV AL, 82H
OUT DX, AL
MOV BX, 8001H
MOV DX,MY8255_B
IN AL,DX
mov mm,0ffh
CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
CMP AL, 1
JZ AA1
CMP AL,2
JZ BB1
CMP AL,4
JZ DD1
CMP AL, 8
JZ CC1
MOV DX, MY8255_A
MOV AL,0FFH
OUT DX,AL
CALL DELAY
JMP START
AA1: MOV DX, MY8255_A ;快
MOV AL, BH
OUT DX, AL
ROR BH, 1
MOV DX, MY8255_C
MOV AL,06H
OUT DX, AL
call delay
DEC mm
CMP mm,0
JZ CC1
JMP AA1
FF: JMP START
BB1: MOV DX, MY8255_A ;慢
MOV AL, BH
OUT DX, AL
ROR BH, 1
MOV DX, MY8255_C
MOV AL,5BH
OUT DX, AL
CALL DELAY
CALL DELAY
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL,0
JZ START
JMP BB1
DD1: MOV DX, MY8255_A ;鞋
MOV AL, BH
OUT DX, AL
ROR BH, 1
MOV DX, MY8255_C
MOV AL,4FH
OUT DX, AL
CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL,0
JZ FF
JMP DD1
CC1: MOV DX, MY8255_A ;甩干
MOV AL, BH
OUT DX, AL
ROL BH, 1
MOV DX, MY8255_C
MOV AL,3FH
OUT DX, AL
CALL DELAY
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL,0
JE FF
JMP CC1
DELAY: PUSH CX
MOV CX, 0F000H
AA2: PUSH AX
POP AX
LOOP AA2
POP CX
RET
CODE ENDS
END START
3.0
;=========================================================
; 文件名: A82552.ASM
; 功能描述: A口为输出,B口为输出,流水灯显示
;=========================================================
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
DATA SEGMENT
MK db 08H
MM DB 08H
MX DB 08H
TSHUI DB 08H
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS: DATA
START: MOV DX, MY8255_MODE
MOV AL, 82H
OUT DX, AL
MOV BX, 8001H
MOV DX,MY8255_B
IN AL,DX
;mov mm,0fh
MOV MK, 18H
MOV MM, 28H
MOV MX, 38H
MOV TSHUI, 18H
CALL DELAY
CALL DELAY
;CALL DELAY
;CALL DELAY
;CALL DELAY
CMP AL, 1
JZ AA1
CMP AL,2
JZ BB1
CMP AL,4
JZ DD1
CMP AL, 8
JZ GG
MOV DX, MY8255_A
MOV AL,0FFH
OUT DX,AL
CALL DELAY
JMP START
AA1: MOV DX, MY8255_A ;快
MOV AL, BH
OUT DX, AL
ROR BH, 1
MOV DX, MY8255_C
MOV AL,06H
OUT DX, AL
call delay
DEC MK
CMP MK,0
JZ CC1
MOV DX,MY8255_B
IN AL,DX
CMP AL, 0
JZ START
JMP AA1
;FF: JMP START
GG: JMP CC1
BB1: MOV DX, MY8255_A ;慢
MOV AL, BH
OUT DX, AL
ROR BH, 1
MOV DX, MY8255_C
MOV AL,5BH
OUT DX, AL
CALL DELAY
CALL DELAY
;call delay
DEC MM
CMP MM,0
JZ CC1
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL,0
JZ FF
JMP BB1
FF: JMP START
DD1: MOV DX, MY8255_A ;鞋
MOV AL, BH
OUT DX, AL
ROR BH, 1
MOV DX, MY8255_C
MOV AL,4FH
OUT DX, AL
CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
;call delay
DEC MX
CMP MK,0
JZ CC1
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL,0
JZ FF
JMP DD1
CC1: MOV DX, MY8255_A ;甩干
MOV AL, BH
OUT DX, AL
ROL BH, 1
MOV DX, MY8255_C
MOV AL,66H
OUT DX, AL
CALL DELAY
call delay
DEC TSHUI
CMP TSHUI,0
JZ ENDT
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL,0
JE FF
JMP CC1
TUMP: JMP FF
ENDT: CALL DELAY
CALL DELAY
MOV DX, MY8255_A
MOV AL,0AAH
OUT DX,AL
CALL DELAY
CALL DELAY
MOV DX, MY8255_A
MOV AL,55H
OUT DX,AL
CALL DELAY
CALL DELAY
MOV DX, MY8255_A
MOV AL,55H
OUT DX,AL
;CALL DELAY
;CALL DELAY
MOV DX,MY8255_B
IN AL,DX
CALL DELAY
CMP AL,0
JZ TUMP
JMP ENDT
DELAY PROC NEAR
PUSH CX
MOV CX, 0F000H
DELAY ENDP
AA2: PUSH AX
POP AX
LOOP AA2
POP CX
RET
CODE ENDS
END START