- ; FUNCTION receive (BEGIN)
- ;---- Variable 'i' assigned to Register 'R5' ----
- CLR A
- MOV R5,A
- ;---- Variable 'k' assigned to Register 'R2/R3' ----
- MOV R3,A
- MOV R2,A
- MOV P0,A
- JB in,?C0012
- ?C0009:
- JB in,?C0010
- INC R3
- CJNE R3,#00H,?C0035
- INC R2
- ?C0035:
- R LCALL delay80us
- SETB C
- MOV A,R3
- SUBB A,#0DCH
- MOV A,R2
- SUBB A,#00H
- JC ?C0009
- SJMP ?C0039
- ?C0010:
- CLR C
- MOV A,R3
- SUBB A,#068H
- MOV A,R2
- SUBB A,#00H
- JNC ?C0013
- ?C0036:
- SJMP ?C0039
- ?C0013:
- ;---- Variable 'count' assigned to Register 'R4' ----
- CLR A
- MOV R4,A
- ?C0014:
- JNB in,?C0027
- MOV A,P0
- ADD A,ACC
- MOV P0,A
- CLR A
- MOV R5,A
- ?C0018:
- JNB in,?C0019
- R LCALL delay80us
- INC R5
- MOV A,R5
- SETB C
- SUBB A,#017H
- JC ?C0018
- ?C0037:
- SJMP ?C0039
- ?C0019:
- MOV A,R5
- CLR C
- SUBB A,#0AH
- JNC ?C0021
- MOV A,#02H
- CLR C
- SUBB A,R5
- JNC ?C0022
- MOV A,R5
- CLR C
- SUBB A,#09H
- JC ?C0027
- ?C0022:
- ?C0038:
- SJMP ?C0039
- ?C0021:
- MOV A,#0CH
- CLR C
- SUBB A,R5
- JNC ?C0025
- MOV A,R5
- CLR C
- SUBB A,#017H
- JNC ?C0025
- ORL P0,#01H
- SJMP ?C0027
- ?C0025:
- ?C0039:
- CLR A
- MOV P0,A
- RET
- ?C0027:
- JB in,?C0016
- R LCALL delay80us
- SJMP ?C0027
- ?C0016:
- INC R4
- MOV A,R4
- XRL A,#018H
- JNZ ?C0014
- ?C0012:
- RET
- ; FUNCTION receive (END)
- ; FUNCTION sjzh (BEGIN)
- ;---- Variable 'i' assigned to Register 'R7' ----
- MOV A,P0
- SETB C
- SUBB A,#00H
- JC ?C0029
- MOV R7,#02H
- ?C0030:
- R MOV A,#LOW D
- ADD A,R7
- MOV R0,A
- MOV @R0,P0
- MOV P0,#00H
- DEC R7
- CLR C
- MOV A,R7
- XRL A,#080H
- SUBB A,#080H
- JNC ?C0030
- ?C0029:
- CLR A
- MOV P0,A
- RET
- ; FUNCTION sjzh (END)
復制代碼 |