📄 ff.asm
字号:
DEW EQU 05FH
FRW EQU 02H
DC EQU 26H
FC EQU 27H
ORG 00H
LJMP START
ORG 0BH
LJMP TIM0
START: MOV TMOD,#00000001B
MOV IE,#10000010B
CLR P2.6
START0: MOV 30H,#00
NEXT:
MOV DC,#0
MOV FC,#0
MOV A,30H
MOV DPTR,#GREEDIL;#BIRTHDAY;
MOVC A,@A+DPTR
MOV R2,A
JZ END0
ANL A,#0FH
MOV R5,A
MOV A,R2
SWAP A
ANL A,#0FH
JNZ SING
CLR P2.6
CLR TR0
JMP D1
SING: DEC A
MOV 25H,A
LCALL SEARCH
MOV 22H,TL0
MOV 23H,TH0
SETB TR0
D1: CALL DELAY
INC 30H
JMP NEXT
END0: CLR TR0
JMP START0
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
TIM0: PUSH ACC
PUSH PSW
MOV TL0,20H
MOV TH0,21H
CPL P2.6
MOV A,#0
MOV A,FC
CJNE A,#0,CHAN
AJMP NOCHAN
CHAN:
;INC DC
NOCHAN:
INC DC
MOV A,DC
CJNE A,#DEW,EXIT
JC EXIT
;;;;;;;;;;;;;;;;;;;;;;;;;;;
MOV DC,#0
INC FC
MOV A,FC
CJNE A,#FRW,EXIT0
JC EXIT0
MOV FC,#0
MOV TH0,23H
MOV 21H,TH0
MOV TL0,22H
MOV 20H,22H
AJMP EXIT
EXIT0:
MOV A,#0
MOV A,25H
INC A
INC A
INC A
INC A
INC A
INC A
INC A
LCALL SEARCH
EXIT:
POP PSW
POP ACC
RETI
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DELAY:MOV R7,#02
D2: MOV R4,#187
D3: MOV R3,#248
DJNZ R3,$
DJNZ R4,D3
DJNZ R7,D2
DJNZ R5,DELAY
RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
SEARCH:
RL A
MOV DPTR,#TABLE1
MOVC A,@A+DPTR
MOV TH0,A
MOV 21H,A
MOV A,25H
RL A
INC A
MOVC A,@A+DPTR
MOV TL0,A
MOV 20H,A
RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
TABLE1:
DW 64021,64103,64260,64400,64524
; 3 4 5 6 7
DW 64580,64684,64777,64820,64898,64968,65030
; 1 2 3 4 5 6 7
DW 65058,65110,65157
; 1 2 3
TABLE2:
DW 64260,64400,64524
; 5 6 7
DW 64580,64684,64777,64820,64898,64968,65030
; 1 2 3 4 5 6 7
DW 65058,65110,65157,65178,65217
; 1 2 3 4 5
BIRTHDAY:
;1
DB 82H,01H,81H,94H,84H
DB 0B4H,0A4H,04H
DB 82H,01H,81H,94H,84H
DB 0C4H,0B4H,04H
;2
DB 82H,01H,81H,94H,84H
DB 0B4H,0A4H,94H
DB 0E2H,01H,0E1H,0D4H,0B4H
DB 0C4H,0B4H,04H
;3
DB 82H,01H,81H,94H,84H
DB 0B4H,0A4H,04H
DB 82H,01H,81H,94H,84H
DB 0C4H,0B4H,04H
;4
DB 82H,01H,81H,0F4H,0D4H
DB 0B4H,0A4H,94H;,0E1H,0D4H,0B4H
DB 0E2H,01H,0E1H,0D4H,0B4H
DB 0C4H,0B4H,04H
DB 00H
GREEDIL:
;1
DB 0A2H,0B2H,0D2H,0B2H,0A4H,0B2H,0D2H
DB 0B2H,0A2H,82H,72H,88H
DB 72H,82H,0A2H,82H,72H,62H,42H,62H,44H,04H,04H,44H
;2
DB 0A4H,02H,0B2H,0A4H,84H
DB 72H,81H,71H,62H,72H,84H,02H,072H;DB 72H,82H,72H,62H,72H,84H,72H
DB 64H,62H,12H,34H,02H,42H
DB 38H,38H
;3
DB 44H,02H,32H,44H,64H
DB 72H,81H,71H,62H,72H,84H,02H,0A2H
DB 72H,74H,82H,0A4H,02H,0B2H
DB 0A8H,0A8H
;4
DB 0B2H,0B4H,0A2H,84H,82H,72H
DB 62H,72H,82H,0A2H,88H
DB 72H,74H,62H,42H,32H,32H,62H
DB 78H,78H
;5
DB 82H,84H,72H,82H,0A2H,84H
DB 72H,82H,72H,62H,48H
DB 32H,0A2H,82H,082H,0A2H,0B2H,82H,72H
DB 68H,68H
;6
DB 0B2H,0B2H,0B2H,0A2H,82H,84H,02H
DB 72H,74H,62H,42H,32H,42H,62H
DB 78H,78H
DB 0A2H,0B2H,0A2H,72H,82H,84H,82H
;7
DB 72H,74H,62H,44H,64H
DB 0A8H,0A4H,02H,0A2H
DB 0A2H,0B1H,0A1H,82H,0A2H,0B4H,0B2H,0D2H
DB 0A2H,0B2H,0A2H,82H,78H
;8
DB 84H,72H,62H,44H,02H,62H
DB 72H,81H,71H,62H,72H,84H,02H,0A2H
DB 0B4H,02H,82H,74H,82H,72H
DB 68H,68H
DB 00
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -