📄 hong.asm
字号:
count1 data 054H
count2 data 053H
flag data 033H
iraddr1 data 032H
iraddr2 data 030H
endcount1 data 031h
endcount2 data 0e1h
op equ 20H.0
LJMP begai
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
LJMP timeint
main: CLR A
MOV count1,A
MOV count2,A
MOV flag,A
CLR op
CLR P3.4
SETB EA
MOV TMOD,#0x11
SETB ET0
MOV TH0,#0xFF
MOV TL0,#0xE8
MOV iraddr1,#0x03
MOV iraddr2,#0xFC
SETB TR0
main1: LCALL delay
MOV R7,#count2
LCALL sendirdata
SJMP main1
using 0
timeint:
PUSH ACC
PUSH PSW
MOV TH0,#0xFF
MOV TL0,#0xE6
INC count2
MOV A,count2
JNZ INTER11
INC count1
INTER11: MOV A,flag
CJNE A,#0x01,INTER22
CPL op
SJMP INTER33
INTER22:CLR op
INTER33:MOV C,op
MOV P3.4,C
POP PSW
POP ACC
RETI
sendirdata:
MOV R6,0x07
MOV endcount1,#0x00
MOV endcount2,#0xE1
MOV flag,#0x01
CLR A
MOV count1,A
MOV count2,A
ir2: CLR C
MOV A,count2
SUBB A,endcount2
MOV A,count1
SUBB A,endcount1
JC ir2
MOV endcount1,#0x00
MOV endcount2,#0x75
CLR A
MOV flag,A
MOV count1,A
MOV count2,A
ir1: CLR C
MOV A,count2
SUBB A,endcount2
MOV A,count1
SUBB A,endcount1
JC ir1
MOV R6,iraddr1
CLR A
MOV R5,A
MOV R4,A
ir8: MOV endcount1,#0x00
MOV endcount2,#iraddr2
MOV flag,#0x01
CLR A
MOV count1,A
MOV count2,A
ir3: CLR C
MOV A,count2
SUBB A,endcount2
MOV A,count1
SUBB A,endcount1
JC ir3
MOV A,R6
MOV C,0xE0.7
RRC A
ADD A,ACC
MOV R3,A
CLR C
MOV A,R6
SUBB A,R3
JZ ir4
MOV endcount1,#0x00
MOV endcount2,#0x29
SJMP ir5
ir4: MOV endcount1,#0x00
MOV endcount2,#0x0F
ir5: CLR A
MOV flag,A
MOV count1,A
MOV count2,A
ir6: CLR C
MOV A,count2
SUBB A,endcount2
MOV A,count1
SUBB A,endcount1
JC ir6
MOV A,R6
MOV C,0xE0.7
RRC A
MOV R6,A
INC R5
CJNE R5,#0x00,ir7
INC R4
ir7: MOV A,R5
XRL A,#flag
ORL A,R4
JNZ ir8
MOV R6,iraddr2
CLR A
MOV R4,A
MOV R5,A
ir13: MOV endcount1,#0x00
MOV endcount2,#iraddr2
MOV flag,#0x01
CLR A
MOV count1,A
MOV count2,A
ir9: CLR C
MOV A,count2
SUBB A,endcount2
MOV A,count1
SUBB A,endcount1
JC ir9
MOV A,R6
MOV C,0xE0.7
RRC A
ADD A,ACC
MOV R3,A
CLR C
MOV A,R6
SUBB A,R3
JZ ir10
MOV endcount1,#0x00
MOV endcount2,#0x29
SJMP ir11
ir10: MOV endcount1,#0x00
MOV endcount2,#0x0F
ir11: CLR A
MOV flag,A
MOV count1,A
MOV count2,A
ir12: CLR C
MOV A,count2
SUBB A,endcount2
MOV A,count1
SUBB A,endcount1
JC ir12
MOV A,R6
MOV C,0xE0.7
RRC A
MOV R6,A
INC R5
CJNE R5,#0x00,ir14
INC R4
ir14: MOV A,R5
XRL A,#flag
ORL A,R4
JNZ ir13
MOV R6,0x07
CLR A
MOV R4,A
MOV R5,A
ir20: MOV endcount1,#0x00
MOV endcount2,#iraddr2
MOV flag,#0x01
CLR A
MOV count1,A
MOV count2,A
ir15: CLR C
MOV A,count2
SUBB A,endcount2
MOV A,count1
SUBB A,endcount1
JC ir15
MOV A,R6
MOV C,0xE0.7
RRC A
ADD A,ACC
MOV R3,A
CLR C
MOV A,R6
SUBB A,R3
JZ ir16
MOV endcount1,#0x00
MOV endcount2,#0x29
SJMP ir17
ir16: MOV endcount1,#0x00
MOV endcount2,#0x0F
ir17: CLR A
MOV flag,A
MOV count1,A
MOV count2,A
ir18: CLR C
MOV A,count2
SUBB A,endcount2
MOV A,count1
SUBB A,endcount1
JC ir18
MOV A,R6
MOV C,0xE0.7
RRC A
MOV R6,A
INC R5
CJNE R5,#0x00,ir19
INC R4
ir19: MOV A,R5
XRL A,#flag
ORL A,R4
JNZ ir20
MOV A,R7
CPL A
MOV R6,A
CLR A
MOV R4,A
MOV R5,A
ir26: MOV endcount1,#0x00
MOV endcount2,#iraddr2
MOV flag,#0x01
CLR A
MOV count1,A
MOV count2,A
ir21: CLR C
MOV A,count2
SUBB A,endcount2
MOV A,count1
SUBB A,endcount1
JC ir21
MOV A,R6
MOV C,0xE0.7
RRC A
ADD A,ACC
MOV R7,A
CLR C
MOV A,R6
SUBB A,R7
JZ ir22
MOV endcount1,#0x00
MOV endcount2,#0x29
SJMP ir23
ir22: MOV endcount1,#0x00
MOV endcount2,#0x0F
ir23: CLR A
MOV flag,A
MOV count1,A
MOV count2,A
ir24: CLR C
MOV A,count2
SUBB A,endcount2
MOV A,count1
SUBB A,endcount1
JC ir24
MOV A,R6
MOV C,0xE0.7
RRC A
MOV R6,A
INC R5
CJNE R5,#0x00,ir25
INC R4
ir25: MOV A,R5
XRL A,#flag
ORL A,R4
JNZ ir26
MOV endcount1,#0x00
MOV endcount2,#iraddr2
MOV flag,#0x01
CLR A
MOV count1,A
MOV count2,A
ir27: CLR C
MOV A,count2
SUBB A,endcount2
MOV A,count1
SUBB A,endcount1
JC ir27
CLR A
MOV flag,A
RET
delay:
CLR A
MOV R7,A
MOV R6,A
delay4: CLR A
MOV R5,A
MOV R4,A
delay5: INC R5
CJNE R5,#0x00,delay1
INC R4
delay1: MOV A,R5
XRL A,#0x64
ORL A,R4
JNZ delay5
INC R7
CJNE R7,#0x00,delay2
INC R6
delay2: CJNE R6,#0x01,delay4
CJNE R7,#P1,delay4
RET
begai: MOV R0,#0x7F
CLR A
delay3:MOV @R0,A
DJNZ R0,delay3
MOV SP,#0x20
LJMP main
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -