📄 gpf_keyled.asm
字号:
;=====================================================================================
; copyright belong to 贵鹏斐(设置P0.0(INT1)为+,P0.1(INT0)为-,数码管显示00~99,用中断方式。)
; 信电学院
; 2008.8.21
;*****不足之处在于因为是三位一体,所以数字显示是跳变的,目前减法还没编好,从0减到9还没编好*****
;=====================================================================================
P0MDOUT DATA 0A4H ; Port 0 Output Mode Configuration
P1MDOUT DATA 0A5H ; Port 1 Output Mode Configuration
P3MDOUT DATA 0A7H ; Port 3 Output Mode Configuration
XBR1 DATA 0E2H ; Port I/O Crossbar Control 1
PCA0MD DATA 0D9H ; PCA Mode
;=====================================================================================
ORG 0000H
LJMP MAIN
ORG 0003H
LJMP INT0_INT
ORG 0013H
LJMP INT1_INT
;=======================================================================================
ORG 00B3H
MAIN:
MOV SP, #60H
MOV P0MDOUT, #0FFh
MOV P1MDOUT, #0FFh ;P1口输出段码
MOV P3MDOUT, #0FFh ;P3口输出位码
MOV XBR1, #0C0h
ANL PCA0MD, #0BFh
MOV PCA0MD, #000h
SETB IT0 ;
SETB IT1
SETB EX0
SETB EX1
SETB PX0
SETB EA
START:
MOV R1,#0AAH
MOV R0,#0
MOV R2,#0
NEXT:
MOV DPTR,#TABLE
MOV A,R0
MOVC A,@A+DPTR
MOV P1,A
MOV A,R1
MOV P3,A
LCALL DELAY2MS
L1: CJNE R2,#0,R0EQ10
SJMP L1
;=========动态显示=====================================================================
R0EQ10:
MOV DPTR,#TABLE
MOV A,R0
MOVC A,@A+DPTR
MOV P1,A
MOV A,R1
RL A
MOV R1,A
MOV P3,A
LCALL DELAY2MS
MOV P3,#0FFH
MOV DPTR,#TABLE
MOV A,R2
MOVC A,@A+DPTR
MOV P1,A
MOV A,R1
RL A
MOV R1,A
MOV P3,A
LCALL DELAY2MS
MOV P3,#0FFH
CJNE R2,#0AH,R0EQ10
SJMP START
;=========外部中断0(P0.1-)===========================================================
INT0_INT:
DEC R0
JNB P0.1,$
MOV A,R0
MOV DPTR,#TABLE
MOVC A,@A+DPTR
MOV P1,A
MOV A,R1
MOV P3,A
LCALL DELAY2MS
MOV P3,#0FFH
RETI
;=========外部中断1(P0.0+)===========================================================
INT1_INT:
INC R0
JNB P0.0,$
CJNE R0,#0AH,L0
INC R2
MOV R0,#0
SJMP L2
L0:
MOV DPTR,#TABLE
MOV A,R0
MOVC A,@A+DPTR
MOV P1,A
MOV A,R1
MOV P3,A
LCALL DELAY2MS
L2: RETI
;=========延时2毫秒===================================================================
DELAY2MS:
MOV R6,#4
D1: MOV R7,#250
DJNZ R7,$
DJNZ R6,D1
RET
;=====================================================================================
TABLE: DB 3FH,03H,6DH,67H,53H,76H,7EH,23H,7FH,73H
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -