📄 ds18b20-shm-c51-avr.lst
字号:
385 00f0 CF93 push r28
386 00f2 DF93 push r29
387 /* prologue end (size=4) */
388 00f4 082F mov r16,r24
389 .LM67:
390 00f6 B2DF rcall Init_DS18B20
391 .LM68:
392 00f8 8091 0000 lds r24,presence
393 00fc 8823 tst r24
394 00fe 11F0 breq .L40
395 .LM69:
396 0100 8FDF rcall beep
397 0102 23C0 rjmp .L39
398 .L40:
399 .LM70:
400 0104 8CEC ldi r24,lo8(-52)
401 0106 DEDF rcall WriteOneChar
402 .LM71:
403 0108 84E4 ldi r24,lo8(68)
404 010a DCDF rcall WriteOneChar
405 .LM72:
406 010c A7DF rcall Init_DS18B20
407 .LM73:
408 010e 85E5 ldi r24,lo8(85)
409 0110 D9DF rcall WriteOneChar
410 0112 C0E0 ldi r28,lo8(0)
411 0114 D0E0 ldi r29,hi8(0)
412 0116 17E0 ldi r17,lo8(7)
413 .L45:
414 .LM74:
415 0118 E02F mov r30,r16
416 011a FF27 clr r31
417 011c 33E0 ldi r19,3
418 011e EE0F 1: lsl r30
419 0120 FF1F rol r31
420 0122 3A95 dec r19
421 0124 E1F7 brne 1b
422 0126 EC0F add r30,r28
423 0128 FD1F adc r31,r29
424 012a E050 subi r30,lo8(-(RomCode))
425 012c F040 sbci r31,hi8(-(RomCode))
426 012e 8081 ld r24,Z
427 0130 C9DF rcall WriteOneChar
428 .LM75:
429 0132 1150 subi r17,lo8(-(-1))
430 0134 2196 adiw r28,1
431 0136 17FF sbrs r17,7
432 0138 EFCF rjmp .L45
433 .LM76:
434 013a 8EEB ldi r24,lo8(-66)
435 013c C3DF rcall WriteOneChar
436 .LM77:
437 013e ACDF rcall ReadOneChar
438 0140 8093 0000 sts temp_data,r24
439 .LM78:
440 0144 A9DF rcall ReadOneChar
441 0146 8093 0000 sts temp_data+1,r24
442 .L39:
443 /* epilogue: frame size=0 */
444 014a DF91 pop r29
445 014c CF91 pop r28
446 014e 1F91 pop r17
447 0150 0F91 pop r16
448 0152 0895 ret
449 /* epilogue end (size=5) */
450 /* function Read_Temperature size 52 (43) */
451 .LFE13:
453 .global Disp_Temperature
455 Disp_Temperature:
456 .LFB14:
457 .LM79:
458 /* prologue: frame size=0 */
459 0154 CF93 push r28
460 /* prologue end (size=1) */
461 0156 C82F mov r28,r24
462 .LM80:
463 0158 9091 0000 lds r25,temp_data
464 015c 892F mov r24,r25
465 015e 8F70 andi r24,lo8(15)
466 .LM81:
467 0160 E82F mov r30,r24
468 0162 FF27 clr r31
469 0164 E050 subi r30,lo8(-(ditab))
470 0166 F040 sbci r31,hi8(-(ditab))
471 0168 8081 ld r24,Z
472 016a 8093 0000 sts display,r24
473 .LM82:
474 016e 292F mov r18,r25
475 0170 3327 clr r19
476 0172 54E0 ldi r21,4
477 0174 3695 1: lsr r19
478 0176 2795 ror r18
479 0178 5A95 dec r21
480 017a E1F7 brne 1b
481 017c 8091 0000 lds r24,temp_data+1
482 0180 9927 clr r25
483 0182 8F70 andi r24,lo8(15)
484 0184 9070 andi r25,hi8(15)
485 0186 44E0 ldi r20,4
486 0188 880F 1: lsl r24
487 018a 991F rol r25
488 018c 4A95 dec r20
489 018e E1F7 brne 1b
490 0190 282B or r18,r24
491 0192 2093 0000 sts display+4,r18
492 .LM83:
493 0196 822F mov r24,r18
494 0198 64E6 ldi r22,lo8(100)
495 019a 00D0 rcall __udivmodqi4
496 019c 382F mov r19,r24
497 019e 8093 0000 sts display+3,r24
498 .LM84:
499 01a2 822F mov r24,r18
500 01a4 00D0 rcall __udivmodqi4
501 01a6 292F mov r18,r25
502 .LM85:
503 01a8 4AE0 ldi r20,lo8(10)
504 01aa 892F mov r24,r25
505 01ac 642F mov r22,r20
506 01ae 00D0 rcall __udivmodqi4
507 01b0 582F mov r21,r24
508 01b2 8093 0000 sts display+2,r24
509 .LM86:
510 01b6 822F mov r24,r18
511 01b8 00D0 rcall __udivmodqi4
512 01ba 9093 0000 sts display+1,r25
513 .LM87:
514 01be 3323 tst r19
515 01c0 31F4 brne .L49
516 .LM88:
517 01c2 4093 0000 sts display+3,r20
518 .LM89:
519 01c6 5523 tst r21
520 01c8 11F4 brne .L49
521 .LM90:
522 01ca 4093 0000 sts display+2,r20
523 .L49:
524 .LM91:
525 01ce 86EC ldi r24,lo8(-58)
526 01d0 8BBB out 59-0x20,r24
527 .LM92:
528 01d2 8FE7 ldi r24,lo8(127)
529 01d4 85BB out 53-0x20,r24
530 .LM93:
531 01d6 81E0 ldi r24,lo8(1)
532 01d8 90E0 ldi r25,hi8(1)
533 01da 12DF rcall delay_nms
534 .LM94:
535 01dc 8CE9 ldi r24,lo8(-100)
536 01de 8BBB out 59-0x20,r24
537 .LM95:
538 01e0 8FEB ldi r24,lo8(-65)
539 01e2 85BB out 53-0x20,r24
540 .LM96:
541 01e4 81E0 ldi r24,lo8(1)
542 01e6 90E0 ldi r25,hi8(1)
543 01e8 0BDF rcall delay_nms
544 .LM97:
545 01ea 8091 0000 lds r24,display
546 01ee E82F mov r30,r24
547 01f0 FF27 clr r31
548 01f2 E050 subi r30,lo8(-(LEDData))
549 01f4 F040 sbci r31,hi8(-(LEDData))
550 01f6 8081 ld r24,Z
551 01f8 8BBB out 59-0x20,r24
552 .LM98:
553 01fa 8FED ldi r24,lo8(-33)
554 01fc 85BB out 53-0x20,r24
555 .LM99:
556 01fe 81E0 ldi r24,lo8(1)
557 0200 90E0 ldi r25,hi8(1)
558 0202 FEDE rcall delay_nms
559 .LM100:
560 0204 8091 0000 lds r24,display+1
561 0208 E82F mov r30,r24
562 020a FF27 clr r31
563 020c E050 subi r30,lo8(-(LEDData))
564 020e F040 sbci r31,hi8(-(LEDData))
565 0210 8081 ld r24,Z
566 0212 8BBB out 59-0x20,r24
567 .LM101:
568 0214 DF98 cbi 59-0x20,7
569 .LM102:
570 0216 8FEE ldi r24,lo8(-17)
571 0218 85BB out 53-0x20,r24
572 .LM103:
573 021a 81E0 ldi r24,lo8(1)
574 021c 90E0 ldi r25,hi8(1)
575 021e F0DE rcall delay_nms
576 .LM104:
577 0220 8091 0000 lds r24,display+2
578 0224 E82F mov r30,r24
579 0226 FF27 clr r31
580 0228 E050 subi r30,lo8(-(LEDData))
581 022a F040 sbci r31,hi8(-(LEDData))
582 022c 8081 ld r24,Z
583 022e 8BBB out 59-0x20,r24
584 .LM105:
585 0230 87EF ldi r24,lo8(-9)
586 0232 85BB out 53-0x20,r24
587 .LM106:
588 0234 81E0 ldi r24,lo8(1)
589 0236 90E0 ldi r25,hi8(1)
590 0238 E3DE rcall delay_nms
591 .LM107:
592 023a 8091 0000 lds r24,display+3
593 023e E82F mov r30,r24
594 0240 FF27 clr r31
595 0242 E050 subi r30,lo8(-(LEDData))
596 0244 F040 sbci r31,hi8(-(LEDData))
597 0246 8081 ld r24,Z
598 0248 8BBB out 59-0x20,r24
599 .LM108:
600 024a 8BEF ldi r24,lo8(-5)
601 024c 85BB out 53-0x20,r24
602 .LM109:
603 024e 81E0 ldi r24,lo8(1)
604 0250 90E0 ldi r25,hi8(1)
605 0252 D6DE rcall delay_nms
606 .LM110:
607 0254 8091 0000 lds r24,LEDData+11
608 0258 8BBB out 59-0x20,r24
609 .LM111:
610 025a 8DEF ldi r24,lo8(-3)
611 025c 85BB out 53-0x20,r24
612 .LM112:
613 025e 81E0 ldi r24,lo8(1)
614 0260 90E0 ldi r25,hi8(1)
615 0262 CEDE rcall delay_nms
616 .LM113:
617 0264 EC2F mov r30,r28
618 0266 FF27 clr r31
619 0268 E050 subi r30,lo8(-(LEDData))
620 026a F040 sbci r31,hi8(-(LEDData))
621 026c 8181 ldd r24,Z+1
622 026e 8BBB out 59-0x20,r24
623 .LM114:
624 0270 8EEF ldi r24,lo8(-2)
625 0272 85BB out 53-0x20,r24
626 .LM115:
627 0274 81E0 ldi r24,lo8(1)
628 0276 90E0 ldi r25,hi8(1)
629 0278 C3DE rcall delay_nms
630 .LM116:
631 027a 8FEF ldi r24,lo8(-1)
632 027c 85BB out 53-0x20,r24
633 /* epilogue: frame size=0 */
634 027e CF91 pop r28
635 0280 0895 ret
636 /* epilogue end (size=2) */
637 /* function Disp_Temperature size 151 (148) */
638 .LFE14:
640 .global main
642 main:
643 .LFB15:
644 .LM117:
645 /* prologue: frame size=0 */
646 0282 C0E0 ldi r28,lo8(__stack - 0)
647 0284 D0E0 ldi r29,hi8(__stack - 0)
648 0286 DEBF out __SP_H__,r29
649 0288 CDBF out __SP_L__,r28
650 /* prologue end (size=4) */
651 .LM118:
652 028a DEDE rcall init_io
653 .L52:
654 028c C7EC ldi r28,lo8(199)
655 028e D0E0 ldi r29,hi8(199)
656 .L59:
657 .LM119:
658 0290 80E0 ldi r24,lo8(0)
659 0292 2CDF rcall Read_Temperature
660 .LM120:
661 0294 8091 0000 lds r24,presence
662 0298 8823 tst r24
663 029a 19F0 breq .L57
664 .LM121:
665 029c 8FEF ldi r24,lo8(-1)
666 029e 85BB out 53-0x20,r24
667 02a0 01C0 rjmp .L56
668 .L57:
669 .LM122:
670 02a2 58DF rcall Disp_Temperature
671 .L56:
672 .LM123:
673 02a4 2197 sbiw r28,1
674 02a6 D7FF sbrs r29,7
675 02a8 F3CF rjmp .L59
676 02aa C7EC ldi r28,lo8(199)
677 02ac D0E0 ldi r29,hi8(199)
678 .L65:
679 .LM124:
680 02ae 81E0 ldi r24,lo8(1)
681 02b0 1DDF rcall Read_Temperature
682 .LM125:
683 02b2 8091 0000 lds r24,presence
684 02b6 8823 tst r24
685 02b8 19F0 breq .L63
686 .LM126:
687 02ba 8FEF ldi r24,lo8(-1)
688 02bc 85BB out 53-0x20,r24
689 02be 02C0 rjmp .L62
690 .L63:
691 .LM127:
692 02c0 81E0 ldi r24,lo8(1)
693 02c2 48DF rcall Disp_Temperature
694 .L62:
695 .LM128:
696 02c4 2197 sbiw r28,1
697 02c6 D7FF sbrs r29,7
698 02c8 F2CF rjmp .L65
699 02ca E0CF rjmp .L52
700 /* epilogue: frame size=0 */
701 /* epilogue: noreturn */
702 /* epilogue end (size=0) */
703 /* function main size 37 (33) */
704 .LFE15:
706 .comm presence,1,1
707 .comm ch,1,1
708 .Letext0:
DEFINED SYMBOLS
*ABS*:00000000 DS18B20-SHM-C51-AVR.c
*ABS*:0000003f __SREG__
*ABS*:0000003e __SP_H__
*ABS*:0000003d __SP_L__
*ABS*:00000000 __tmp_reg__
*ABS*:00000001 __zero_reg__
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cc4yaaaa.s:22 .data:00000000 RomCode
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cc4yaaaa.s:42 .data:00000010 ditab
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cc4yaaaa.s:64 .bss:00000000 display
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cc4yaaaa.s:70 .bss:00000005 temp_data
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cc4yaaaa.s:76 .data:00000020 LEDData
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cc4yaaaa.s:94 .bss:00000007 flash
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cc4yaaaa.s:99 .text:00000000 delay_nms
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cc4yaaaa.s:135 .text:00000016 Delay
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cc4yaaaa.s:160 .text:00000020 beep
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cc4yaaaa.s:200 .text:00000048 init_io
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cc4yaaaa.s:230 .text:0000005c Init_DS18B20
*COM*:00000001 presence
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cc4yaaaa.s:286 .text:00000098 ReadOneChar
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cc4yaaaa.s:335 .text:000000c4 WriteOneChar
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cc4yaaaa.s:379 .text:000000ec Read_Temperature
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cc4yaaaa.s:455 .text:00000154 Disp_Temperature
C:\DOCUME~1\guoqing\LOCALS~1\Temp/cc4yaaaa.s:642 .text:00000282 main
*COM*:00000001 ch
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
__udivmodqi4
__stack
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -