📄 main.lst
字号:
1 .file "Main.c"
2 .arch atmega16
3 __SREG__ = 0x3f
4 __SP_H__ = 0x3e
5 __SP_L__ = 0x3d
6 __tmp_reg__ = 0
7 __zero_reg__ = 1
8 .global __do_copy_data
9 .global __do_clear_bss
17 .Ltext0:
18 .global putch
20 putch:
21 .LFB8:
22 .LM1:
23 /* prologue: frame size=0 */
24 /* prologue end (size=0) */
25 .LVL0:
26 .L3:
27 .LM2:
28 0000 5D9B sbis 43-0x20,5
29 0002 00C0 rjmp .L3
30 .LM3:
31 0004 8CB9 out 44-0x20,r24
32 /* epilogue: frame size=0 */
33 0006 0895 ret
34 /* epilogue end (size=1) */
35 /* function putch size 4 (3) */
36 .LFE8:
38 .global getch
40 getch:
41 .LFB9:
42 .LM4:
43 /* prologue: frame size=0 */
44 /* prologue end (size=0) */
45 .L10:
46 .LM5:
47 0008 5F9B sbis 43-0x20,7
48 000a 00C0 rjmp .L10
49 .LM6:
50 000c 8CB1 in r24,44-0x20
51 .LM7:
52 000e 9927 clr r25
53 /* epilogue: frame size=0 */
54 0010 0895 ret
55 /* epilogue end (size=1) */
56 /* function getch size 5 (4) */
57 .LFE9:
59 .global flash_led
61 flash_led:
62 .LFB10:
63 .LM8:
64 /* prologue: frame size=0 */
65 /* prologue end (size=0) */
66 .LVL1:
67 .LM9:
68 0012 8823 tst r24
69 0014 01F4 brne .L16
70 .LM10:
71 0016 83E0 ldi r24,lo8(3)
72 .L16:
73 0018 90E0 ldi r25,lo8(0)
74 .LVL2:
75 001a 00C0 rjmp .L18
76 .L19:
77 .LM11:
78 001c C298 cbi 56-0x20,2
79 .LM12:
80 001e C29A sbi 56-0x20,2
81 .LM13:
82 0020 9F5F subi r25,lo8(-(1))
83 .L18:
84 0022 9817 cp r25,r24
85 0024 01F4 brne .L19
86 /* epilogue: frame size=0 */
87 0026 0895 ret
88 /* epilogue end (size=1) */
89 /* function flash_led size 11 (10) */
90 .LFE10:
92 .global get_message_body
94 get_message_body:
95 .LFB12:
96 .LM14:
97 /* prologue: frame size=0 */
98 /* prologue end (size=0) */
99 .LM15:
100 0028 8091 0000 lds r24,rx_buf+2
101 002c 9927 clr r25
102 002e 582F mov r21,r24
103 0030 4427 clr r20
104 .LVL3:
105 0032 8091 0000 lds r24,rx_buf+3
106 0036 480F add r20,r24
107 0038 511D adc r21,__zero_reg__
108 003a 2091 0000 lds r18,rx_ptr
109 003e 3091 0000 lds r19,(rx_ptr)+1
110 0042 E091 0000 lds r30,rx_chm
111 0046 D901 movw r26,r18
112 0048 A050 subi r26,lo8(-(rx_buf))
113 004a B040 sbci r27,hi8(-(rx_buf))
114 004c 60E0 ldi r22,lo8(0)
115 004e 70E0 ldi r23,hi8(0)
116 .LVL4:
117 0050 00C0 rjmp .L23
118 .L28:
119 .LBB148:
120 .LBB149:
121 .LM16:
122 0052 5F9B sbis 43-0x20,7
123 0054 00C0 rjmp .L28
124 .LM17:
125 0056 8CB1 in r24,44-0x20
126 .LBE149:
127 .LBE148:
128 .LM18:
129 0058 9927 clr r25
130 005a 8D93 st X+,r24
131 .LM19:
132 005c E827 eor r30,r24
133 .LM20:
134 005e 6F5F subi r22,lo8(-(1))
135 0060 7F4F sbci r23,hi8(-(1))
136 0062 2F5F subi r18,lo8(-(1))
137 0064 3F4F sbci r19,hi8(-(1))
138 .L23:
139 0066 6417 cp r22,r20
140 0068 7507 cpc r23,r21
141 006a 04F0 brlt .L28
142 006c 3093 0000 sts (rx_ptr)+1,r19
143 0070 2093 0000 sts rx_ptr,r18
144 0074 E093 0000 sts rx_chm,r30
145 /* epilogue: frame size=0 */
146 0078 0895 ret
147 /* epilogue end (size=1) */
148 /* function get_message_body size 41 (40) */
149 .LFE12:
151 .global get_message
153 get_message:
154 .LFB11:
155 .LM21:
156 /* prologue: frame size=0 */
157 /* prologue end (size=0) */
158 .L32:
159 .LBB150:
160 .LBB151:
161 .LM22:
162 007a 5F9B sbis 43-0x20,7
163 007c 00C0 rjmp .L32
164 .LM23:
165 007e 8CB1 in r24,44-0x20
166 .LBE151:
167 .LBE150:
168 .LM24:
169 0080 9927 clr r25
170 0082 682F mov r22,r24
171 0084 8093 0000 sts rx_buf,r24
172 .LM25:
173 0088 2091 0000 lds r18,rx_chm
174 .L34:
175 .LBB152:
176 .LBB153:
177 .LM26:
178 008c 5F9B sbis 43-0x20,7
179 008e 00C0 rjmp .L34
180 .LM27:
181 0090 8CB1 in r24,44-0x20
182 .LBE153:
183 .LBE152:
184 .LM28:
185 0092 9927 clr r25
186 0094 582F mov r21,r24
187 0096 8093 0000 sts rx_buf+1,r24
188 .L36:
189 .LBB154:
190 .LBB155:
191 .LM29:
192 009a 5F9B sbis 43-0x20,7
193 009c 00C0 rjmp .L36
194 .LM30:
195 009e 8CB1 in r24,44-0x20
196 .LBE155:
197 .LBE154:
198 .LM31:
199 00a0 9927 clr r25
200 00a2 382F mov r19,r24
201 00a4 8093 0000 sts rx_buf+2,r24
202 .L38:
203 .LBB156:
204 .LBB157:
205 .LM32:
206 00a8 5F9B sbis 43-0x20,7
207 00aa 00C0 rjmp .L38
208 .LM33:
209 00ac 8CB1 in r24,44-0x20
210 .LBE157:
211 .LBE156:
212 .LM34:
213 00ae 9927 clr r25
214 00b0 482F mov r20,r24
215 00b2 8093 0000 sts rx_buf+3,r24
216 .L40:
217 .LBB158:
218 .LBB159:
219 .LM35:
220 00b6 5F9B sbis 43-0x20,7
221 00b8 00C0 rjmp .L40
222 .LM36:
223 00ba 8CB1 in r24,44-0x20
224 .LBE159:
225 .LBE158:
226 .LM37:
227 00bc 9927 clr r25
228 00be 8093 0000 sts rx_buf+4,r24
229 .LM38:
230 00c2 3527 eor r19,r21
231 .LM39:
232 00c4 3827 eor r19,r24
233 .LM40:
234 00c6 2627 eor r18,r22
235 .LM41:
236 00c8 2427 eor r18,r20
237 .LM42:
238 00ca 2327 eor r18,r19
239 00cc 2093 0000 sts rx_chm,r18
240 .LM43:
241 00d0 85E0 ldi r24,lo8(5)
242 00d2 90E0 ldi r25,hi8(5)
243 00d4 9093 0000 sts (rx_ptr)+1,r25
244 00d8 8093 0000 sts rx_ptr,r24
245 .LM44:
246 00dc 0E94 0000 call get_message_body
247 .LM45:
248 00e0 E091 0000 lds r30,rx_ptr
249 00e4 F091 0000 lds r31,(rx_ptr)+1
250 .L42:
251 .LBB160:
252 .LBB161:
253 .LM46:
254 00e8 5F9B sbis 43-0x20,7
255 00ea 00C0 rjmp .L42
256 .LM47:
257 00ec 8CB1 in r24,44-0x20
258 .LBE161:
259 .LBE160:
260 .LM48:
261 00ee 9927 clr r25
262 00f0 E050 subi r30,lo8(-(rx_buf))
263 00f2 F040 sbci r31,hi8(-(rx_buf))
264 00f4 8083 st Z,r24
265 .LM49:
266 00f6 2091 0000 lds r18,rx_chm
267 00fa 2827 eor r18,r24
268 00fc 2093 0000 sts rx_chm,r18
269 .LM50:
270 0100 2223 tst r18
271 0102 01F4 brne .L46
272 .LM51:
273 0104 1092 0000 sts rx_chm,__zero_reg__
274 .LM52:
275 0108 1092 0000 sts (rx_ptr)+1,__zero_reg__
276 010c 1092 0000 sts rx_ptr,__zero_reg__
277 .L46:
278 0110 0895 ret
279 /* epilogue: frame size=0 */
280 /* epilogue: noreturn */
281 /* epilogue end (size=0) */
282 /* function get_message size 76 (76) */
283 .LFE11:
285 .global sendResponse
287 sendResponse:
288 .LFB13:
289 .LM53:
290 /* prologue: frame size=0 */
291 /* prologue end (size=0) */
292 .LM54:
293 0112 1092 0000 sts tx_chm,__zero_reg__
294 .LM55:
295 0116 8BE1 ldi r24,lo8(27)
296 0118 8093 0000 sts tx_buf,r24
297 .LM56:
298 011c 8091 0000 lds r24,rx_buf+1
299 0120 8093 0000 sts tx_buf+1,r24
300 .LM57:
301 0124 8EE0 ldi r24,lo8(14)
302 0126 8093 0000 sts tx_buf+4,r24
303 012a 60E0 ldi r22,lo8(0)
304 012c E0E0 ldi r30,lo8(tx_buf)
305 012e F0E0 ldi r31,hi8(tx_buf)
306 .L60:
307 .LM58:
308 0130 8081 ld r24,Z
309 0132 6827 eor r22,r24
310 .L61:
311 .LBB162:
312 .LBB163:
313 .LM59:
314 0134 5D9B sbis 43-0x20,5
315 0136 00C0 rjmp .L61
316 .LM60:
317 0138 8CB9 out 44-0x20,r24
318 013a 3196 adiw r30,1
319 .LBE163:
320 .LBE162:
321 .LM61:
322 013c 80E0 ldi r24,hi8(tx_buf+5)
323 013e E030 cpi r30,lo8(tx_buf+5)
324 0140 F807 cpc r31,r24
325 0142 01F4 brne .L60
326 0144 6093 0000 sts tx_chm,r22
327 .LM62:
328 0148 8091 0000 lds r24,tx_buf+2
329 014c 9927 clr r25
330 014e 382F mov r19,r24
331 0150 2227 clr r18
332 .LVL5:
333 0152 8091 0000 lds r24,tx_buf+3
334 0156 280F add r18,r24
335 0158 311D adc r19,__zero_reg__
336 015a 40E0 ldi r20,lo8(0)
337 015c 50E0 ldi r21,hi8(0)
338 .LVL6:
339 015e 00C0 rjmp .L64
340 .L65:
341 .LM63:
342 0160 8081 ld r24,Z
343 0162 6827 eor r22,r24
344 .L66:
345 .LBB164:
346 .LBB165:
347 .LM64:
348 0164 5D9B sbis 43-0x20,5
349 0166 00C0 rjmp .L66
350 .LM65:
351 0168 8CB9 out 44-0x20,r24
352 .LBE165:
353 .LBE164:
354 .LM66:
355 016a 4F5F subi r20,lo8(-(1))
356 016c 5F4F sbci r21,hi8(-(1))
357 016e 3196 adiw r30,1
358 .L64:
359 0170 4217 cp r20,r18
360 0172 5307 cpc r21,r19
361 0174 04F0 brlt .L65
362 0176 6093 0000 sts tx_chm,r22
363 .L69:
364 .LBB166:
365 .LBB167:
366 .LM67:
367 017a 5D9B sbis 43-0x20,5
368 017c 00C0 rjmp .L69
369 .LM68:
370 017e 6CB9 out 44-0x20,r22
371 .LBE167:
372 .LBE166:
373 /* epilogue: frame size=0 */
374 0180 0895 ret
375 /* epilogue end (size=1) */
376 /* function sendResponse size 56 (55) */
377 .LFE13:
379 .global cmdSignOn
381 cmdSignOn:
382 .LFB14:
383 .LM69:
384 /* prologue: frame size=0 */
385 /* prologue end (size=0) */
386 .LM70:
387 0182 1092 0000 sts tx_buf+2,__zero_reg__
388 .LM71:
389 0186 8BE0 ldi r24,lo8(11)
390 0188 8093 0000 sts tx_buf+3,r24
391 .LM72:
392 018c 81E0 ldi r24,lo8(1)
393 018e 8093 0000 sts tx_buf+5,r24
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -