📄 i2c.lst
字号:
0017 C3 CLR C
0018 22 RET
0019 ?C0016:
; SOURCE LINE # 151
0019 AF01 MOV R7,AR1
001B 120000 R LCALL _I2C_WriteByte
; SOURCE LINE # 152
001E 200002 R JB ACK,?C0017
0021 C3 CLR C
0022 22 RET
0023 ?C0017:
; SOURCE LINE # 153
0023 AF03 MOV R7,AR3
0025 120000 R LCALL _I2C_WriteByte
; SOURCE LINE # 154
0028 200002 R JB ACK,?C0018
002B C3 CLR C
002C 22 RET
002D ?C0018:
; SOURCE LINE # 155
002D 120000 R LCALL I2C_Stop
; SOURCE LINE # 156
0030 D3 SETB C
C51 COMPILER V7.04 I2C 12/26/2007 09:33:09 PAGE 11
; SOURCE LINE # 157
0031 ?C0015:
0031 22 RET
; FUNCTION _NVM_WriteB (END)
; FUNCTION _NVM_ReadB (BEGIN)
; SOURCE LINE # 165
0000 8F00 R MOV sla,R7
;---- Variable 'addr' assigned to Register 'R4/R5' ----
;---- Variable 'ch' assigned to Register 'R1/R2/R3' ----
; SOURCE LINE # 166
; SOURCE LINE # 168
0002 ED MOV A,R5
0003 F500 R MOV laddr,A
; SOURCE LINE # 169
;---- Variable 'haddr' assigned to Register 'R4' ----
; SOURCE LINE # 170
0005 120000 R LCALL I2C_Start
; SOURCE LINE # 171
0008 AF00 R MOV R7,sla
000A 120000 R LCALL _I2C_WriteByte
; SOURCE LINE # 172
000D 200002 R JB ACK,?C0019
0010 C3 CLR C
0011 22 RET
0012 ?C0019:
; SOURCE LINE # 173
0012 AF04 MOV R7,AR4
0014 120000 R LCALL _I2C_WriteByte
; SOURCE LINE # 174
0017 200002 R JB ACK,?C0021
001A C3 CLR C
001B 22 RET
001C ?C0021:
; SOURCE LINE # 175
001C AF00 R MOV R7,laddr
001E 120000 R LCALL _I2C_WriteByte
; SOURCE LINE # 176
0021 200002 R JB ACK,?C0022
0024 C3 CLR C
0025 22 RET
0026 ?C0022:
; SOURCE LINE # 177
0026 120000 R LCALL I2C_Start
; SOURCE LINE # 178
0029 E500 R MOV A,sla
002B 04 INC A
002C FF MOV R7,A
002D 120000 R LCALL _I2C_WriteByte
; SOURCE LINE # 179
0030 200002 R JB ACK,?C0023
0033 C3 CLR C
0034 22 RET
0035 ?C0023:
; SOURCE LINE # 180
0035 120000 R LCALL I2C_ReadByte
0038 EF MOV A,R7
0039 120000 E LCALL ?C?CSTPTR
; SOURCE LINE # 181
003C 120000 R LCALL I2C_NoACK
; SOURCE LINE # 182
003F 120000 R LCALL I2C_Stop
C51 COMPILER V7.04 I2C 12/26/2007 09:33:09 PAGE 12
; SOURCE LINE # 183
0042 D3 SETB C
; SOURCE LINE # 184
0043 ?C0020:
0043 22 RET
; FUNCTION _NVM_ReadB (END)
; FUNCTION _NVM_WriteStr (BEGIN)
; SOURCE LINE # 192
0000 8F00 R MOV sla,R7
0002 8B00 R MOV str,R3
0004 8A00 R MOV str+01H,R2
0006 8900 R MOV str+02H,R1
;---- Variable 'addr' assigned to Register 'R4/R5' ----
; SOURCE LINE # 193
; SOURCE LINE # 196
0008 ED MOV A,R5
;---- Variable 'laddr' assigned to Register 'R3' ----
0009 FB MOV R3,A
; SOURCE LINE # 197
;---- Variable 'haddr' assigned to Register 'R4' ----
; SOURCE LINE # 198
000A 120000 R LCALL I2C_Start
; SOURCE LINE # 199
000D AF00 R MOV R7,sla
000F 120000 R LCALL _I2C_WriteByte
; SOURCE LINE # 200
0012 200002 R JB ACK,?C0024
0015 C3 CLR C
0016 22 RET
0017 ?C0024:
; SOURCE LINE # 201
0017 AF04 MOV R7,AR4
0019 120000 R LCALL _I2C_WriteByte
; SOURCE LINE # 202
001C 200002 R JB ACK,?C0026
001F C3 CLR C
0020 22 RET
0021 ?C0026:
; SOURCE LINE # 203
0021 AF03 MOV R7,AR3
0023 120000 R LCALL _I2C_WriteByte
; SOURCE LINE # 204
0026 200002 R JB ACK,?C0027
0029 C3 CLR C
002A 22 RET
002B ?C0027:
; SOURCE LINE # 205
;---- Variable 'index' assigned to Register 'R4' ----
002B E4 CLR A
002C FC MOV R4,A
002D ?C0028:
002D EC MOV A,R4
002E C3 CLR C
002F 9500 R SUBB A,length
0031 501A JNC ?C0029
; SOURCE LINE # 206
; SOURCE LINE # 207
0033 AB00 R MOV R3,str
0035 AA00 R MOV R2,str+01H
0037 A900 R MOV R1,str+02H
0039 8C82 MOV DPL,R4
C51 COMPILER V7.04 I2C 12/26/2007 09:33:09 PAGE 13
003B 758300 MOV DPH,#00H
003E 120000 E LCALL ?C?CLDOPTR
0041 FF MOV R7,A
;---- Variable 'temp' assigned to Register 'R7' ----
; SOURCE LINE # 208
0042 120000 R LCALL _I2C_WriteByte
; SOURCE LINE # 209
0045 200002 R JB ACK,?C0030
0048 C3 CLR C
0049 22 RET
; SOURCE LINE # 210
004A ?C0030:
004A 0C INC R4
004B 80E0 SJMP ?C0028
004D ?C0029:
; SOURCE LINE # 211
004D 120000 R LCALL I2C_Stop
; SOURCE LINE # 212
0050 D3 SETB C
; SOURCE LINE # 213
0051 ?C0025:
0051 22 RET
; FUNCTION _NVM_WriteStr (END)
; FUNCTION _NVM_ReadStr (BEGIN)
; SOURCE LINE # 221
0000 8F00 R MOV sla,R7
0002 8B00 R MOV str,R3
0004 8A00 R MOV str+01H,R2
0006 8900 R MOV str+02H,R1
;---- Variable 'addr' assigned to Register 'R4/R5' ----
; SOURCE LINE # 222
; SOURCE LINE # 225
0008 ED MOV A,R5
;---- Variable 'laddr' assigned to Register 'R3' ----
0009 FB MOV R3,A
; SOURCE LINE # 226
;---- Variable 'haddr' assigned to Register 'R4' ----
; SOURCE LINE # 227
000A 120000 R LCALL I2C_Start
; SOURCE LINE # 228
000D AF00 R MOV R7,sla
000F 120000 R LCALL _I2C_WriteByte
; SOURCE LINE # 229
0012 200002 R JB ACK,?C0032
0015 C3 CLR C
0016 22 RET
0017 ?C0032:
; SOURCE LINE # 230
0017 AF04 MOV R7,AR4
0019 120000 R LCALL _I2C_WriteByte
; SOURCE LINE # 231
001C 200002 R JB ACK,?C0034
001F C3 CLR C
0020 22 RET
0021 ?C0034:
; SOURCE LINE # 232
0021 AF03 MOV R7,AR3
0023 120000 R LCALL _I2C_WriteByte
; SOURCE LINE # 233
0026 200002 R JB ACK,?C0035
0029 C3 CLR C
C51 COMPILER V7.04 I2C 12/26/2007 09:33:09 PAGE 14
002A 22 RET
002B ?C0035:
; SOURCE LINE # 234
002B 120000 R LCALL I2C_Start
; SOURCE LINE # 235
002E E500 R MOV A,sla
0030 04 INC A
0031 FF MOV R7,A
0032 120000 R LCALL _I2C_WriteByte
; SOURCE LINE # 236
0035 200002 R JB ACK,?C0036
0038 C3 CLR C
0039 22 RET
003A ?C0036:
; SOURCE LINE # 237
;---- Variable 'index' assigned to Register 'R4' ----
003A E4 CLR A
003B FC MOV R4,A
003C ?C0037:
003C EC MOV A,R4
003D C3 CLR C
003E 9500 R SUBB A,length
0040 5018 JNC ?C0038
; SOURCE LINE # 238
; SOURCE LINE # 239
0042 120000 R LCALL I2C_ReadByte
0045 AB00 R MOV R3,str
0047 AA00 R MOV R2,str+01H
0049 A900 R MOV R1,str+02H
004B 8C82 MOV DPL,R4
004D 758300 MOV DPH,#00H
0050 EF MOV A,R7
0051 120000 E LCALL ?C?CSTOPTR
; SOURCE LINE # 240
0054 120000 R LCALL I2C_ACK
; SOURCE LINE # 241
0057 0C INC R4
0058 80E2 SJMP ?C0037
005A ?C0038:
; SOURCE LINE # 242
005A 120000 R LCALL I2C_NoACK
; SOURCE LINE # 243
005D 120000 R LCALL I2C_Stop
; SOURCE LINE # 244
0060 D3 SETB C
; SOURCE LINE # 245
0061 ?C0033:
0061 22 RET
; FUNCTION _NVM_ReadStr (END)
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 473 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 16
IDATA SIZE = ---- ----
BIT SIZE = 1 ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -