📄 uart1.lst
字号:
264 .LM23:
265 00b6 2A30 cpi r18,lo8(10)
266 00b8 40F0 brlo .L12
267 00ba 295C subi r18,lo8(-(55))
268 .L17:
65:uart1.c **** else str_val[i] = hi + 48;
270 .LM24:
271 00bc 2083 st Z,r18
66:uart1.c **** hi = num & 0x0f;
273 .LM25:
274 00be 282F mov r18,r24
276 .LM26:
277 00c0 9150 subi r25,lo8(-(-1))
278 00c2 3196 adiw r30,1
279 00c4 97FF sbrs r25,7
280 00c6 F7CF rjmp .L14
281 00c8 02C0 rjmp .L18
282 .L12:
284 .LM27:
285 00ca 205D subi r18,lo8(-(48))
286 00cc F7CF rjmp .L17
287 .L18:
67:uart1.c **** }
68:uart1.c **** return str_val;
69:uart1.c **** }
289 .LM28:
290 00ce 8A2F mov r24,r26
291 00d0 9B2F mov r25,r27
292 /* epilogue: frame size=0 */
293 00d2 0895 ret
294 /* epilogue end (size=1) */
295 /* function int2str size 30 (29) */
301 .Lscope4:
302 .data
303 .LC0:
304 0000 5265 6369 .string "Recive value:"
304 7665 2076
304 616C 7565
304 3A00
305 000e 0000 0000 .skip 7,0
305 0000 00
306 .text
308 .global main
310 main:
70:uart1.c ****
71:uart1.c ****
72:uart1.c ****
73:uart1.c **** int main(void)
74:uart1.c **** {
312 .LM29:
313 /* prologue: frame size=26 */
314 00d4 C0E0 ldi r28,lo8(__stack - 26)
315 00d6 D0E0 ldi r29,hi8(__stack - 26)
316 00d8 DEBF out __SP_H__,r29
317 00da CDBF out __SP_L__,r28
318 /* prologue end (size=4) */
75:uart1.c **** char str_val[5];
76:uart1.c **** char message[21] = "Recive value:";
320 .LM30:
321 00dc 0C2F mov r16,r28
322 00de 1D2F mov r17,r29
323 00e0 0A5F subi r16,lo8(-(6))
324 00e2 1F4F sbci r17,hi8(-(6))
325 00e4 20E0 ldi r18,lo8(.LC0)
326 00e6 A22E mov r10,r18
327 00e8 20E0 ldi r18,hi8(.LC0)
328 00ea B22E mov r11,r18
329 00ec 8EE0 ldi r24,lo8(14)
330 00ee B12F mov r27,r17
331 00f0 A02F mov r26,r16
332 00f2 FB2D mov r31,r11
333 00f4 EA2D mov r30,r10
334 00f6 0190 ld __tmp_reg__,Z+
335 00f8 0D92 st X+,__tmp_reg__
336 00fa 8A95 dec r24
337 00fc E1F7 brne .-8
338 00fe 87E0 ldi r24,lo8(7)
339 0100 FD2F mov r31,r29
340 0102 EC2F mov r30,r28
341 0104 7496 adiw r30,20
342 0106 1192 st Z+,__zero_reg__
343 0108 8A95 dec r24
344 010a E9F7 brne .-6
77:uart1.c **** char* ptr;
78:uart1.c ****
79:uart1.c **** uart_init();
346 .LM31:
347 010c BFDF rcall uart_init
80:uart1.c ****
81:uart1.c **** DDRB = 0xff;
349 .LM32:
350 010e 8FEF ldi r24,lo8(-1)
351 0110 87BB out 55-0x20,r24
82:uart1.c **** PORTB = 0x00;
353 .LM33:
354 0112 18BA out 56-0x20,__zero_reg__
83:uart1.c ****
84:uart1.c **** flag = 0;
356 .LM34:
357 0114 1092 0000 sts flag,__zero_reg__
85:uart1.c ****
86:uart1.c **** sei();
359 .LM35:
360 /* #APP */
361 0118 7894 sei
87:uart1.c ****
88:uart1.c **** led = 'o';
363 .LM36:
364 /* #NOAPP */
365 011a 8FE6 ldi r24,lo8(111)
366 011c 8093 0000 sts led,r24
367 0120 9EE0 ldi r25,lo8(14)
368 0122 992E mov r9,r25
369 0124 83E2 ldi r24,lo8(2302755)
370 0126 C82E mov r12,r24
371 0128 83E2 ldi r24,hi8(2302755)
372 012a D82E mov r13,r24
373 012c 83E2 ldi r24,hlo8(2302755)
374 012e E82E mov r14,r24
375 0130 F12C mov r15,__zero_reg__
376 .L26:
89:uart1.c ****
90:uart1.c **** while(1) {
91:uart1.c **** if(flag == 1) {
378 .LM37:
379 0132 8091 0000 lds r24,flag
380 0136 8130 cpi r24,lo8(1)
381 0138 E1F7 brne .L26
92:uart1.c **** strcpy(message, "Recive value:");
383 .LM38:
384 013a B12F mov r27,r17
385 013c A02F mov r26,r16
386 013e FB2D mov r31,r11
387 0140 EA2D mov r30,r10
388 0142 892D mov r24,r9
389 0144 0190 ld __tmp_reg__,Z+
390 0146 0D92 st X+,__tmp_reg__
391 0148 8A95 dec r24
392 014a E1F7 brne .-8
93:uart1.c **** int2str(led, str_val);
394 .LM39:
395 014c 6C2F mov r22,r28
396 014e 7D2F mov r23,r29
397 0150 6F5F subi r22,lo8(-(1))
398 0152 7F4F sbci r23,hi8(-(1))
399 0154 8091 0000 lds r24,led
400 0158 9FDF rcall int2str
94:uart1.c **** strcat(message, str_val);
402 .LM40:
403 015a 6C2F mov r22,r28
404 015c 7D2F mov r23,r29
405 015e 6F5F subi r22,lo8(-(1))
406 0160 7F4F sbci r23,hi8(-(1))
407 0162 912F mov r25,r17
408 0164 802F mov r24,r16
409 0166 00D0 rcall strcat
95:uart1.c **** strcat(message, "###");
411 .LM41:
412 0168 F12F mov r31,r17
413 016a E02F mov r30,r16
414 016c 0190 ld __tmp_reg__,Z+
415 016e 0020 tst __tmp_reg__
416 0170 E9F7 brne .-6
417 0172 3197 sbiw r30,1
418 0174 C082 st Z,r12
419 0176 D182 std Z+1,r13
420 0178 E282 std Z+2,r14
421 017a F382 std Z+3,r15
96:uart1.c **** uart_send(message, sizeof(message)-1);
423 .LM42:
424 017c 64E1 ldi r22,lo8(20)
425 017e 912F mov r25,r17
426 0180 802F mov r24,r16
427 0182 75DF rcall uart_send
97:uart1.c ****
98:uart1.c **** flag = 0;
429 .LM43:
430 0184 1092 0000 sts flag,__zero_reg__
431 0188 D4CF rjmp .L26
432 /* epilogue: frame size=26 */
433 /* epilogue: noreturn */
434 /* epilogue end (size=0) */
435 /* function main size 92 (88) */
441 .Lscope5:
442 .comm uart_data_ptr,2,1
443 .comm uart_counter,1,1
444 .comm led,1,1
445 .lcomm flag,1
450 .text
452 Letext:
453 /* File "uart1.c": code 198 = 0x00c6 ( 164), prologues 18, epilogues 16 */
DEFINED SYMBOLS
*ABS*:00000000 uart1.c
C:\DOCUME~1\052D~1.TES\LOCALS~1\Temp/ccwdbaaa.s:3 *ABS*:0000003f __SREG__
C:\DOCUME~1\052D~1.TES\LOCALS~1\Temp/ccwdbaaa.s:4 *ABS*:0000003e __SP_H__
C:\DOCUME~1\052D~1.TES\LOCALS~1\Temp/ccwdbaaa.s:5 *ABS*:0000003d __SP_L__
C:\DOCUME~1\052D~1.TES\LOCALS~1\Temp/ccwdbaaa.s:6 *ABS*:00000000 __tmp_reg__
C:\DOCUME~1\052D~1.TES\LOCALS~1\Temp/ccwdbaaa.s:7 *ABS*:00000001 __zero_reg__
C:\DOCUME~1\052D~1.TES\LOCALS~1\Temp/ccwdbaaa.s:85 .text:00000000 __vector_9
*COM*:00000002 uart_data_ptr
*COM*:00000001 uart_counter
C:\DOCUME~1\052D~1.TES\LOCALS~1\Temp/ccwdbaaa.s:134 .text:00000046 __vector_7
*COM*:00000001 led
.bss:00000000 flag
C:\DOCUME~1\052D~1.TES\LOCALS~1\Temp/ccwdbaaa.s:173 .text:0000006e uart_send
C:\DOCUME~1\052D~1.TES\LOCALS~1\Temp/ccwdbaaa.s:207 .text:0000008c uart_init
C:\DOCUME~1\052D~1.TES\LOCALS~1\Temp/ccwdbaaa.s:234 .text:00000098 int2str
C:\DOCUME~1\052D~1.TES\LOCALS~1\Temp/ccwdbaaa.s:310 .text:000000d4 main
C:\DOCUME~1\052D~1.TES\LOCALS~1\Temp/ccwdbaaa.s:452 .text:0000018a Letext
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
__stack
strcat
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -