📄 main.lst
字号:
39:main.c **** temp = temp + (endrv - enval);
283 .LM22:
284 0126 8091 0000 lds r24,endrv.3
285 012a 9927 clr r25
286 012c 2091 0000 lds r18,enval.2
287 0130 821B sub r24,r18
288 0132 9109 sbc r25,__zero_reg__
289 0134 282F mov r18,r24
290 0136 392F mov r19,r25
291 0138 4427 clr r20
292 013a 37FD sbrc r19,7
293 013c 4095 com r20
294 013e 542F mov r21,r20
295 0140 8091 0000 lds r24,temp.4
296 0144 9091 0000 lds r25,(temp.4)+1
297 0148 A091 0000 lds r26,(temp.4)+2
298 014c B091 0000 lds r27,(temp.4)+3
299 0150 820F add r24,r18
300 0152 931F adc r25,r19
301 0154 A41F adc r26,r20
302 0156 B51F adc r27,r21
303 0158 8093 0000 sts temp.4,r24
304 015c 9093 0000 sts (temp.4)+1,r25
305 0160 A093 0000 sts (temp.4)+2,r26
306 0164 B093 0000 sts (temp.4)+3,r27
40:main.c ****
41:main.c **** enval = temp >> 5;
308 .LM23:
309 0168 25E0 ldi r18,5
310 016a B595 1: asr r27
311 016c A795 ror r26
312 016e 9795 ror r25
313 0170 8795 ror r24
314 0172 2A95 dec r18
315 0174 D1F7 brne 1b
316 0176 8093 0000 sts enval.2,r24
42:main.c ****
43:main.c **** if((acosum > 50) || (timeout == 0))
318 .LM24:
319 017a 8091 0000 lds r24,acosum.5
320 017e 8333 cpi r24,lo8(51)
321 0180 60F4 brsh .L32
322 0182 8091 0000 lds r24,timeout.6
323 0186 9091 0000 lds r25,(timeout.6)+1
324 018a A091 0000 lds r26,(timeout.6)+2
325 018e B091 0000 lds r27,(timeout.6)+3
326 0192 0097 sbiw r24,0
327 0194 A105 cpc r26,__zero_reg__
328 0196 B105 cpc r27,__zero_reg__
329 0198 C9F4 brne .L31
330 .L32:
44:main.c **** {
45:main.c **** if(envelope < ((timeout)?272:520)) PORTB &= ~(1 << PB3);
332 .LM25:
333 019a 8091 0000 lds r24,timeout.6
334 019e 9091 0000 lds r25,(timeout.6)+1
335 01a2 A091 0000 lds r26,(timeout.6)+2
336 01a6 B091 0000 lds r27,(timeout.6)+3
337 01aa 2091 0000 lds r18,envelope.1
338 01ae 3091 0000 lds r19,(envelope.1)+1
339 01b2 0097 sbiw r24,0
340 01b4 A105 cpc r26,__zero_reg__
341 01b6 B105 cpc r27,__zero_reg__
342 01b8 21F0 breq .L34
343 01ba 2051 subi r18,lo8(272)
344 01bc 3140 sbci r19,hi8(272)
345 01be 20F0 brlo .L35
346 01c0 05C0 rjmp .L31
347 .L34:
348 01c2 2850 subi r18,lo8(520)
349 01c4 3240 sbci r19,hi8(520)
350 01c6 10F4 brsh .L31
351 .L35:
352 01c8 C398 cbi 56-0x20,3
353 01ca 01C0 rjmp .L37
354 .L31:
46:main.c **** else PORTB |= (1 << PB3);
47:main.c **** }
48:main.c **** else PORTB |= (1 << PB3);
356 .LM26:
357 01cc C39A sbi 56-0x20,3
358 .L37:
49:main.c **** acosum = 0;
360 .LM27:
361 01ce 1092 0000 sts acosum.5,__zero_reg__
50:main.c ****
51:main.c **** if(++envelope == 544)
363 .LM28:
364 01d2 8091 0000 lds r24,envelope.1
365 01d6 9091 0000 lds r25,(envelope.1)+1
366 01da 0196 adiw r24,1
367 01dc 9093 0000 sts (envelope.1)+1,r25
368 01e0 8093 0000 sts envelope.1,r24
369 01e4 8052 subi r24,lo8(544)
370 01e6 9240 sbci r25,hi8(544)
371 01e8 21F4 brne .L38
52:main.c **** {
53:main.c **** envelope = 0;
373 .LM29:
374 01ea 1092 0000 sts (envelope.1)+1,__zero_reg__
375 01ee 1092 0000 sts envelope.1,__zero_reg__
376 .L38:
54:main.c **** }
55:main.c **** OCR0A = (timeout) ? enval : 255;
378 .LM30:
379 01f2 8091 0000 lds r24,timeout.6
380 01f6 9091 0000 lds r25,(timeout.6)+1
381 01fa A091 0000 lds r26,(timeout.6)+2
382 01fe B091 0000 lds r27,(timeout.6)+3
383 0202 0097 sbiw r24,0
384 0204 A105 cpc r26,__zero_reg__
385 0206 B105 cpc r27,__zero_reg__
386 0208 19F0 breq .L39
387 020a 8091 0000 lds r24,enval.2
388 020e 01C0 rjmp .L40
389 .L39:
390 0210 8FEF ldi r24,lo8(-1)
391 .L40:
392 0212 86BF out 86-0x20,r24
393 .L1:
394 /* epilogue: frame size=0 */
395 0214 BF91 pop r27
396 0216 AF91 pop r26
397 0218 9F91 pop r25
398 021a 8F91 pop r24
399 021c 5F91 pop r21
400 021e 4F91 pop r20
401 0220 3F91 pop r19
402 0222 2F91 pop r18
403 0224 0F90 pop __tmp_reg__
404 0226 0FBE out __SREG__,__tmp_reg__
405 0228 0F90 pop __tmp_reg__
406 022a 1F90 pop __zero_reg__
407 022c 1895 reti
408 /* epilogue end (size=13) */
409 /* function __vector_3 size 283 (257) */
420 .Lscope0:
422 .global main
424 main:
56:main.c **** }
57:main.c **** }
58:main.c ****
59:main.c **** int main(void)
60:main.c **** {
426 .LM31:
427 /* prologue: frame size=0 */
428 022e C0E0 ldi r28,lo8(__stack - 0)
429 0230 D0E0 ldi r29,hi8(__stack - 0)
430 0232 DEBF out __SP_H__,r29
431 0234 CDBF out __SP_L__,r28
432 /* prologue end (size=4) */
61:main.c **** ACSR = 0x40;
434 .LM32:
435 0236 80E4 ldi r24,lo8(64)
436 0238 88B9 out 40-0x20,r24
62:main.c **** TCCR0A = 0xc3;
438 .LM33:
439 023a 83EC ldi r24,lo8(-61)
440 023c 8FBD out 79-0x20,r24
63:main.c **** TCCR0B = 0x01;
442 .LM34:
443 023e 81E0 ldi r24,lo8(1)
444 0240 83BF out 83-0x20,r24
64:main.c **** OCR0A = 0xff;
446 .LM35:
447 0242 8FEF ldi r24,lo8(-1)
448 0244 86BF out 86-0x20,r24
65:main.c **** DDRB = 0x0d;
450 .LM36:
451 0246 8DE0 ldi r24,lo8(13)
452 0248 87BB out 55-0x20,r24
66:main.c **** TIMSK0 = 0x02;
454 .LM37:
455 024a 82E0 ldi r24,lo8(2)
456 024c 89BF out 89-0x20,r24
67:main.c **** sei();
458 .LM38:
459 /* #APP */
460 024e 7894 sei
461 /* #NOAPP */
462 .L45:
68:main.c **** for (;;)
69:main.c **** {
70:main.c **** sleep_mode();
464 .LM39:
465 0250 85B7 in r24,85-0x20
466 0252 8062 ori r24,lo8(32)
467 0254 85BF out 85-0x20,r24
468 /* #APP */
469 0256 8895 sleep
470
471 /* #NOAPP */
472 0258 85B7 in r24,85-0x20
473 025a 8F7D andi r24,lo8(-33)
474 025c 85BF out 85-0x20,r24
476 .LM40:
477 025e F8CF rjmp .L45
478 /* epilogue: frame size=0 */
479 /* epilogue: noreturn */
480 /* epilogue end (size=0) */
481 /* function main size 29 (25) */
483 .Lscope1:
484 .text
486 Letext:
487 /* File "main.c": code 312 = 0x0138 ( 282), prologues 17, epilogues 13 */
DEFINED SYMBOLS
*ABS*:00000000 main.c
D:\DOCUME~1\GinTT\LOCALS~1\Temp/cck5aaaa.s:3 *ABS*:0000003f __SREG__
D:\DOCUME~1\GinTT\LOCALS~1\Temp/cck5aaaa.s:4 *ABS*:0000003e __SP_H__
D:\DOCUME~1\GinTT\LOCALS~1\Temp/cck5aaaa.s:5 *ABS*:0000003d __SP_L__
D:\DOCUME~1\GinTT\LOCALS~1\Temp/cck5aaaa.s:6 *ABS*:00000000 __tmp_reg__
D:\DOCUME~1\GinTT\LOCALS~1\Temp/cck5aaaa.s:7 *ABS*:00000001 __zero_reg__
.bss:00000000 pulse.0
D:\DOCUME~1\GinTT\LOCALS~1\Temp/cck5aaaa.s:73 .bss:00000001 envelope.1
D:\DOCUME~1\GinTT\LOCALS~1\Temp/cck5aaaa.s:78 .data:00000000 enval.2
D:\DOCUME~1\GinTT\LOCALS~1\Temp/cck5aaaa.s:82 .data:00000001 endrv.3
D:\DOCUME~1\GinTT\LOCALS~1\Temp/cck5aaaa.s:74 .bss:00000003 temp.4
D:\DOCUME~1\GinTT\LOCALS~1\Temp/cck5aaaa.s:84 .bss:00000007 acosum.5
D:\DOCUME~1\GinTT\LOCALS~1\Temp/cck5aaaa.s:88 .data:00000002 timeout.6
D:\DOCUME~1\GinTT\LOCALS~1\Temp/cck5aaaa.s:94 .text:00000000 __vector_3
D:\DOCUME~1\GinTT\LOCALS~1\Temp/cck5aaaa.s:424 .text:0000022e main
D:\DOCUME~1\GinTT\LOCALS~1\Temp/cck5aaaa.s:486 .text:00000260 Letext
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
__stack
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -