📄 led.lis
字号:
0590 0E940000 xcall mod16u
0594 402F mov R20,R16
0596 .dbline 189
0596 ; display_one(6,temp);
0596 242F mov R18,R20
0598 06E0 ldi R16,6
059A 54DD xcall _display_one
059C .dbline 190
059C ; delay_ms(6);
059C 06E0 ldi R16,6
059E 10E0 ldi R17,0
05A0 38DD xcall _delay_ms
05A2 .dbline 191
05A2 ; led_contrl_port |= (1<<6);
05A2 969A sbi 0x12,6
05A4 .dbline 193
05A4 ; //第二位小数
05A4 ; temp2=(data*100);
05A4 00E0 ldi R16,<L42
05A6 10E0 ldi R17,>L42
05A8 0E940000 xcall lpm32
05AC 3A93 st -y,R19
05AE 2A93 st -y,R18
05B0 1A93 st -y,R17
05B2 0A93 st -y,R16
05B4 FE01 movw R30,R28
05B6 ; stack offset 4
05B6 228C ldd R2,z+26
05B8 338C ldd R3,z+27
05BA 448C ldd R4,z+28
05BC 558C ldd R5,z+29
05BE 5A92 st -y,R5
05C0 4A92 st -y,R4
05C2 3A92 st -y,R3
05C4 2A92 st -y,R2
05C6 0E940000 xcall empy32f
05CA FE01 movw R30,R28
05CC 0087 std z+8,R16
05CE 1187 std z+9,R17
05D0 2287 std z+10,R18
05D2 3387 std z+11,R19
05D4 FE01 movw R30,R28
05D6 2084 ldd R2,z+8
05D8 3184 ldd R3,z+9
05DA 4284 ldd R4,z+10
05DC 5384 ldd R5,z+11
05DE 5A92 st -y,R5
05E0 4A92 st -y,R4
05E2 3A92 st -y,R3
05E4 2A92 st -y,R2
05E6 00E0 ldi R16,<L39
05E8 10E0 ldi R17,>L39
05EA 0E940000 xcall lpm32
05EE 3A93 st -y,R19
05F0 2A93 st -y,R18
05F2 1A93 st -y,R17
05F4 0A93 st -y,R16
05F6 0E940000 xcall cmp32f
05FA D4F0 brlt L51
05FC FE01 movw R30,R28
05FE 2084 ldd R2,z+8
0600 3184 ldd R3,z+9
0602 4284 ldd R4,z+10
0604 5384 ldd R5,z+11
0606 5A92 st -y,R5
0608 4A92 st -y,R4
060A 3A92 st -y,R3
060C 2A92 st -y,R2
060E 00E0 ldi R16,<L39
0610 10E0 ldi R17,>L39
0612 0E940000 xcall lpm32
0616 3A93 st -y,R19
0618 2A93 st -y,R18
061A 1A93 st -y,R17
061C 0A93 st -y,R16
061E 0E940000 xcall sub32f
0622 0E940000 xcall fp2int
0626 C801 movw R24,R16
0628 8050 subi R24,0 ; offset = 32768
062A 9048 sbci R25,128
062C 5C01 movw R10,R24
062E 08C0 xjmp L52
0630 L51:
0630 FE01 movw R30,R28
0632 0085 ldd R16,z+8
0634 1185 ldd R17,z+9
0636 2285 ldd R18,z+10
0638 3385 ldd R19,z+11
063A 0E940000 xcall fp2int
063E 5801 movw R10,R16
0640 L52:
0640 B501 movw R22,R10
0642 .dbline 194
0642 ; temp=temp2%10; // 1.234*100%10 = 3
0642 2AE0 ldi R18,10
0644 30E0 ldi R19,0
0646 8B01 movw R16,R22
0648 0E940000 xcall mod16u
064C 402F mov R20,R16
064E .dbline 195
064E ; display_one(5,temp);
064E 242F mov R18,R20
0650 05E0 ldi R16,5
0652 F8DC xcall _display_one
0654 .dbline 196
0654 ; delay_ms(6);
0654 06E0 ldi R16,6
0656 10E0 ldi R17,0
0658 DCDC xcall _delay_ms
065A .dbline 197
065A ; led_contrl_port |= (1<<5);
065A 959A sbi 0x12,5
065C .dbline 199
065C ; //第三位小数
065C ; temp2=(data*1000);
065C 00E0 ldi R16,<L29
065E 10E0 ldi R17,>L29
0660 0E940000 xcall lpm32
0664 3A93 st -y,R19
0666 2A93 st -y,R18
0668 1A93 st -y,R17
066A 0A93 st -y,R16
066C FE01 movw R30,R28
066E ; stack offset 4
066E 228C ldd R2,z+26
0670 338C ldd R3,z+27
0672 448C ldd R4,z+28
0674 558C ldd R5,z+29
0676 5A92 st -y,R5
0678 4A92 st -y,R4
067A 3A92 st -y,R3
067C 2A92 st -y,R2
067E 0E940000 xcall empy32f
0682 FE01 movw R30,R28
0684 0487 std z+12,R16
0686 1587 std z+13,R17
0688 2687 std z+14,R18
068A 3787 std z+15,R19
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,<L39
06A0 10E0 ldi R17,>L39
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 cmp32f
06B2 D4F0 brlt L53
06B4 FE01 movw R30,R28
06B6 2484 ldd R2,z+12
06B8 3584 ldd R3,z+13
06BA 4684 ldd R4,z+14
06BC 5784 ldd R5,z+15
06BE 5A92 st -y,R5
06C0 4A92 st -y,R4
06C2 3A92 st -y,R3
06C4 2A92 st -y,R2
06C6 00E0 ldi R16,<L39
06C8 10E0 ldi R17,>L39
06CA 0E940000 xcall lpm32
06CE 3A93 st -y,R19
06D0 2A93 st -y,R18
06D2 1A93 st -y,R17
06D4 0A93 st -y,R16
06D6 0E940000 xcall sub32f
06DA 0E940000 xcall fp2int
06DE C801 movw R24,R16
06E0 8050 subi R24,0 ; offset = 32768
06E2 9048 sbci R25,128
06E4 5C01 movw R10,R24
06E6 08C0 xjmp L54
06E8 L53:
06E8 FE01 movw R30,R28
06EA 0485 ldd R16,z+12
06EC 1585 ldd R17,z+13
06EE 2685 ldd R18,z+14
06F0 3785 ldd R19,z+15
06F2 0E940000 xcall fp2int
06F6 5801 movw R10,R16
06F8 L54:
06F8 B501 movw R22,R10
06FA .dbline 200
06FA ; temp=temp2%10; // 1.234*1000%10 = 4
06FA 2AE0 ldi R18,10
06FC 30E0 ldi R19,0
06FE 8B01 movw R16,R22
0700 0E940000 xcall mod16u
0704 402F mov R20,R16
0706 .dbline 201
0706 ; display_one(4,temp);
0706 242F mov R18,R20
0708 04E0 ldi R16,4
070A 9CDC xcall _display_one
070C .dbline 202
070C ; delay_ms(6);
070C 06E0 ldi R16,6
070E 10E0 ldi R17,0
0710 80DC xcall _delay_ms
0712 .dbline 203
0712 ; led_contrl_port |= (1<<4);
0712 949A sbi 0x12,4
0714 .dbline 204
0714 ; }
0714 B3C2 xjmp L46
0716 L45:
0716 .dbline 205
0716 ; else if(data<100) // 例如12.34
0716 FE01 movw R30,R28
0718 2688 ldd R2,z+22
071A 3788 ldd R3,z+23
071C 408C ldd R4,z+24
071E 518C ldd R5,z+25
0720 5A92 st -y,R5
0722 4A92 st -y,R4
0724 3A92 st -y,R3
0726 2A92 st -y,R2
0728 00E0 ldi R16,<L42
072A 10E0 ldi R17,>L42
072C 0E940000 xcall lpm32
0730 3A93 st -y,R19
0732 2A93 st -y,R18
0734 1A93 st -y,R17
0736 0A93 st -y,R16
0738 0E940000 xcall cmp32f
073C 0CF0 brlt X4
073E 44C1 xjmp L55
0740 X4:
0740 .dbline 206
0740 ; {
0740 .dbline 207
0740 ; temp2=data;
0740 FE01 movw R30,R28
0742 2688 ldd R2,z+22
0744 3788 ldd R3,z+23
0746 408C ldd R4,z+24
0748 518C ldd R5,z+25
074A 5A92 st -y,R5
074C 4A92 st -y,R4
074E 3A92 st -y,R3
0750 2A92 st -y,R2
0752 00E0 ldi R16,<L39
0754 10E0 ldi R17,>L39
0756 0E940000 xcall lpm32
075A 3A93 st -y,R19
075C 2A93 st -y,R18
075E 1A93 st -y,R17
0760 0A93 st -y,R16
0762 0E940000 xcall cmp32f
0766 D4F0 brlt L57
0768 FE01 movw R30,R28
076A 2688 ldd R2,z+22
076C 3788 ldd R3,z+23
076E 408C ldd R4,z+24
0770 518C ldd R5,z+25
0772 5A92 st -y,R5
0774 4A92 st -y,R4
0776 3A92 st -y,R3
0778 2A92 st -y,R2
077A 00E0 ldi R16,<L39
077C 10E0 ldi R17,>L39
077E 0E940000 xcall lpm32
0782 3A93 st -y,R19
0784 2A93 st -y,R18
0786 1A93 st -y,R17
0788 0A93 st -y,R16
078A 0E940000 xcall sub32f
078E 0E940000 xcall fp2int
0792 C801 movw R24,R16
0794 8050 subi R24,0 ; offset = 32768
0796 9048 sbci R25,128
0798 5C01 movw R10,R24
079A 08C0 xjmp L58
079C L57:
079C FE01 movw R30,R28
079E 0689 ldd R16,z+22
07A0 1789 ldd R17,z+23
07A2 208D ldd R18,z+24
07A4 318D ldd R19,z+25
07A6 0E940000 xcall fp2int
07AA 5801 movw R10,R16
07AC L58:
07AC B501 movw R22,R10
07AE .dbline 208
07AE ; temp=(temp2/10); // 12.34/10=1
07AE 2AE0 ldi R18,10
07B0 30E0 ldi R19,0
07B2 8B01 movw R16,R22
07B4 0E940000 xcall div16u
07B8 402F mov R20,R16
07BA .dbline 209
07BA ; display_one(7,temp);
07BA 242F mov R18,R20
07BC 07E0 ldi R16,7
07BE 42DC xcall _display_one
07C0 .dbline 210
07C0 ; delay_ms(6);
07C0 06E0 ldi R16,6
07C2 10E0 ldi R17,0
07C4 26DC xcall _delay_ms
07C6 .dbline 211
07C6 ; led_contrl_port |= (1<<7);
07C6 979A sbi 0x12,7
07C8 .dbline 213
07C8 ;
07C8 ; temp2=data;
07C8 FE01 movw R30,R28
07CA 2688 ldd R2,z+22
07CC 3788 ldd R3,z+23
07CE 408C ldd R4,z+24
07D0 518C ldd R5,z+25
07D2 5A92 st -y,R5
07D4 4A92 st -y,R4
07D6 3A92 st -y,R3
07D8 2A92 st -y,R2
07DA 00E0 ldi R16,<L39
07DC 10E0 ldi R17,>L39
07DE 0E940000 xcall lpm32
07E2 3A93 st -y,R19
07E4 2A93 st -y,R18
07E6 1A93 st -y,R17
07E8 0A93 st -y,R16
07EA 0E940000 xcall cmp32f
07EE D4F0 brlt L59
07F0 FE01 movw R30,R28
07F2 2688 ldd R2,z+22
07F4 3788 ldd R3,z+23
07F6 408C ldd R4,z+24
07F8 518C ldd R5,z+25
07FA 5A92 st -y,R5
07FC 4A92 st -y,R4
07FE 3A92 st -y,R3
0800 2A92 st -y,R2
0802 00E0 ldi R16,<L39
0804 10E0 ldi R17,>L39
0806 0E940000 xcall lpm32
080A 3A93 st -y,R19
080C 2A93 st -y,R18
080E 1A93 st -y,R17
0810 0A93 st -y,R16
0812 0E940000 xcall sub32f
0816 0E940000 xcall fp2int
081A C801 movw R24,R16
081C 8050 subi R24,0 ; offset = 32768
081E 9048 sbci R25,128
0820 5C01 movw R10,R24
0822 08C0 xjmp L60
0824 L59:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -