📄 led.lis
字号:
0628 F1DC xcall _display_one
062A .dbline 167
062A ; delay_ms(6);
062A 06E0 ldi R16,6
062C 10E0 ldi R17,0
062E 0E940000 xcall _delay_ms
0632 .dbline 168
0632 ; led_contrl_port &=~ (1<<1);
0632 C198 cbi 0x18,1
0634 .dbline 170
0634 ; //第三位小数
0634 ; temp2=(data*1000);
0634 00E0 ldi R16,<L19
0636 10E0 ldi R17,>L19
0638 0E940000 xcall lpm32
063C 3A93 st -y,R19
063E 2A93 st -y,R18
0640 1A93 st -y,R17
0642 0A93 st -y,R16
0644 FE01 movw R30,R28
0646 ; stack offset 4
0646 228C ldd R2,z+26
0648 338C ldd R3,z+27
064A 448C ldd R4,z+28
064C 558C ldd R5,z+29
064E 5A92 st -y,R5
0650 4A92 st -y,R4
0652 3A92 st -y,R3
0654 2A92 st -y,R2
0656 0E940000 xcall empy32f
065A FE01 movw R30,R28
065C 0487 std z+12,R16
065E 1587 std z+13,R17
0660 2687 std z+14,R18
0662 3787 std z+15,R19
0664 FE01 movw R30,R28
0666 2484 ldd R2,z+12
0668 3584 ldd R3,z+13
066A 4684 ldd R4,z+14
066C 5784 ldd R5,z+15
066E 5A92 st -y,R5
0670 4A92 st -y,R4
0672 3A92 st -y,R3
0674 2A92 st -y,R2
0676 00E0 ldi R16,<L29
0678 10E0 ldi R17,>L29
067A 0E940000 xcall lpm32
067E 3A93 st -y,R19
0680 2A93 st -y,R18
0682 1A93 st -y,R17
0684 0A93 st -y,R16
0686 0E940000 xcall cmp32f
068A D4F0 brlt L43
068C FE01 movw R30,R28
068E 2484 ldd R2,z+12
0690 3584 ldd R3,z+13
0692 4684 ldd R4,z+14
0694 5784 ldd R5,z+15
0696 5A92 st -y,R5
0698 4A92 st -y,R4
069A 3A92 st -y,R3
069C 2A92 st -y,R2
069E 00E0 ldi R16,<L29
06A0 10E0 ldi R17,>L29
06A2 0E940000 xcall lpm32
06A6 3A93 st -y,R19
06A8 2A93 st -y,R18
06AA 1A93 st -y,R17
06AC 0A93 st -y,R16
06AE 0E940000 xcall sub32f
06B2 0E940000 xcall fp2int
06B6 C801 movw R24,R16
06B8 8050 subi R24,0 ; offset = 32768
06BA 9048 sbci R25,128
06BC 5C01 movw R10,R24
06BE 08C0 xjmp L44
06C0 L43:
06C0 FE01 movw R30,R28
06C2 0485 ldd R16,z+12
06C4 1585 ldd R17,z+13
06C6 2685 ldd R18,z+14
06C8 3785 ldd R19,z+15
06CA 0E940000 xcall fp2int
06CE 5801 movw R10,R16
06D0 L44:
06D0 B501 movw R22,R10
06D2 .dbline 171
06D2 ; temp=temp2%10; // 1.234*1000%10 = 4
06D2 2AE0 ldi R18,10
06D4 30E0 ldi R19,0
06D6 8B01 movw R16,R22
06D8 0E940000 xcall mod16u
06DC 402F mov R20,R16
06DE .dbline 172
06DE ; display_one(0,temp);
06DE 242F mov R18,R20
06E0 0027 clr R16
06E2 94DC xcall _display_one
06E4 .dbline 173
06E4 ; delay_ms(6);
06E4 06E0 ldi R16,6
06E6 10E0 ldi R17,0
06E8 0E940000 xcall _delay_ms
06EC .dbline 174
06EC ; led_contrl_port &=~ (1<<0);
06EC C098 cbi 0x18,0
06EE .dbline 175
06EE ; }
06EE B7C2 xjmp L36
06F0 L35:
06F0 .dbline 176
06F0 ; else if(data<100) // 例如12.34
06F0 FE01 movw R30,R28
06F2 2688 ldd R2,z+22
06F4 3788 ldd R3,z+23
06F6 408C ldd R4,z+24
06F8 518C ldd R5,z+25
06FA 5A92 st -y,R5
06FC 4A92 st -y,R4
06FE 3A92 st -y,R3
0700 2A92 st -y,R2
0702 00E0 ldi R16,<L32
0704 10E0 ldi R17,>L32
0706 0E940000 xcall lpm32
070A 3A93 st -y,R19
070C 2A93 st -y,R18
070E 1A93 st -y,R17
0710 0A93 st -y,R16
0712 0E940000 xcall cmp32f
0716 0CF0 brlt X2
0718 46C1 xjmp L45
071A X2:
071A .dbline 177
071A ; {
071A .dbline 178
071A ; temp2=data;
071A FE01 movw R30,R28
071C 2688 ldd R2,z+22
071E 3788 ldd R3,z+23
0720 408C ldd R4,z+24
0722 518C ldd R5,z+25
0724 5A92 st -y,R5
0726 4A92 st -y,R4
0728 3A92 st -y,R3
072A 2A92 st -y,R2
072C 00E0 ldi R16,<L29
072E 10E0 ldi R17,>L29
0730 0E940000 xcall lpm32
0734 3A93 st -y,R19
0736 2A93 st -y,R18
0738 1A93 st -y,R17
073A 0A93 st -y,R16
073C 0E940000 xcall cmp32f
0740 D4F0 brlt L47
0742 FE01 movw R30,R28
0744 2688 ldd R2,z+22
0746 3788 ldd R3,z+23
0748 408C ldd R4,z+24
074A 518C ldd R5,z+25
074C 5A92 st -y,R5
074E 4A92 st -y,R4
0750 3A92 st -y,R3
0752 2A92 st -y,R2
0754 00E0 ldi R16,<L29
0756 10E0 ldi R17,>L29
0758 0E940000 xcall lpm32
075C 3A93 st -y,R19
075E 2A93 st -y,R18
0760 1A93 st -y,R17
0762 0A93 st -y,R16
0764 0E940000 xcall sub32f
0768 0E940000 xcall fp2int
076C C801 movw R24,R16
076E 8050 subi R24,0 ; offset = 32768
0770 9048 sbci R25,128
0772 5C01 movw R10,R24
0774 08C0 xjmp L48
0776 L47:
0776 FE01 movw R30,R28
0778 0689 ldd R16,z+22
077A 1789 ldd R17,z+23
077C 208D ldd R18,z+24
077E 318D ldd R19,z+25
0780 0E940000 xcall fp2int
0784 5801 movw R10,R16
0786 L48:
0786 B501 movw R22,R10
0788 .dbline 179
0788 ; temp=(temp2/10); // 12.34/10=1
0788 2AE0 ldi R18,10
078A 30E0 ldi R19,0
078C 8B01 movw R16,R22
078E 0E940000 xcall div16u
0792 402F mov R20,R16
0794 .dbline 180
0794 ; display_one(3,temp);
0794 242F mov R18,R20
0796 03E0 ldi R16,3
0798 39DC xcall _display_one
079A .dbline 181
079A ; delay_ms(6);
079A 06E0 ldi R16,6
079C 10E0 ldi R17,0
079E 0E940000 xcall _delay_ms
07A2 .dbline 182
07A2 ; led_contrl_port &=~ (1<<3);
07A2 C398 cbi 0x18,3
07A4 .dbline 184
07A4 ;
07A4 ; temp2=data;
07A4 FE01 movw R30,R28
07A6 2688 ldd R2,z+22
07A8 3788 ldd R3,z+23
07AA 408C ldd R4,z+24
07AC 518C ldd R5,z+25
07AE 5A92 st -y,R5
07B0 4A92 st -y,R4
07B2 3A92 st -y,R3
07B4 2A92 st -y,R2
07B6 00E0 ldi R16,<L29
07B8 10E0 ldi R17,>L29
07BA 0E940000 xcall lpm32
07BE 3A93 st -y,R19
07C0 2A93 st -y,R18
07C2 1A93 st -y,R17
07C4 0A93 st -y,R16
07C6 0E940000 xcall cmp32f
07CA D4F0 brlt L49
07CC FE01 movw R30,R28
07CE 2688 ldd R2,z+22
07D0 3788 ldd R3,z+23
07D2 408C ldd R4,z+24
07D4 518C ldd R5,z+25
07D6 5A92 st -y,R5
07D8 4A92 st -y,R4
07DA 3A92 st -y,R3
07DC 2A92 st -y,R2
07DE 00E0 ldi R16,<L29
07E0 10E0 ldi R17,>L29
07E2 0E940000 xcall lpm32
07E6 3A93 st -y,R19
07E8 2A93 st -y,R18
07EA 1A93 st -y,R17
07EC 0A93 st -y,R16
07EE 0E940000 xcall sub32f
07F2 0E940000 xcall fp2int
07F6 C801 movw R24,R16
07F8 8050 subi R24,0 ; offset = 32768
07FA 9048 sbci R25,128
07FC 5C01 movw R10,R24
07FE 08C0 xjmp L50
0800 L49:
0800 FE01 movw R30,R28
0802 0689 ldd R16,z+22
0804 1789 ldd R17,z+23
0806 208D ldd R18,z+24
0808 318D ldd R19,z+25
080A 0E940000 xcall fp2int
080E 5801 movw R10,R16
0810 L50:
0810 B501 movw R22,R10
0812 .dbline 185
0812 ; temp=(temp2%10); // 12.34%10=2
0812 2AE0 ldi R18,10
0814 30E0 ldi R19,0
0816 8B01 movw R16,R22
0818 0E940000 xcall mod16u
081C 402F mov R20,R16
081E .dbline 186
081E ; display_one(2,temp);
081E 242F mov R18,R20
0820 02E0 ldi R16,2
0822 F4DB xcall _display_one
0824 .dbline 187
0824 ; led_port |= 0x80; //点亮对应小数点
0824 DF9A sbi 0x1b,7
0826 .dbline 188
0826 ; delay_ms(6);
0826 06E0 ldi R16,6
0828 10E0 ldi R17,0
082A 0E940000 xcall _delay_ms
082E .dbline 189
082E ; led_contrl_port &=~ (1<<2);
082E C298 cbi 0x18,2
0830 .dbline 191
0830 ;
0830 ; temp2=(data*10);
0830 00E0 ldi R16,<L28
0832 10E0 ldi R17,>L28
0834 0E940000 xcall lpm32
0838 3A93 st -y,R19
083A 2A93 st -y,R18
083C 1A93 st -y,R17
083E 0A93 st -y,R16
0840 FE01 movw R30,R28
0842 ; stack offset 4
0842 228C ldd R2,z+26
0844 338C ldd R3,z+27
0846 448C ldd R4,z+28
0848 558C ldd R5,z+29
084A 5A92 st -y,R5
084C 4A92 st -y,R4
084E 3A92 st -y,R3
0850 2A92 st -y,R2
0852 0E940000 xcall empy32f
0856 FE01 movw R30,R28
0858 0083 std z+0,R16
085A 1183 std z+1,R17
085C 2283 std z+2,R18
085E 3383 std z+3,R19
0860 FE01 movw R30,R28
0862 2080 ldd R2,z+0
0864 3180 ldd R3,z+1
0866 4280 ldd R4,z+2
0868 5380 ldd R5,z+3
086A 5A92 st -y,R5
086C 4A92 st -y,R4
086E 3A92 st -y,R3
0870 2A92 st -y,R2
0872 00E0 ldi R16,<L29
0874 10E0 ldi R17,>L29
0876 0E940000 xcall lpm32
087A 3A93 st -y,R19
087C 2A93 st -y,R18
087E 1A93 st -y,R17
0880 0A93 st -y,R16
0882 0E940000 xcall cmp32f
0886 D4F0 brlt L51
0888 FE01 movw R30,R28
088A 2080 ldd R2,z+0
088C 3180 ldd R3,z+1
088E 4280 ldd R4,z+2
0890 5380 ldd R5,z+3
0892 5A92 st -y,R5
0894 4A92 st -y,R4
0896 3A92 st -y,R3
0898 2A92 st -y,R2
089A 00E0 ldi R16,<L29
089C 10E0 ldi R17,>L29
089E 0E940000 xcall lpm32
08A2 3A93 st -y,R19
08A4 2A93 st -y,R18
08A6 1A93 st -y,R17
08A8 0A93 st -y,R16
08AA 0E940000 xcall sub32f
08AE 0E940000 xcall fp2int
08B2 C801 movw R24,R16
08B4 8050 subi R24,0 ; offset = 32768
08B6 9048 sbci R25,128
08B8 5C01 movw R10,R24
08BA 08C0 xjmp L52
08BC L51:
08BC FE01 movw R30,R28
08BE 0081 ldd R16,z+0
08C0 1181 ldd R17,z+1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -