📄 main.lst
字号:
419 01be 09F0 breq .+2
420 01c0 51C0 rjmp .L27
421 .LM59:
422 01c2 DD24 clr r13
423 .LM60:
424 01c4 8C2D mov r24,r12
425 01c6 9927 clr r25
426 01c8 0196 adiw r24,1
427 01ca 282F mov r18,r24
428 01cc 392F mov r19,r25
429 01ce 807F andi r24,lo8(496)
430 01d0 9170 andi r25,hi8(496)
431 01d2 C22E mov r12,r18
432 01d4 C81A sub r12,r24
433 .LM61:
434 01d6 AC2D mov r26,r12
435 01d8 BB27 clr r27
436 01da FB2F mov r31,r27
437 01dc EA2F mov r30,r26
438 01de E050 subi r30,lo8(-(topLine))
439 01e0 F040 sbci r31,hi8(-(topLine))
440 01e2 E081 ld r30,Z
441 01e4 E052 subi r30,lo8(-(-32))
442 .LM62:
443 01e6 8E2F mov r24,r30
444 01e8 8695 lsr r24
445 01ea E82E mov r14,r24
446 01ec FF24 clr r15
447 01ee 76E0 ldi r23,6
448 01f0 EE0C 1: lsl r14
449 01f2 FF1C rol r15
450 01f4 7A95 dec r23
451 01f6 E1F7 brne 1b
452 01f8 8E2F mov r24,r30
453 01fa 9927 clr r25
454 01fc 8170 andi r24,lo8(1)
455 01fe 9070 andi r25,hi8(1)
456 0200 880F lsl r24
457 0202 991F rol r25
458 0204 E82A or r14,r24
459 0206 F92A or r15,r25
460 .LM63:
461 0208 FB2F mov r31,r27
462 020a EA2F mov r30,r26
463 020c E050 subi r30,lo8(-(botLine))
464 020e F040 sbci r31,hi8(-(botLine))
465 0210 E081 ld r30,Z
466 0212 E052 subi r30,lo8(-(-32))
467 .LM64:
468 0214 8E2F mov r24,r30
469 0216 8695 lsr r24
470 0218 082F mov r16,r24
471 021a 1127 clr r17
472 021c 6894 set
473 021e 15F8 bld __zero_reg__,6-1
474 0220 000F 1: lsl r16
475 0222 111F rol r17
476 0224 1694 lsr __zero_reg__
477 0226 E1F7 brne 1b
478 0228 8E2F mov r24,r30
479 022a 9927 clr r25
480 022c 8170 andi r24,lo8(1)
481 022e 9070 andi r25,hi8(1)
482 0230 880F lsl r24
483 0232 991F rol r25
484 0234 082B or r16,r24
485 0236 192B or r17,r25
486 .LM65:
487 0238 A050 subi r26,lo8(-(scrollLine))
488 023a B040 sbci r27,hi8(-(scrollLine))
489 023c EC91 ld r30,X
490 023e E052 subi r30,lo8(-(-32))
491 .LM66:
492 0240 8E2F mov r24,r30
493 0242 8695 lsr r24
494 0244 C82F mov r28,r24
495 0246 DD27 clr r29
496 0248 36E0 ldi r19,6
497 024a CC0F 1: lsl r28
498 024c DD1F rol r29
499 024e 3A95 dec r19
500 0250 E1F7 brne 1b
501 0252 8E2F mov r24,r30
502 0254 9927 clr r25
503 0256 8170 andi r24,lo8(1)
504 0258 9070 andi r25,hi8(1)
505 025a 880F lsl r24
506 025c 991F rol r25
507 025e C82B or r28,r24
508 0260 D92B or r29,r25
509 0262 08C0 rjmp .L29
510 .L27:
511 .LM67:
512 0264 84E0 ldi r24,lo8(4)
513 0266 90E0 ldi r25,hi8(4)
514 0268 E80E add r14,r24
515 026a F91E adc r15,r25
516 .LM68:
517 026c 080F add r16,r24
518 026e 191F adc r17,r25
519 .LM69:
520 0270 C80F add r28,r24
521 0272 D91F adc r29,r25
522 .L29:
523 .LM70:
524 0274 42E0 ldi r20,lo8(2)
525 0276 60E0 ldi r22,lo8(fleds)
526 0278 70E0 ldi r23,hi8(fleds)
527 027a 9F2D mov r25,r15
528 027c 8E2D mov r24,r14
529 027e 00D0 rcall spieeprom_read
530 .LM71:
531 0280 42E0 ldi r20,lo8(2)
532 0282 60E0 ldi r22,lo8(fleds+2)
533 0284 70E0 ldi r23,hi8(fleds+2)
534 0286 912F mov r25,r17
535 0288 802F mov r24,r16
536 028a 00D0 rcall spieeprom_read
537 .LM72:
538 028c 42E0 ldi r20,lo8(2)
539 028e 60E0 ldi r22,lo8(fleds+4)
540 0290 70E0 ldi r23,hi8(fleds+4)
541 0292 8C2F mov r24,r28
542 0294 9D2F mov r25,r29
543 0296 00D0 rcall spieeprom_read
544 .LM73:
545 0298 E0DE rcall clock_scroll
546 .LM74:
547 /* #APP */
548 029a F894 cli
549 .LM75:
550 /* #NOAPP */
551 029c 8091 0000 lds r24,clean
552 02a0 8823 tst r24
553 02a2 89F0 breq .L30
554 .LM76:
555 02a4 F092 0000 sts (topChar)+1,r15
556 02a8 E092 0000 sts topChar,r14
557 .LM77:
558 02ac 1093 0000 sts (botChar)+1,r17
559 02b0 0093 0000 sts botChar,r16
560 .LM78:
561 02b4 C092 0000 sts charNum,r12
562 .LM79:
563 02b8 D092 0000 sts pixelNum,r13
564 .LM80:
565 02bc D093 0000 sts (scrollChar)+1,r29
566 02c0 C093 0000 sts scrollChar,r28
567 02c4 03C0 rjmp .L31
568 .L30:
569 .LM81:
570 02c6 81E0 ldi r24,lo8(1)
571 02c8 8093 0000 sts clean,r24
572 .L31:
573 .LM82:
574 /* #APP */
575 02cc 7894 sei
576 /* #NOAPP */
577 02ce 07C0 rjmp .L25
578 .L26:
579 .LM83:
580 /* #APP */
581 02d0 F894 cli
582 .LM84:
583 /* #NOAPP */
584 02d2 8EB5 in r24,78-0x20
585 02d4 887F andi r24,lo8(-8)
586 02d6 8EBD out 78-0x20,r24
587 .LM85:
588 /* #APP */
589 02d8 7894 sei
590 .LM86:
591 /* #NOAPP */
592 02da 82E0 ldi r24,lo8(2)
593 02dc 1DDF rcall set_led
594 .L25:
595 /* epilogue: frame size=0 */
596 02de FF91 pop r31
597 02e0 EF91 pop r30
598 02e2 DF91 pop r29
599 02e4 CF91 pop r28
600 02e6 BF91 pop r27
601 02e8 AF91 pop r26
602 02ea 9F91 pop r25
603 02ec 8F91 pop r24
604 02ee 7F91 pop r23
605 02f0 6F91 pop r22
606 02f2 5F91 pop r21
607 02f4 4F91 pop r20
608 02f6 3F91 pop r19
609 02f8 2F91 pop r18
610 02fa 1F91 pop r17
611 02fc 0F91 pop r16
612 02fe FF90 pop r15
613 0300 EF90 pop r14
614 0302 DF90 pop r13
615 0304 CF90 pop r12
616 0306 0F90 pop __tmp_reg__
617 0308 0FBE out __SREG__,__tmp_reg__
618 030a 0F90 pop __tmp_reg__
619 030c 1F90 pop __zero_reg__
620 030e 1895 reti
621 /* epilogue end (size=25) */
622 /* function __vector_4 size 228 (178) */
623 .LFE7:
625 .global delay_ms
627 delay_ms:
628 .LFB11:
629 .LM87:
630 /* prologue: frame size=0 */
631 /* prologue end (size=0) */
632 .LM88:
633 0310 20ED ldi r18,lo8(2000)
634 0312 37E0 ldi r19,hi8(2000)
635 .LM89:
636 /* #APP */
637
638 L_dl1374:
639 0314 E22F mov r30, r18
640 0316 F32F mov r31, r19
641 L_dl2374:
642 0318 3197 sbiw r30, 1
643 031a F1F7 brne L_dl2374
644 031c A895 wdr
645 031e 8A95 dec r24
646 0320 C9F7 brne L_dl1374
647
648 /* #NOAPP */
649 /* epilogue: frame size=0 */
650 0322 0895 ret
651 /* epilogue end (size=1) */
652 /* function delay_ms size 25 (24) */
653 .LFE11:
655 .global __vector_1
657 __vector_1:
658 .LFB8:
659 .LM90:
660 /* prologue: frame size=0 */
661 0324 1F92 push __zero_reg__
662 0326 0F92 push __tmp_reg__
663 0328 0FB6 in __tmp_reg__,__SREG__
664 032a 0F92 push __tmp_reg__
665 032c 1124 clr __zero_reg__
666 032e 2F93 push r18
667 0330 3F93 push r19
668 0332 4F93 push r20
669 0334 5F93 push r21
670 0336 6F93 push r22
671 0338 7F93 push r23
672 033a 8F93 push r24
673 033c 9F93 push r25
674 033e AF93 push r26
675 0340 BF93 push r27
676 0342 CF93 push r28
677 0344 DF93 push r29
678 0346 EF93 push r30
679 0348 FF93 push r31
680 /* prologue end (size=19) */
681 .LM91:
682 034a C0E0 ldi r28,lo8(0)
683 034c D0E0 ldi r29,hi8(0)
684 .LM92:
685 034e 8299 sbic 48-0x20,2
686 0350 05C0 rjmp .L44
687 .L37:
688 .LM93:
689 0352 2196 adiw r28,1
690 .LM94:
691 0354 81E0 ldi r24,lo8(1)
692 0356 DCDF rcall delay_ms
693 0358 829B sbis 48-0x20,2
694 035a FBCF rjmp .L37
695 .L44:
696 .LM95:
697 035c C536 cpi r28,101
698 035e D105 cpc r29,__zero_reg__
699 0360 60F0 brlo .L34
700 .LM96:
701 0362 C45F subi r28,lo8(500)
702 0364 D140 sbci r29,hi8(500)
703 0366 18F4 brsh .L39
704 .LM97:
705 0368 88E0 ldi r24,lo8(8)
706 036a 81BD out 65-0x20,r24
707 .L40:
708 .LM98:
709 036c FFCF rjmp .L40
710 .L39:
711 .LM99:
712 036e 8FEF ldi r24,lo8(-1)
713 0370 9FEF ldi r25,hi8(-1)
714 0372 9093 0000 sts (sensor_timer)+1,r25
715 0376 8093 0000 sts sensor_timer,r24
716 .L34:
717 /* epilogue: frame size=0 */
718 037a FF91 pop r31
719 037c EF91 pop r30
720 037e DF91 pop r29
721 0380 CF91 pop r28
722 0382 BF91 pop r27
723 0384 AF91 pop r26
724 0386 9F91 pop r25
725 0388 8F91 pop r24
726 038a 7F91 pop r23
727 038c 6F91 pop r22
728 038e 5F91 pop r21
729 0390 4F91 pop r20
730 0392 3F91 pop r19
731 0394 2F91 pop r18
732 0396 0F90 pop __tmp_reg__
733 0398 0FBE out __SREG__,__tmp_reg__
734 039a 0F90 pop __tmp_reg__
735 039c 1F90 pop __zero_reg__
736 039e 1895 reti
737 /* epilogue end (size=19) */
738 /* function __vector_1 size 63 (25) */
739 .LFE8:
741 .global __vector_2
743 __vector_2:
744 .LFB9:
745 .LM100:
746 /* prologue: frame size=0 */
747 03a0 1F92 push __zero_reg__
748 03a2 0F92 push __tmp_reg__
749 03a4 0FB6 in __tmp_reg__,__SREG__
750 03a6 0F92 push __tmp_reg__
751 03a8 1124 clr __zero_reg__
752 03aa 0F93 push r16
753 03ac 1F93 push r17
754 03ae 2F93 push r18
755 03b0 3F93 push r19
756 03b2 4F93 push r20
757 03b4 5F93 push r21
758 03b6 6F93 push r22
759 03b8 7F93 push r23
760 03ba 8F93 push r24
761 03bc 9F93 push r25
762 03be AF93 push r26
763 03c0 BF93 push r27
764 03c2 EF93 push r30
765 03c4 FF93 push r31
766 /* prologue end (size=19) */
767 .LM101:
768 03c6 8091 0000 lds r24,hall_debounce
769 03ca 8530 cpi r24,lo8(5)
770 03cc 08F4 brsh .+2
771 03ce A5C0 rjmp .L46
772 .LM102:
773 03d0 1DBC out (76)+1-0x20,__zero_reg__
774 03d2 1CBC out 76-0x20,__zero_reg__
775 .LM103:
776 03d4 8091 0000 lds r24,sensor_timer
777 03d8 9091 0000 lds r25,(sensor_timer)+1
778 03dc 8F3F cpi r24,255
779 03de 9105 cpc r25,__zero_reg__
780 03e0 08F0 brlo .+2
781 03e2 89C0 rjmp .L47
782 03e4 8091 0000 lds r24,sensor_timer
783 03e8 9091 0000 lds r25,(sensor_timer)+1
784 03ec 0497 sbiw r24,4
785 03ee 08F4 brsh .+2
786 03f0 82C0 rjmp .L47
787 .LM104:
788 03f2 8091 0000 lds r24,sensor_timer
789 03f6 9091 0000 lds r25,(sensor_timer)+1
790 03fa 982F mov r25,r24
791 03fc 8827 clr r24
792 03fe 22B7 in r18,82-0x20
793 0400 3327 clr r19
794 0402 822B or r24,r18
795 0404 932B or r25,r19
796 0406 9BBD out (74)+1-0x20,r25
797 0408 8ABD out 74-0x20,r24
798 .LM105:
799 040a 12BE out 82-0x20,__zero_reg__
800 .LM106:
801 040c 8091 0000 lds r24,line_timer_l
802 0410 8031 cpi r24,lo8(16)
803 0412 08F4 brsh .+2
804 0414 62C0 rjmp .L48
805 .LM107:
806 0416 8091 0000 lds r24,line_timer_l
807 041a 8051 subi r24,lo8(-(-16))
808 041c 8093 0000 sts line_timer_l,r24
809 .LM108:
810 0420 8091 0000 lds r24,line_shift
811 0424 8F5F subi r24,lo8(-(1))
812 0426 8F70 andi r24,lo8(15)
813 0428 8093 0000 sts line_shift,r24
814 .LM109:
815 042c 8091 0000 lds r24,line_shift
816 0430 8823 tst r24
817 0432 09F0 breq .+2
818 0434 52C0 rjmp .L48
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -