HJT BIT 01H
ORG 0000H
MAIN: MOV SP,#60H
;========TIMER0====================
MOV TCON,#00H ;定时器1工作方式1,定时器0工作方式2
MOV TMOD,#11H
SETB EA
SETB ET1
MOV 50H,#1
MOV 51H,#1
;*******************************
KEYSCAN:JB P3.7,SS1
JB P1.0,SS2
JB P1.1,SS3
JB P1.2,SS4
JB P1.3,SS5
JB P1.4,SS6
JMP KEYSCAN
;-------------------------------
SS1: JMP S1
SS2: JMP S2
SS3: JMP S3
SS4: JMP S4
SS5: JMP S5
SS6: JMP S6
SETB P1.7
JMP KEYSCAN
;--------------------------------
S1:
MOV R3,#03CH
MOV 30H,#1
MOV 31H,50H
MOV 32H,51H
LCALL SEND1
JMP KEYSCAN
S2:
MOV R3,#03CH
MOV 30H,#2
MOV 31H,50H
MOV 32H,51H
LCALL SEND1
JMP KEYSCAN
S3:
MOV R3,#03CH
MOV 30H,#3
MOV 31H,50H
MOV 32H,51H
LCALL SEND1
JMP KEYSCAN
S4:
MOV R3,#03CH
MOV 30H,#4
MOV 31H,50H
MOV 32H,51H
LCALL SEND1
JMP KEYSCAN
S5:
MOV R3,#03CH
MOV 30H,#5
MOV 31H,50H
MOV 32H,51H
LCALL SEND1
JMP KEYSCAN
;----------------------
;--------------------------
S6:MOV R3,#03CH
MOV 30H,#6
MOV 31H,50H
MOV 32H,51H
LCALL SEND1
JMP KEYSCAN
;--------SEND CODE---------------------
SEND1: MOV 6FH,#4
XLX: SETB P3.5
JB HJT,ER
CPL P1.7
ER: MOV TH0,#0FFH
MOV TL0,#0C9H;c9
SETB TR0
JNB TF0,$
CLR TR0
CLR TF0
CLR P3.5
LCALL DEL3_8MS
;==============码的身体在这里=================
MOV A,30H
JB ACC.0,L1
LCALL DATA0
AJMP LL1
L1: LCALL DATA1
LL1: JB ACC.1,L2
LCALL DATA0
AJMP LL2
L2: LCALL DATA1
LL2: JB ACC.2,L3
LCALL DATA0
AJMP LL3
L3: LCALL DATA1
LL3: JB ACC.3,L4
LCALL DATA0
AJMP LL4
L4: LCALL DATA1
LL4: JB ACC.4,L5
LCALL DATA0
AJMP LL5
L5: LCALL DATA1
LL5: JB ACC.5,L6
LCALL DATA0
AJMP LL6
L6: LCALL DATA1
LL6: JB ACC.6,L7
LCALL DATA0
AJMP LL7
L7: LCALL DATA1
LL7: JB ACC.7,L8
LCALL DATA0
AJMP DIZHI
L8: LCALL DATA1
;-----------ADDRESS------------------------
DIZHI: MOV A,31H
JB ACC.0,L10
LCALL DATA0
AJMP LL10
L10: LCALL DATA1
LL10: JB ACC.1,L20
LCALL DATA0
AJMP LL20
L20: LCALL DATA1
LL20: JB ACC.2,L30
LCALL DATA0
AJMP LL30
L30: LCALL DATA1
LL30: JB ACC.3,L40
LCALL DATA0
AJMP LL40
L40: LCALL DATA1
LL40: JB ACC.4,L50
LCALL DATA0
AJMP LL50
L50: LCALL DATA1
LL50: JB ACC.5,L60
LCALL DATA0
AJMP LL60
L60: LCALL DATA1
LL60: JB ACC.6,L70
LCALL DATA0
AJMP LL70
L70: LCALL DATA1
LL70: JB ACC.7,L80
LCALL DATA0
AJMP DIZHIS
L80: LCALL DATA1
;-----------------ADDRESS0---------------
DIZHIS: MOV A,32H
JB ACC.0,LS10
LCALL DATA0
AJMP LLS10
LS10: LCALL DATA1
LLS10: JB ACC.1,LS20
LCALL DATA0
AJMP LLS20
LS20: LCALL DATA1
LLS20: JB ACC.2,LS30
LCALL DATA0
AJMP LLS30
LS30: LCALL DATA1
LLS30: JB ACC.3,LS40
LCALL DATA0
AJMP LLS40
LS40: LCALL DATA1
LLS40: JB ACC.4,LS50
LCALL DATA0
AJMP LLS50
LS50: LCALL DATA1
LLS50: JB ACC.5,LS60
LCALL DATA0
AJMP LLS60
LS60: LCALL DATA1
LLS60: JB ACC.6,LS70
LCALL DATA0
AJMP LLS70
LS70: LCALL DATA1
LLS70: JB ACC.7,LS80
LCALL DATA0
AJMP LLT
LS80: LCALL DATA1
LLT: ; LCALL DATA0
; DJNZ 6FH,XLX0
; JMP RETTTT
;XLX0: JMP XLX
RET
;?---------DATA1-----------------------
DATA1: MOV R0,#2
DATA11: MOV TH0,#0FFH
MOV TL0,#08FH;380us
SETB TR0
SETB P3.5
HERE1: JNB TF0, $
CLR P3.5
CLR TF0
CLR TR0
MOV TH0,#0FFH
MOV TL0,#0D2H;120us
SETB TR0
JNB TF0,$
CLR TF0
CLR TR0
DJNZ R0, DATA11
RET
;--------DATA0--------------------
DATA0: MOV R0,#2
DATA00: MOV TH0,#0FFH
MOV TL0,#0DCH;140us
SETB TR0
SETB P3.5
HERE0: JNB TF0, $
CLR P3.5
CLR TF0
CLR TR0
MOV TH0,#0FFH
MOV TL0,#81H;360us
SETB TR0
JNB TF0,$
CLR TF0
CLR TR0
DJNZ R0, DATA00
RET
;=============================
DEL3_8MS: MOV 40H ,#110
REMOTEA:
MOV 41H ,#35
REMOTEB:
DJNZ 41H ,REMOTEB
DJNZ 40H ,REMOTEA
RET
END
评论0