📄 i2c.lst
字号:
1 .file "i2c.c"
2 __SREG__ = 0x3f
3 __SP_H__ = 0x3e
4 __SP_L__ = 0x3d
5 __tmp_reg__ = 0
6 __zero_reg__ = 1
7 .global __do_copy_data
8 .global __do_clear_bss
16 .Ltext0:
17 .global EEPROMWriteByte
19 EEPROMWriteByte:
20 .LFB3:
21 .LM1:
22 /* prologue: frame size=0 */
23 /* prologue end (size=0) */
24 .LVL0:
25 .LM2:
26 /* #APP */
27 0000 A895 wdr
28 /* #NOAPP */
29 .L2:
30 .LM3:
31 0002 E199 sbic 60-0x20,1
32 0004 00C0 rjmp .L2
33 .L6:
34 .LM4:
35 0006 07B6 in __tmp_reg__,87-0x20
36 0008 06FC sbrc __tmp_reg__,6
37 000a 00C0 rjmp .L6
38 .LM5:
39 000c 9FBB out (62)+1-0x20,r25
40 000e 8EBB out 62-0x20,r24
41 .LM6:
42 0010 6DBB out 61-0x20,r22
43 .LM7:
44 /* #APP */
45 0012 F894 cli
46 .LM8:
47 /* #NOAPP */
48 0014 E29A sbi 60-0x20,2
49 .LM9:
50 0016 E19A sbi 60-0x20,1
51 .LM10:
52 /* #APP */
53 0018 7894 sei
54 /* #NOAPP */
55 /* epilogue: frame size=0 */
56 001a 0895 ret
57 /* epilogue end (size=1) */
58 /* function EEPROMWriteByte size 17 (16) */
59 .LFE3:
61 .global EEPROMReadByte
63 EEPROMReadByte:
64 .LFB4:
65 .LM11:
66 /* prologue: frame size=0 */
67 /* prologue end (size=0) */
68 .LVL1:
69 .LM12:
70 /* #APP */
71 001c A895 wdr
72 /* #NOAPP */
73 .L11:
74 .LM13:
75 001e E199 sbic 60-0x20,1
76 0020 00C0 rjmp .L11
77 .L15:
78 .LM14:
79 0022 07B6 in __tmp_reg__,87-0x20
80 0024 06FC sbrc __tmp_reg__,6
81 0026 00C0 rjmp .L15
82 .LM15:
83 0028 9FBB out (62)+1-0x20,r25
84 002a 8EBB out 62-0x20,r24
85 .LM16:
86 002c E09A sbi 60-0x20,0
87 .LM17:
88 002e 8DB3 in r24,61-0x20
89 .LVL2:
90 .LM18:
91 0030 90E0 ldi r25,lo8(0)
92 /* epilogue: frame size=0 */
93 0032 0895 ret
94 /* epilogue end (size=1) */
95 /* function EEPROMReadByte size 13 (12) */
96 .LFE4:
98 .global SaveToEEPROM
100 SaveToEEPROM:
101 .LFB2:
102 .LM19:
103 /* prologue: frame size=0 */
104 0034 1F93 push r17
105 /* prologue end (size=1) */
106 .LM20:
107 0036 8091 0000 lds r24,EEPTm
108 003a 8F5F subi r24,lo8(-(1))
109 003c 8093 0000 sts EEPTm,r24
110 0040 8150 subi r24,lo8(-(-1))
111 0042 8436 cpi r24,lo8(100)
112 0044 00F4 brsh .+2
113 0046 00C0 rjmp .L44
114 .LM21:
115 0048 1092 0000 sts EEPTm,__zero_reg__
116 .LM22:
117 004c 8091 0000 lds r24,EEPCnt
118 0050 8F5F subi r24,lo8(-(1))
119 0052 8093 0000 sts EEPCnt,r24
120 0056 8F30 cpi r24,lo8(15)
121 0058 00F0 brlo .L22
122 005a 1092 0000 sts EEPCnt,__zero_reg__
123 .L22:
124 .LM23:
125 005e 8091 0000 lds r24,EEPCnt
126 0062 8630 cpi r24,lo8(6)
127 0064 01F0 breq .L31
128 0066 8730 cpi r24,lo8(7)
129 0068 00F4 brsh .L38
130 006a 8230 cpi r24,lo8(2)
131 006c 01F0 breq .L27
132 006e 8330 cpi r24,lo8(3)
133 0070 00F4 brsh .L39
134 0072 8823 tst r24
135 0074 01F0 breq .L25
136 0076 8130 cpi r24,lo8(1)
137 0078 01F4 brne .L24
138 007a 00C0 rjmp .L26
139 .L39:
140 007c 8430 cpi r24,lo8(4)
141 007e 01F0 breq .L29
142 0080 8530 cpi r24,lo8(5)
143 0082 00F4 brsh .L30
144 0084 00C0 rjmp .L45
145 .L38:
146 0086 8B30 cpi r24,lo8(11)
147 0088 01F0 breq .L34
148 008a 8C30 cpi r24,lo8(12)
149 008c 00F4 brsh .L40
150 008e 8930 cpi r24,lo8(9)
151 0090 01F0 breq .L32
152 0092 8A30 cpi r24,lo8(10)
153 0094 01F4 brne .L24
154 0096 00C0 rjmp .L33
155 .L40:
156 0098 8D30 cpi r24,lo8(13)
157 009a 01F0 breq .L36
158 009c 8D30 cpi r24,lo8(13)
159 009e 00F0 brlo .L35
160 00a0 8E30 cpi r24,lo8(14)
161 00a2 01F4 brne .L24
162 00a4 00C0 rjmp .L37
163 .L32:
164 00a6 10E8 ldi r17,lo8(-128)
165 .LVL3:
166 00a8 00C0 rjmp .L41
167 .LVL4:
168 .L24:
169 00aa 10E0 ldi r17,lo8(0)
170 .LVL5:
171 00ac 00C0 rjmp .L41
172 .LVL6:
173 .L25:
174 00ae 1DE5 ldi r17,lo8(93)
175 .LVL7:
176 00b0 00C0 rjmp .L41
177 .LVL8:
178 .L26:
179 .LM24:
180 00b2 1091 0000 lds r17,SysConfig
181 .LVL9:
182 00b6 00C0 rjmp .L41
183 .LVL10:
184 .L27:
185 .LM25:
186 00b8 1091 0000 lds r17,SetupTp
187 .LVL11:
188 00bc 00C0 rjmp .L41
189 .LVL12:
190 .L45:
191 .LM26:
192 00be 1091 0000 lds r17,RunMode
193 .LVL13:
194 00c2 00C0 rjmp .L41
195 .LVL14:
196 .L29:
197 .LM27:
198 00c4 1091 0000 lds r17,FanStatus
199 .LVL15:
200 00c8 00C0 rjmp .L41
201 .LVL16:
202 .L30:
203 .LM28:
204 00ca 1091 0000 lds r17,FDoorUnit
205 .LVL17:
206 00ce 00C0 rjmp .L41
207 .LVL18:
208 .L31:
209 .LM29:
210 00d0 1091 0000 lds r17,PowerConst
211 .LVL19:
212 00d4 00C0 rjmp .L41
213 .LVL20:
214 .L33:
215 .LM30:
216 00d6 1091 0000 lds r17,WJ_NJNo
217 .LVL21:
218 00da 00C0 rjmp .L41
219 .LVL22:
220 .L34:
221 .LM31:
222 00dc 1091 0000 lds r17,SetOnCool
223 .LVL23:
224 00e0 00C0 rjmp .L41
225 .LVL24:
226 .L35:
227 .LM32:
228 00e2 1091 0000 lds r17,SetOnHeat
229 .LVL25:
230 00e6 00C0 rjmp .L41
231 .LVL26:
232 .L36:
233 .LM33:
234 00e8 1091 0000 lds r17,SetUnacc
235 .LVL27:
236 00ec 00C0 rjmp .L41
237 .LVL28:
238 .L37:
239 .LM34:
240 00ee 1091 0000 lds r17,SetOn
241 .LVL29:
242 .L41:
243 .LM35:
244 00f2 90E0 ldi r25,lo8(0)
245 00f4 880F lsl r24
246 00f6 991F rol r25
247 00f8 0E94 0000 call EEPROMReadByte
248 00fc 8093 0000 sts EEPBuf0,r24
249 .LM36:
250 0100 8091 0000 lds r24,EEPCnt
251 0104 90E0 ldi r25,lo8(0)
252 0106 880F lsl r24
253 0108 991F rol r25
254 010a 0196 adiw r24,1
255 010c 0E94 0000 call EEPROMReadByte
256 0110 982F mov r25,r24
257 0112 8093 0000 sts EEPBuf1,r24
258 .LM37:
259 0116 8091 0000 lds r24,EEPBuf0
260 011a 1817 cp r17,r24
261 011c 01F4 brne .L42
262 011e 1917 cp r17,r25
263 0120 01F0 breq .L44
264 .L42:
265 .LM38:
266 0122 8091 0000 lds r24,EEPCnt
267 0126 90E0 ldi r25,lo8(0)
268 0128 612F mov r22,r17
269 012a 880F lsl r24
270 012c 991F rol r25
271 012e 0E94 0000 call EEPROMWriteByte
272 .LM39:
273 0132 8091 0000 lds r24,EEPCnt
274 0136 90E0 ldi r25,lo8(0)
275 0138 880F lsl r24
276 013a 991F rol r25
277 013c 612F mov r22,r17
278 013e 0196 adiw r24,1
279 0140 0E94 0000 call EEPROMWriteByte
280 .L44:
281 /* epilogue: frame size=0 */
282 0144 1F91 pop r17
283 0146 0895 ret
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -