📄 ledkey1.asm
字号:
;5个led循环显示HELLO;然后固定显示HELLO。
org 0000h
ajmp HELLO
org 0003h
reti
org 000bh
reti
org 0013h
reti
org 001bh
reti
org 0023h
reti
MAIN:CLR F0
MOV R2,#10H
HELLO:
MOV P1,#0FFH
MOV R3,#00H
MOV DPTR,#LEDS
MOV R5,#01H
MOV R6,#00H
MOV A,#00H
LOOPG:MOV A,R3
MOVC A,@A+DPTR
MOV R6,A
MOV A,R5
RL A
MOV R5,A
MOV P1,#0FFH
JB F0,HOLD
MOV R0,#10H
HOLD1:ACALL DELAY
DJNZ R0,HOLD1
HOLD:MOV A,R6
ACALL SOUT
MOV A,R5
CPL A
ANL A,#0FFH
ANL P1,A
JB F0,ONE
MOV R0,#04H
SJMP HOLD2
ONE:MOV R0,#01H
HOLD2:ACALL DELAY
DJNZ R0,HOLD2
INC R3
CJNE R3,#05H,LOOPG
JB F0,HOLD6
MOV P1,#0FFH
MOV R0,#20H
HOLD3:ACALL DELAY
JNB F0,HOLD5
HOLD6:DJNZ R2,HELLO
MOV R0,#18H
JB F0,HOLD5
HOLD4:ACALL DELAY
DJNZ R0,HOLD4
HOLD5:CPL F0
MOV R2,#10H
SJMP HELLO
SOUT:MOV SBUF,A
JNB TI,$
CLR TI
RET
DELAY:SETB TR0
MOV TL0,#00H
MOV TH0,#00H
JNB TF0,$
CLR TF0
RET
LEDS:
DB 01101110B,10011110B,00011100B,00011100B,11111100B
;***********************************************************
; led=> / abcdefgh
led_asc:
db 11111100B;0
db 01100000B;1
db 11011010B;2
db 11110010B;3
db 01100110B;4
db 10110110B;5
db 10111110B;6
db 11100000B;7
db 11111110B;8
db 11110110B;9
DB 11101110B;a=>A
DB 00111110B;B=>B
DB 10011100B;C=>C
DB 01111010B;D=>D
DB 10011110B;E=>E
DB 10001110B;F=>F
DB 01101110B;H=>10H
DB 00011100B;L=>11H
DB 11101100B;N=>12H
db 00101010b;n=>13h
db 11111100b;O=>14h
dB 00111010B;o=>15H
DB 11001110B;P=>16H
DB 11100110B;Q=>17H
DB 00001010B;r=>18H
DB 10110110B;S=>19H
DB 01111100B;U=>1AH
DB 00111000B;u=>1BH
DB 00000000B;BLACK=>1CH
DB 11111111B;8.=>1DH
db 00000010b;-=>1Eh
db 00011110b;t=>1Fh
db 11111101B;0.=>20h
db 01100001B;1.
db 11011011B;2.
db 11110011B;3.
db 01100111B;4.
db 10110111B;5.
db 10111111B;6.
db 11100001B;7.
db 11111111B;8.
db 11110111B;9.=>29h
db 01110110b;y=>2ah ;2001.5.9
db 'li jie by 2001.6.1'
;********************
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -