📄 i2c.lst
字号:
0003 D280 SETB SCL
; SOURCE LINE # 28
0005 00 NOP
0006 00 NOP
0007 00 NOP
0008 00 NOP
0009 00 NOP
; SOURCE LINE # 29
000A C281 CLR SDA
; SOURCE LINE # 30
000C 00 NOP
000D 00 NOP
000E 00 NOP
000F 00 NOP
0010 00 NOP
; SOURCE LINE # 31
0011 C280 CLR SCL
; SOURCE LINE # 32
0013 00 NOP
; SOURCE LINE # 33
0014 00 NOP
; SOURCE LINE # 34
0015 22 RET
; FUNCTION I2C_Start (END)
; FUNCTION I2C_Stop (BEGIN)
; SOURCE LINE # 38
; SOURCE LINE # 39
; SOURCE LINE # 40
0000 C281 CLR SDA
; SOURCE LINE # 41
0002 00 NOP
; SOURCE LINE # 42
0003 00 NOP
; SOURCE LINE # 43
0004 D280 SETB SCL
; SOURCE LINE # 44
0006 00 NOP
0007 00 NOP
0008 00 NOP
0009 00 NOP
000A 00 NOP
; SOURCE LINE # 45
000B D281 SETB SDA
; SOURCE LINE # 46
000D 00 NOP
000E 00 NOP
000F 00 NOP
0010 00 NOP
0011 00 NOP
; SOURCE LINE # 47
C51 COMPILER V7.04 I2C 12/26/2007 09:33:09 PAGE 7
0012 22 RET
; FUNCTION I2C_Stop (END)
; FUNCTION I2C_ACK (BEGIN)
; SOURCE LINE # 51
; SOURCE LINE # 52
; SOURCE LINE # 53
0000 C281 CLR SDA
; SOURCE LINE # 54
0002 00 NOP
; SOURCE LINE # 55
0003 00 NOP
; SOURCE LINE # 56
0004 D280 SETB SCL
; SOURCE LINE # 57
0006 00 NOP
0007 00 NOP
0008 00 NOP
0009 00 NOP
000A 00 NOP
; SOURCE LINE # 58
000B C280 CLR SCL
; SOURCE LINE # 59
000D 00 NOP
; SOURCE LINE # 60
000E 00 NOP
; SOURCE LINE # 61
000F 22 RET
; FUNCTION I2C_ACK (END)
; FUNCTION I2C_NoACK (BEGIN)
; SOURCE LINE # 66
; SOURCE LINE # 67
; SOURCE LINE # 68
0000 D281 SETB SDA
; SOURCE LINE # 69
0002 00 NOP
; SOURCE LINE # 70
0003 00 NOP
; SOURCE LINE # 71
0004 D280 SETB SCL
; SOURCE LINE # 72
0006 00 NOP
0007 00 NOP
0008 00 NOP
0009 00 NOP
000A 00 NOP
; SOURCE LINE # 73
000B C280 CLR SCL
; SOURCE LINE # 74
000D 00 NOP
; SOURCE LINE # 75
000E 00 NOP
; SOURCE LINE # 76
000F 22 RET
; FUNCTION I2C_NoACK (END)
; FUNCTION _I2C_WriteByte (BEGIN)
; SOURCE LINE # 80
;---- Variable 'ch' assigned to Register 'R7' ----
; SOURCE LINE # 81
; SOURCE LINE # 82
C51 COMPILER V7.04 I2C 12/26/2007 09:33:09 PAGE 8
;---- Variable 'index' assigned to Register 'R6' ----
0000 7E08 MOV R6,#08H
0002 ?C0005:
; SOURCE LINE # 83
0002 AD06 MOV R5,AR6
0004 1E DEC R6
0005 ED MOV A,R5
0006 601A JZ ?C0006
; SOURCE LINE # 84
; SOURCE LINE # 85
0008 C280 CLR SCL
; SOURCE LINE # 86
000A 00 NOP
; SOURCE LINE # 87
000B 00 NOP
; SOURCE LINE # 88
000C EF MOV A,R7
000D 33 RLC A
000E 9281 MOV SDA,C
; SOURCE LINE # 89
0010 00 NOP
0011 00 NOP
0012 00 NOP
0013 00 NOP
0014 00 NOP
; SOURCE LINE # 90
0015 D280 SETB SCL
; SOURCE LINE # 91
0017 00 NOP
0018 00 NOP
0019 00 NOP
001A 00 NOP
001B 00 NOP
; SOURCE LINE # 92
001C EF MOV A,R7
001D 25E0 ADD A,ACC
001F FF MOV R7,A
; SOURCE LINE # 93
0020 80E0 SJMP ?C0005
0022 ?C0006:
; SOURCE LINE # 94
0022 C280 CLR SCL
; SOURCE LINE # 95
0024 00 NOP
; SOURCE LINE # 96
0025 00 NOP
; SOURCE LINE # 97
0026 D281 SETB SDA
; SOURCE LINE # 98
0028 00 NOP
; SOURCE LINE # 99
0029 00 NOP
; SOURCE LINE # 100
002A D280 SETB SCL
; SOURCE LINE # 101
002C 00 NOP
; SOURCE LINE # 102
002D 00 NOP
; SOURCE LINE # 103
002E 00 NOP
; SOURCE LINE # 104
002F 308104 JNB SDA,?C0007
C51 COMPILER V7.04 I2C 12/26/2007 09:33:09 PAGE 9
0032 C200 R CLR ACK
0034 8002 SJMP ?C0008
0036 ?C0007:
; SOURCE LINE # 105
0036 D200 R SETB ACK
0038 ?C0008:
; SOURCE LINE # 106
0038 C280 CLR SCL
; SOURCE LINE # 107
003A 00 NOP
; SOURCE LINE # 108
003B 00 NOP
; SOURCE LINE # 109
003C 22 RET
; FUNCTION _I2C_WriteByte (END)
; FUNCTION I2C_ReadByte (BEGIN)
; SOURCE LINE # 113
; SOURCE LINE # 114
; SOURCE LINE # 115
;---- Variable 'index' assigned to Register 'R7' ----
0000 7F08 MOV R7,#08H
; SOURCE LINE # 116
;---- Variable 'Data' assigned to Register 'R6' ----
0002 E4 CLR A
0003 FE MOV R6,A
; SOURCE LINE # 117
0004 D281 SETB SDA
0006 ?C0010:
; SOURCE LINE # 118
0006 AD07 MOV R5,AR7
0008 1F DEC R7
0009 ED MOV A,R5
000A 6016 JZ ?C0011
; SOURCE LINE # 119
; SOURCE LINE # 120
000C EE MOV A,R6
000D 25E0 ADD A,ACC
000F FE MOV R6,A
; SOURCE LINE # 121
0010 00 NOP
; SOURCE LINE # 122
0011 C280 CLR SCL
; SOURCE LINE # 123
0013 00 NOP
0014 00 NOP
0015 00 NOP
0016 00 NOP
0017 00 NOP
; SOURCE LINE # 124
0018 D280 SETB SCL
; SOURCE LINE # 125
001A 00 NOP
; SOURCE LINE # 126
001B 00 NOP
; SOURCE LINE # 127
001C 3081E7 JNB SDA,?C0010
001F 0E INC R6
; SOURCE LINE # 128
0020 80E4 SJMP ?C0010
0022 ?C0011:
; SOURCE LINE # 129
C51 COMPILER V7.04 I2C 12/26/2007 09:33:09 PAGE 10
0022 C280 CLR SCL
; SOURCE LINE # 130
0024 00 NOP
; SOURCE LINE # 131
0025 00 NOP
; SOURCE LINE # 132
0026 AF06 MOV R7,AR6
; SOURCE LINE # 133
0028 ?C0013:
0028 22 RET
; FUNCTION I2C_ReadByte (END)
; FUNCTION _NVM_WriteB (BEGIN)
; SOURCE LINE # 141
;---- Variable 'addr' assigned to Register 'R4/R5' ----
;---- Variable 'ch' assigned to Register 'R3' ----
;---- Variable 'sla' assigned to Register 'R2' ----
0000 AA07 MOV R2,AR7
; SOURCE LINE # 142
; SOURCE LINE # 144
0002 ED MOV A,R5
;---- Variable 'laddr' assigned to Register 'R1' ----
0003 F9 MOV R1,A
; SOURCE LINE # 145
;---- Variable 'haddr' assigned to Register 'R4' ----
; SOURCE LINE # 146
0004 120000 R LCALL I2C_Start
; SOURCE LINE # 147
0007 120000 R LCALL _I2C_WriteByte
; SOURCE LINE # 148
000A 200002 R JB ACK,?C0014
000D C3 CLR C
000E 22 RET
000F ?C0014:
; SOURCE LINE # 149
000F AF04 MOV R7,AR4
0011 120000 R LCALL _I2C_WriteByte
; SOURCE LINE # 150
0014 200002 R JB ACK,?C0016
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -