PORT5 EQU 0X05
IOC5 EQU 0X05
PORT6 EQU 0X06
IOC6 EQU 0X06
PC ==0X02
COUNT==0X1B
ORG 0X00
MOV A,@0X0F
IOW 0X06 ;定义P64-P67为输出,P60-P63为输入
MOV A,@0X00
IOW 0X05 ;定义P50-53为输出
MOV A,@0X40
IOW 0X0E ;定义P60为INT输入
MOV A,@0X05
IOW 0X0F ;开启外部中断和TCC中断
MOV A,@0X00
MOV COUNT,A
JMP START
;查表程序
TABLE:
ADD PC, A
RETL @0XC0
RETL @0XF9
RETL @0XA4
RETL @0XB0
RETL @0X99
RETL @0X92
RETL @0X82
RETL @0XF8
RETL @0X80
RETL @0X90
;显示程序
START:
MOV A,COUNT
AND A, @0X0F
CALL TABLE
MOV PORT5,A
MOV PORT6,A
JMP START
PORT5 EQU 0X05
IOC5 EQU 0X05
PORT6 EQU 0X06
IOC6 EQU 0X06
PC EQU 0X02
COUNT EQU 0X1B
KEY EQU 0X1C
ORG 0X00
JMP MAIN
ORG 0X08
JMP TCC_INT
ORG 0X10
MAIN:
CALL INITIAL
LOOP:
ENI
JMP LOOP
TCC_INT:
DISI
JBS 0X0F,0
JMP QUIT
BC 0X0F,0
DJZ KEY
RETI
INC COUNT
QUIT:
RETI
INITIAL:
MOV A,@0X0F
IOW 0X06 ;定义P64-P67为输出,P60-P63为输入
MOV A,@0X00
IOW 0X05 ;定义P50-53为输出
MOV A,@0X40
IOW 0X0E ;定义P60为INT输入
MOV A,@0X05
IOW 0X0F ;开启外部中断和TCC中断
MOV A,@0X47
CONTW
MOV A,@0X80 ;定义KEY变量
MOV KEY,A
RET
MOV A,@0X00
MOV COUNT,A
JMP START
;查表程序
TABLE:
ADD PC, A
RETL @0XC0
RETL @0XF9
RETL @0XA4
RETL @0XB0
RETL @0X99
RETL @0X92
RETL @0X82
RETL @0XF8
RETL @0X80
RETL @0X90
;显示程序
START:
MOV A,COUNT
AND A, @0X0F
CALL TABLE
MOV PORT5,A
MOV PORT6,A
JMP START
评论0