📄 12.lst
字号:
614 1
615 1 }
C51 COMPILER V8.02 12 10/10/2008 16:05:55 PAGE 12
ASSEMBLY LISTING OF GENERATED OBJECT CODE
; FUNCTION L?0153 (BEGIN)
0000 L?0154:
0000 7F64 MOV R7,#064H
0002 7E00 MOV R6,#00H
0004 L?0155:
0004 7D00 MOV R5,#00H
0006 7C00 MOV R4,#00H
; FUNCTION _delay (BEGIN)
; SOURCE LINE # 57
; SOURCE LINE # 58
0008 8030 SJMP ?C0150
000A ?C0001:
; SOURCE LINE # 59
000A 7800 R MOV R0,#LOW t
000C E2 MOVX A,@R0
000D FC MOV R4,A
000E 08 INC R0
000F E2 MOVX A,@R0
0010 FD MOV R5,A
0011 08 INC R0
0012 E2 MOVX A,@R0
0013 FE MOV R6,A
0014 08 INC R0
0015 E2 MOVX A,@R0
0016 FF MOV R7,A
0017 EC MOV A,R4
0018 4D ORL A,R5
0019 4E ORL A,R6
001A 4F ORL A,R7
001B 6024 JZ ?C0003
; SOURCE LINE # 60
001D 7800 R MOV R0,#LOW t
001F E2 MOVX A,@R0
0020 FC MOV R4,A
0021 08 INC R0
0022 E2 MOVX A,@R0
0023 FD MOV R5,A
0024 08 INC R0
0025 E2 MOVX A,@R0
0026 FE MOV R6,A
0027 08 INC R0
0028 E2 MOVX A,@R0
0029 FF MOV R7,A
002A EF MOV A,R7
002B 24FF ADD A,#0FFH
002D FF MOV R7,A
002E EE MOV A,R6
002F 34FF ADDC A,#0FFH
0031 FE MOV R6,A
0032 ED MOV A,R5
0033 34FF ADDC A,#0FFH
0035 FD MOV R5,A
0036 EC MOV A,R4
0037 34FF ADDC A,#0FFH
0039 FC MOV R4,A
003A ?C0150:
003A 7800 R MOV R0,#LOW t
003C 120000 E LCALL ?C?LSTPDATA
003F 80C9 SJMP ?C0001
C51 COMPILER V8.02 12 10/10/2008 16:05:55 PAGE 13
; SOURCE LINE # 61
0041 ?C0003:
0041 22 RET
; FUNCTION _delay (END)
; FUNCTION WaitTillNotBusy (BEGIN)
; SOURCE LINE # 76
; SOURCE LINE # 77
; SOURCE LINE # 78
;---- Variable 'delay' assigned to Register 'R6/R7' ----
0000 74FF MOV A,#0FFH
0002 FF MOV R7,A
0003 FE MOV R6,A
; SOURCE LINE # 80
0004 F580 MOV P0,A
; SOURCE LINE # 82
0006 D2A0 SETB lcd_cs
; SOURCE LINE # 83
0008 C2A2 CLR lcd_rs
; SOURCE LINE # 84
000A D2A1 SETB lcd_rw
000C ?C0004:
; SOURCE LINE # 85
000C E580 MOV A,P0
000E 30E70B JNB ACC.7,?C0005
0011 EF MOV A,R7
0012 4E ORL A,R6
0013 6007 JZ ?C0005
; SOURCE LINE # 86
0015 EF MOV A,R7
0016 1F DEC R7
0017 70F3 JNZ ?C0004
0019 1E DEC R6
001A ?C0137:
001A 80F0 SJMP ?C0004
001C ?C0005:
; SOURCE LINE # 87
001C C2A0 CLR lcd_cs
; SOURCE LINE # 88
001E EF MOV A,R7
001F 4E ORL A,R6
0020 7002 JNZ ?C0006
; SOURCE LINE # 89
0022 C3 CLR C
0023 22 RET
0024 ?C0006:
; SOURCE LINE # 91
0024 D3 SETB C
; SOURCE LINE # 92
0025 ?C0007:
0025 22 RET
; FUNCTION WaitTillNotBusy (END)
; FUNCTION _LocateXY (BEGIN)
; SOURCE LINE # 94
;---- Variable 'posx' assigned to Register 'R7' ----
;---- Variable 'posy' assigned to Register 'R5' ----
; SOURCE LINE # 95
; SOURCE LINE # 96
0000 ED MOV A,R5
0001 5401 ANL A,#01H
0003 FD MOV R5,A
C51 COMPILER V8.02 12 10/10/2008 16:05:55 PAGE 14
; SOURCE LINE # 97
0004 B40104 CJNE A,#01H,?C0008
; SOURCE LINE # 98
0007 EF MOV A,R7
0008 4440 ORL A,#040H
000A FF MOV R7,A
000B ?C0008:
; SOURCE LINE # 99
000B EF MOV A,R7
000C 4480 ORL A,#080H
000E FF MOV R7,A
; SOURCE LINE # 101
000F 120000 R LCALL _LcdWCMD
; SOURCE LINE # 102
0012 ?C0009:
0012 22 RET
; FUNCTION _LocateXY (END)
; FUNCTION _LcdWCMD (BEGIN)
; SOURCE LINE # 105
;---- Variable 'CMD' assigned to Register 'R5' ----
0000 AD07 MOV R5,AR7
; SOURCE LINE # 106
; SOURCE LINE # 107
;---- Variable 'i' assigned to Register 'R4' ----
0002 7C01 MOV R4,#01H
; SOURCE LINE # 109
0004 120000 R LCALL WaitTillNotBusy
0007 4001 JC ?C0010
; SOURCE LINE # 110
0009 22 RET
000A ?C0010:
; SOURCE LINE # 112
000A AF05 MOV R7,AR5
000C 8F80 MOV P0,R7
; SOURCE LINE # 113
000E C2A2 CLR lcd_rs
; SOURCE LINE # 114
0010 C2A1 CLR lcd_rw
; SOURCE LINE # 115
0012 D2A0 SETB lcd_cs
0014 ?C0012:
; SOURCE LINE # 116
0014 AF04 MOV R7,AR4
0016 0C INC R4
0017 EF MOV A,R7
0018 70FA JNZ ?C0012
001A ?C0013:
; SOURCE LINE # 117
001A C2A0 CLR lcd_cs
; SOURCE LINE # 119
001C D3 SETB C
; SOURCE LINE # 120
001D ?C0011:
001D 22 RET
; FUNCTION _LcdWCMD (END)
; FUNCTION _LcdWData (BEGIN)
; SOURCE LINE # 123
;---- Variable 'dataW' assigned to Register 'R5' ----
0000 AD07 MOV R5,AR7
; SOURCE LINE # 124
C51 COMPILER V8.02 12 10/10/2008 16:05:55 PAGE 15
; SOURCE LINE # 126
;---- Variable 'i' assigned to Register 'R4' ----
0002 7C01 MOV R4,#01H
; SOURCE LINE # 128
0004 120000 R LCALL WaitTillNotBusy
0007 4001 JC ?C0014
; SOURCE LINE # 129
0009 22 RET
000A ?C0014:
; SOURCE LINE # 132
000A AF05 MOV R7,AR5
000C 8F80 MOV P0,R7
; SOURCE LINE # 133
000E D2A2 SETB lcd_rs
; SOURCE LINE # 134
0010 C2A1 CLR lcd_rw
; SOURCE LINE # 135
0012 D2A0 SETB lcd_cs
0014 ?C0016:
; SOURCE LINE # 136
0014 AF04 MOV R7,AR4
0016 0C INC R4
0017 EF MOV A,R7
0018 70FA JNZ ?C0016
001A ?C0017:
; SOURCE LINE # 137
001A C2A0 CLR lcd_cs
; SOURCE LINE # 139
001C D3 SETB C
; SOURCE LINE # 140
001D ?C0015:
001D 22 RET
; FUNCTION _LcdWData (END)
; FUNCTION LCDInit (BEGIN)
; SOURCE LINE # 147
; SOURCE LINE # 148
; SOURCE LINE # 151
0000 7F38 MOV R7,#038H
0002 120000 R LCALL _LcdWCMD
0005 5017 JNC ?C0018
0007 7F06 MOV R7,#06H
0009 120000 R LCALL _LcdWCMD
000C 5010 JNC ?C0018
000E 7F0C MOV R7,#0CH
0010 120000 R LCALL _LcdWCMD
0013 5009 JNC ?C0018
0015 7F01 MOV R7,#01H
0017 120000 R LCALL _LcdWCMD
001A 5002 JNC ?C0018
001C 8001 SJMP ?C0019
001E ?C0018:
001E C3 CLR C
001F ?C0019:
; SOURCE LINE # 153
001F ?C0020:
001F 22 RET
; FUNCTION LCDInit (END)
; FUNCTION _DisplayOneChar (BEGIN)
; SOURCE LINE # 155
0000 7800 R MOV R0,#LOW Wdata
C51 COMPILER V8.02 12 10/10/2008 16:05:55 PAGE 16
0002 EB MOV A,R3
0003 F2 MOVX @R0,A
;---- Variable 'y' assigned to Register 'R5' ----
;---- Variable 'x' assigned to Register 'R7' ----
; SOURCE LINE # 156
; SOURCE LINE # 158
0004 EF MOV A,R7
0005 C3 CLR C
0006 9400 SUBB A,#00H
0008 4021 JC ?C0021
000A EF MOV A,R7
000B 9410 SUBB A,#010H
000D 501C JNC ?C0021
000F ED MOV A,R5
0010 C3 CLR C
0011 9400 SUBB A,#00H
0013 4016 JC ?C0021
0015 ED MOV A,R5
0016 9402 SUBB A,#02H
0018 5011 JNC ?C0021
; SOURCE LINE # 159
001A 120000 R LCALL _LocateXY
001D 500A JNC ?C0022
001F 7800 R MOV R0,#LOW Wdata
0021 E2 MOVX A,@R0
0022 FF MOV R7,A
0023 120000 R LCALL _LcdWData
0026 5001 JNC ?C0022
0028 22 RET
0029 ?C0022:
0029 C3 CLR C
002A ?C0023:
002A 22 RET
002B ?C0021:
; SOURCE LINE # 161
002B 120000 R LCALL LCDInit
002E 5018 JNC ?C0026
0030 900000 R MOV DPTR,#WrtieLcdErr
0033 E4 CLR A
0034 93 MOVC A,@A+DPTR
0035 FB MOV R3,A
0036 7401 MOV A,#01H
0038 93 MOVC A,@A+DPTR
0039 FA MOV R2,A
003A 7402 MOV A,#02H
003C 93 MOVC A,@A+DPTR
003D F9 MOV R1,A
003E E4 CLR A
003F FD MOV R5,A
0040 FF MOV R7,A
0041 120000 R LCALL _DisplayString
0044 5002 JNC ?C0026
0046 8001 SJMP ?C0027
0048 ?C0026:
0048 C3 CLR C
0049 ?C0027:
; SOURCE LINE # 162
0049 ?C0024:
0049 22 RET
; FUNCTION _DisplayOneChar (END)
; FUNCTION L?0156 (BEGIN)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -