📄 multistep.lst
字号:
1C4C E010 LDI R17,0
1C4D 940E20B9 CALL empy16s
1C4F E023 LDI R18,3
1C50 E030 LDI R19,0
1C51 940E209F CALL div16u
1C53 01C8 MOVW R24,R16
1C54 5182 SUBI R24,0x12
1C55 4F9D SBCI R25,0xFD
1C56 0197 MOVW R18,R14
1C57 5021 SUBI R18,1
1C58 4030 SBCI R19,0
1C59 EA06 LDI R16,0xA6
1C5A E01E LDI R17,0xE
1C5B 940E20B9 CALL empy16s
1C5D 015C MOVW R10,R24
1C5E 0EA0 ADD R10,R16
1C5F 1EB1 ADC R11,R17
(0196) PORTC|=(1<<(j-1));
1C60 0197 MOVW R18,R14
1C61 5021 SUBI R18,1
1C62 4030 SBCI R19,0
1C63 E001 LDI R16,1
1C64 E010 LDI R17,0
1C65 940E20F3 CALL lsl16
1C67 B225 IN R2,0x15
1C68 2433 CLR R3
1C69 2A20 OR R2,R16
1C6A 2A31 OR R3,R17
1C6B BA25 OUT 0x15,R2
(0197) temp1=(50*angle3[i][j]/3+750)+(j-1)*3750;
1C6C E10A LDI R16,0x1A
1C6D E010 LDI R17,0
1C6E 0193 MOVW R18,R6
1C6F 940E20B9 CALL empy16s
1C71 0118 MOVW R2,R16
1C72 E48A LDI R24,0x4A
1C73 E29A LDI R25,0x2A
1C74 0E28 ADD R2,R24
1C75 1E39 ADC R3,R25
1C76 E002 LDI R16,2
1C77 E010 LDI R17,0
1C78 0197 MOVW R18,R14
1C79 940E20B9 CALL empy16s
1C7B 01F8 MOVW R30,R16
1C7C 0DE2 ADD R30,R2
1C7D 1DF3 ADC R31,R3
1C7E 9125 LPM R18,Z+
1C7F 9134 LPM R19,0(Z)
1C80 E302 LDI R16,0x32
1C81 E010 LDI R17,0
1C82 940E20B9 CALL empy16s
1C84 E023 LDI R18,3
1C85 E030 LDI R19,0
1C86 940E209F CALL div16u
1C88 01C8 MOVW R24,R16
1C89 5182 SUBI R24,0x12
1C8A 4F9D SBCI R25,0xFD
1C8B 0197 MOVW R18,R14
1C8C 5021 SUBI R18,1
1C8D 4030 SBCI R19,0
1C8E EA06 LDI R16,0xA6
1C8F E01E LDI R17,0xE
1C90 940E20B9 CALL empy16s
1C92 016C MOVW R12,R24
1C93 0EC0 ADD R12,R16
1C94 1ED1 ADC R13,R17
(0198) do{temp=TCNT1;
1C95 B56C IN R22,0x2C
1C96 B57D IN R23,0x2D
(0199) if(temp>temp1)PORTC&=~(1<<(j-1));
1C97 16C6 CP R12,R22
1C98 06D7 CPC R13,R23
1C99 F478 BCC 0x1CA9
1C9A 0197 MOVW R18,R14
1C9B 5021 SUBI R18,1
1C9C 4030 SBCI R19,0
1C9D E001 LDI R16,1
1C9E E010 LDI R17,0
1C9F 940E20F3 CALL lsl16
1CA1 0118 MOVW R2,R16
1CA2 9420 COM R2
1CA3 9430 COM R3
1CA4 B245 IN R4,0x15
1CA5 2455 CLR R5
1CA6 2042 AND R4,R2
1CA7 2053 AND R5,R3
1CA8 BA45 OUT 0x15,R4
(0200) if(temp>temp2)PORTA&=~(1<<(j-1));}while(temp<j*3750);
1CA9 16A6 CP R10,R22
1CAA 06B7 CPC R11,R23
1CAB F478 BCC 0x1CBB
1CAC 0197 MOVW R18,R14
1CAD 5021 SUBI R18,1
1CAE 4030 SBCI R19,0
1CAF E001 LDI R16,1
1CB0 E010 LDI R17,0
1CB1 940E20F3 CALL lsl16
1CB3 0118 MOVW R2,R16
1CB4 9420 COM R2
1CB5 9430 COM R3
1CB6 B24B IN R4,0x1B
1CB7 2455 CLR R5
1CB8 2042 AND R4,R2
1CB9 2053 AND R5,R3
1CBA BA4B OUT 0x1B,R4
1CBB EA06 LDI R16,0xA6
1CBC E01E LDI R17,0xE
1CBD 0197 MOVW R18,R14
1CBE 940E20B9 CALL empy16s
1CC0 1760 CP R22,R16
1CC1 0771 CPC R23,R17
1CC2 F290 BCS 0x1C95
1CC3 01C7 MOVW R24,R14
1CC4 9601 ADIW R24,1
1CC5 017C MOVW R14,R24
1CC6 01C7 MOVW R24,R14
1CC7 3089 CPI R24,0x9
1CC8 E0E0 LDI R30,0
1CC9 079E CPC R25,R30
1CCA F408 BCC 0x1CCC
1CCB CF57 RJMP 0x1C23
(0201) }
(0202) TCNT1=0x00;
1CCC 2422 CLR R2
1CCD 2433 CLR R3
1CCE BC3D OUT 0x2D,R3
1CCF BC2C OUT 0x2C,R2
1CD0 5041 SUBI R20,1
1CD1 4050 SBCI R21,0
1CD2 3040 CPI R20,0
1CD3 0745 CPC R20,R21
1CD4 F009 BEQ 0x1CD6
1CD5 CF45 RJMP 0x1C1B
1CD6 01C3 MOVW R24,R6
1CD7 9601 ADIW R24,1
1CD8 013C MOVW R6,R24
1CD9 9020010C LDS R2,0x10C
1CDB 9030010D LDS R3,0x10D
1CDD 1462 CP R6,R2
1CDE 0473 CPC R7,R3
1CDF F408 BCC 0x1CE1
1CE0 CF2D RJMP 0x1C0E
(0203) }
(0204) do{
(0205) for(i=cycle_start3;i<totalstep3;i++)
1CE1 9060010C LDS R6,0x10C
1CE3 9070010D LDS R7,0x10D
1CE5 C0CB RJMP 0x1DB1
(0206) for(t=angle3[i][0];t>0;t--)
1CE6 E10A LDI R16,0x1A
1CE7 E010 LDI R17,0
1CE8 0193 MOVW R18,R6
1CE9 940E20B9 CALL empy16s
1CEB 01F8 MOVW R30,R16
1CEC E48A LDI R24,0x4A
1CED E29A LDI R25,0x2A
1CEE 0FE8 ADD R30,R24
1CEF 1FF9 ADC R31,R25
1CF0 9145 LPM R20,Z+
1CF1 9154 LPM R21,0(Z)
1CF2 C0B7 RJMP 0x1DAA
(0207) {TCNT1=0x00;
1CF3 2422 CLR R2
1CF4 2433 CLR R3
1CF5 BC3D OUT 0x2D,R3
1CF6 BC2C OUT 0x2C,R2
(0208) for(j=1;j<9;j++)
1CF7 E081 LDI R24,1
1CF8 E090 LDI R25,0
1CF9 017C MOVW R14,R24
1CFA C0A3 RJMP 0x1D9E
(0209) { if(j<5)
1CFB 01C7 MOVW R24,R14
1CFC 3085 CPI R24,5
1CFD E0E0 LDI R30,0
1CFE 079E CPC R25,R30
1CFF F008 BCS 0x1D01
1D00 C037 RJMP 0x1D38
(0210) {PORTA|=(1<<(j-1));
1D01 019C MOVW R18,R24
1D02 5021 SUBI R18,1
1D03 4030 SBCI R19,0
1D04 E001 LDI R16,1
1D05 E010 LDI R17,0
1D06 940E20F3 CALL lsl16
1D08 B22B IN R2,0x1B
1D09 2433 CLR R3
1D0A 2A20 OR R2,R16
1D0B 2A31 OR R3,R17
1D0C BA2B OUT 0x1B,R2
(0211) temp2=(50*angle3[i][j+8]/3+750)+(j-1)*3750;}
1D0D E10A LDI R16,0x1A
1D0E E010 LDI R17,0
1D0F 0193 MOVW R18,R6
1D10 940E20B9 CALL empy16s
1D12 0118 MOVW R2,R16
1D13 E48A LDI R24,0x4A
1D14 E29A LDI R25,0x2A
1D15 0E28 ADD R2,R24
1D16 1E39 ADC R3,R25
1D17 0197 MOVW R18,R14
1D18 5F28 SUBI R18,0xF8
1D19 4F3F SBCI R19,0xFF
1D1A E002 LDI R16,2
1D1B E010 LDI R17,0
1D1C 940E20B9 CALL empy16s
1D1E 01F8 MOVW R30,R16
1D1F 0DE2 ADD R30,R2
1D20 1DF3 ADC R31,R3
1D21 9125 LPM R18,Z+
1D22 9134 LPM R19,0(Z)
1D23 E302 LDI R16,0x32
1D24 E010 LDI R17,0
1D25 940E20B9 CALL empy16s
1D27 E023 LDI R18,3
1D28 E030 LDI R19,0
1D29 940E209F CALL div16u
1D2B 01C8 MOVW R24,R16
1D2C 5182 SUBI R24,0x12
1D2D 4F9D SBCI R25,0xFD
1D2E 0197 MOVW R18,R14
1D2F 5021 SUBI R18,1
1D30 4030 SBCI R19,0
1D31 EA06 LDI R16,0xA6
1D32 E01E LDI R17,0xE
1D33 940E20B9 CALL empy16s
1D35 015C MOVW R10,R24
1D36 0EA0 ADD R10,R16
1D37 1EB1 ADC R11,R17
(0212) PORTC|=(1<<(j-1));
1D38 0197 MOVW R18,R14
1D39 5021 SUBI R18,1
1D3A 4030 SBCI R19,0
1D3B E001 LDI R16,1
1D3C E010 LDI R17,0
1D3D 940E20F3 CALL lsl16
1D3F B225 IN R2,0x15
1D40 2433 CLR R3
1D41 2A20 OR R2,R16
1D42 2A31 OR R3,R17
1D43 BA25 OUT 0x15,R2
(0213) temp1=(50*angle3[i][j]/3+750)+(j-1)*3750;
1D44 E10A LDI R16,0x1A
1D45 E010 LDI R17,0
1D46 0193 MOVW R18,R6
1D47 940E20B9 CALL empy16s
1D49 0118 MOVW R2,R16
1D4A E48A LDI R24,0x4A
1D4B E29A LDI R25,0x2A
1D4C 0E28 ADD R2,R24
1D4D 1E39 ADC R3,R25
1D4E E002 LDI R16,2
1D4F E010 LDI R17,0
1D50 0197 MOVW R18,R14
1D51 940E20B9 CALL empy16s
1D53 01F8 MOVW R30,R16
1D54 0DE2 ADD R30,R2
1D55 1DF3 ADC R31,R3
1D56 9125 LPM R18,Z+
1D57 9134 LPM R19,0(Z)
1D58 E302 LDI R16,0x32
1D59 E010 LDI R17,0
1D5A 940E20B9 CALL empy16s
1D5C E023 LDI R18,3
1D5D E030 LDI R19,0
1D5E 940E209F CALL div16u
1D60 01C8 MOVW R24,R16
1D61 5182 SUBI R24,0x12
1D62 4F9D SBCI R25,0xFD
1D63 0197 MOVW R18,R14
1D64 5021 SUBI R18,1
1D65 4030 SBCI R19,0
1D66 EA06 LDI R16,0xA6
1D67 E01E LDI R17,0xE
1D68 940E20B9 CALL empy16s
1D6A 016C MOVW R12,R24
1D6B 0EC0 ADD R12,R16
1D6C 1ED1 ADC R13,R17
(0214) do{ temp=TCNT1;
1D6D B56C IN R22,0x2C
1D6E B57D IN R23,0x2D
(0215) if(temp>temp1)PORTC&=~(1<<(j-1));
1D6F 16C6 CP R12,R22
1D70 06D7 CPC R13,R23
1D71 F478 BCC 0x1D81
1D72 0197 MOVW R18,R14
1D73 5021 SUBI R18,1
1D74 4030 SBCI R19,0
1D75 E001 LDI R16,1
1D76 E010 LDI R17,0
1D77 940E20F3 CALL lsl16
1D79 0118 MOVW R2,R16
1D7A 9420 COM R2
1D7B 9430 COM R3
1D7C B245 IN R4,0x15
1D7D 2455 CLR R5
1D7E 2042 AND R4,R2
1D7F 2053 AND R5,R3
1D80 BA45 OUT 0x15,R4
(0216) if(temp>temp2)PORTA&=~(1<<(j-1));
1D81 16A6 CP R10,R22
1D82 06B7 CPC R11,R23
1D83 F478 BCC 0x1D93
1D84 0197 MOVW R18,R14
1D85 5021 SUBI R18,1
1D86 4030 SBCI R19,0
1D87 E001 LDI R16,1
1D88 E010 LDI R17,0
1D89 940E20F3 CALL lsl16
1D8B 0118 MOVW R2,R16
1D8C 9420 COM R2
1D8D 9430 COM R3
1D8E B24B IN R4,0x1B
1D8F 2455 CLR R5
1D90 2042 AND R4,R2
1D91 2053 AND R5,R3
1D92 BA4B OUT 0x1B,R4
(0217) } while(temp<j*3750);
1D93 EA06 LDI R16,0xA6
1D94 E01E LDI R17,0xE
1D95 0197 MOVW R18,R14
1D96 940E20B9 CALL empy16s
1D98 1760 CP R22,R16
1D99 0771 CPC R23,R17
1D9A F290 BCS 0x1D6D
1D9B 01C7 MOVW R24,R14
1D9C 9601 ADIW R24,1
1D9D 017C MOVW R14,R24
1D9E 01C7 MOVW R24,R14
1D9F 3089 CPI R24,0x9
1DA0 E0E0 LDI R30,0
1DA1 079E CPC R25,R30
1DA2 F408 BCC 0x1DA4
1DA3 CF57 RJMP 0x1CFB
(0218) }
(0219) TCNT1=0x00;
1DA4 2422 CLR R2
1DA5 2433 CLR R3
1DA6 BC3D OUT 0x2D,R3
1DA7 BC2C OUT 0x2C,R2
1DA8 5041 SUBI R20,1
1DA9 4050 SBCI R21,0
1DAA 3040 CPI R20,0
1DAB 0745 CPC R20,R21
1DAC F009 BEQ 0x1DAE
1DAD CF45 RJMP 0x1CF3
1DAE 01C3 MOVW R24,R6
1DAF 9601 ADIW R24,1
1DB0 013C MOVW R6,R24
1DB1 90200114 LDS R2,0x114
1DB3 90300115 LDS R3,0x115
1DB5 1462 CP R6,R2
1DB6 0473 CPC R7,R3
1DB7 F408 BCC 0x1DB9
1DB8 CF2D RJMP 0x1CE6
(0220) }
(0221) N3--;
1DB9 91800104 LDS R24,0x104
1DBB 91900105 LDS R25,0x105
1DBD 9701 SBIW R24,1
1DBE 93900105 STS 0x105,R25
1DC0 93800104 STS 0x104,R24
(0222) } while(N3);
1DC2 90200104 LDS R2,0x104
1DC4 90300105 LDS R3,0x105
1DC6 2022 TST R2
1DC7 F009 BEQ 0x1DC9
1DC8 CF18 RJMP 0x1CE1
1DC9 2033 TST R3
1DCA F009 BEQ 0x1DCC
1DCB CF15 RJMP 0x1CE1
(0223)
(0224)
(0225) for(i=0;i<4;i++)
1DCC 2466 CLR R6
1DCD 2477 CLR R7
1DCE C0CB RJMP 0x1E9A
(0226) for(t=angle3_4[i][0];t>0;t--)
1DCF E10A LDI R16,0x1A
1DD0 E010 LDI R17,0
1DD1 0193 MOVW R18,R6
1DD2 940E20B9 CALL empy16s
1DD4 01F8 MOVW R30,R16
1DD5 EE86 LDI R24,0xE6
1DD6 E29A LDI R25,0x2A
1DD7 0FE8 ADD R30,R24
1DD8 1FF9 ADC R31,R25
1DD9 9145 LPM R20,Z+
1DDA 9154 LPM R21,0(Z)
1DDB C0B7 RJMP 0x1E93
(0227) { TCNT1=0x00;
1DDC 2422 CLR R2
1DDD 2433 CLR R3
1DDE BC3D OUT 0x2D,R3
1DDF BC2C OUT 0x2C,R2
(0228) for(j=1;j<9;j++)
1DE0 E081 LDI R24,1
1DE1 E090 LDI R25,0
1DE2 017C MOVW R14,R24
1DE3 C0A3 RJMP 0x1E87
(0229) {if(j<5)
1DE4 01C7 MOVW R24,R14
1DE5 3085 CPI R24,5
1DE6 E0E0 LDI R30,0
1DE7 079E CPC R25,R30
1DE8 F008 BCS 0x1DEA
1DE9 C037 RJMP 0x1E21
(0230) {PORTA|=(1<<(j-1));
1DEA 019C MOVW R18,R24
1DEB 5021 SUBI R18,1
1DEC 4030 SBCI R19,0
1DED E001 LDI R16,1
1DEE E010 LDI R17,0
1DEF 940E20F3 CALL lsl16
1DF1 B22B IN R2,0x1B
1DF2 2433 CLR R3
1DF3 2A20 OR R2,R16
1D
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -