⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 multistep.lst

📁 在ATMEGA128单片机上开发的一个机器人控制程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
    175D 0EC0      ADD	R12,R16
    175E 1ED1      ADC	R13,R17
(0088)     do{temp=TCNT1;	
    175F B56C      IN	R22,0x2C
    1760 B57D      IN	R23,0x2D
(0089)  	    if(temp>temp1)PORTC&=~(1<<(j-1));	
    1761 16C6      CP	R12,R22
    1762 06D7      CPC	R13,R23
    1763 F478      BCC	0x1773
    1764 0197      MOVW	R18,R14
    1765 5021      SUBI	R18,1
    1766 4030      SBCI	R19,0
    1767 E001      LDI	R16,1
    1768 E010      LDI	R17,0
    1769 940E20F3  CALL	lsl16
    176B 0118      MOVW	R2,R16
    176C 9420      COM	R2
    176D 9430      COM	R3
    176E B245      IN	R4,0x15
    176F 2455      CLR	R5
    1770 2042      AND	R4,R2
    1771 2053      AND	R5,R3
    1772 BA45      OUT	0x15,R4
(0090)   		if(temp>temp2)PORTA&=~(1<<(j-1));}while(temp<j*3750);        
    1773 16A6      CP	R10,R22
    1774 06B7      CPC	R11,R23
    1775 F478      BCC	0x1785
    1776 0197      MOVW	R18,R14
    1777 5021      SUBI	R18,1
    1778 4030      SBCI	R19,0
    1779 E001      LDI	R16,1
    177A E010      LDI	R17,0
    177B 940E20F3  CALL	lsl16
    177D 0118      MOVW	R2,R16
    177E 9420      COM	R2
    177F 9430      COM	R3
    1780 B24B      IN	R4,0x1B
    1781 2455      CLR	R5
    1782 2042      AND	R4,R2
    1783 2053      AND	R5,R3
    1784 BA4B      OUT	0x1B,R4
    1785 EA06      LDI	R16,0xA6
    1786 E01E      LDI	R17,0xE
    1787 0197      MOVW	R18,R14
    1788 940E20B9  CALL	empy16s
    178A 1760      CP	R22,R16
    178B 0771      CPC	R23,R17
    178C F290      BCS	0x175F
    178D 01C7      MOVW	R24,R14
    178E 9601      ADIW	R24,1
    178F 017C      MOVW	R14,R24
    1790 01C7      MOVW	R24,R14
    1791 3089      CPI	R24,0x9
    1792 E0E0      LDI	R30,0
    1793 079E      CPC	R25,R30
    1794 F408      BCC	0x1796
    1795 CF57      RJMP	0x16ED
(0091)   	 }
(0092)     TCNT1=0x00;		
    1796 2422      CLR	R2
    1797 2433      CLR	R3
    1798 BC3D      OUT	0x2D,R3
    1799 BC2C      OUT	0x2C,R2
    179A 5041      SUBI	R20,1
    179B 4050      SBCI	R21,0
    179C 3040      CPI	R20,0
    179D 0745      CPC	R20,R21
    179E F009      BEQ	0x17A0
    179F CF45      RJMP	0x16E5
    17A0 01C3      MOVW	R24,R6
    17A1 9601      ADIW	R24,1
    17A2 013C      MOVW	R6,R24
    17A3 90200108  LDS	R2,0x108
    17A5 90300109  LDS	R3,0x109
    17A7 1462      CP	R6,R2
    17A8 0473      CPC	R7,R3
    17A9 F408      BCC	0x17AB
    17AA CF2D      RJMP	0x16D8
(0093)     }
(0094) do{ 
(0095)   for(i=cycle_start1;i<totalstep1;i++)
    17AB 90600108  LDS	R6,0x108
    17AD 90700109  LDS	R7,0x109
    17AF C0CB      RJMP	0x187B
(0096)   for(t=angle1[i][0];t>0;t--)
    17B0 E10A      LDI	R16,0x1A
    17B1 E010      LDI	R17,0
    17B2 0193      MOVW	R18,R6
    17B3 940E20B9  CALL	empy16s
    17B5 01F8      MOVW	R30,R16
    17B6 E88C      LDI	R24,0x8C
    17B7 E090      LDI	R25,0
    17B8 0FE8      ADD	R30,R24
    17B9 1FF9      ADC	R31,R25
    17BA 9145      LPM	R20,Z+
    17BB 9154      LPM	R21,0(Z)
    17BC C0B7      RJMP	0x1874
(0097)  {TCNT1=0x00;	
    17BD 2422      CLR	R2
    17BE 2433      CLR	R3
    17BF BC3D      OUT	0x2D,R3
    17C0 BC2C      OUT	0x2C,R2
(0098)   for(j=1;j<9;j++)	
    17C1 E081      LDI	R24,1
    17C2 E090      LDI	R25,0
    17C3 017C      MOVW	R14,R24
    17C4 C0A3      RJMP	0x1868
(0099)   { if(j<5)
    17C5 01C7      MOVW	R24,R14
    17C6 3085      CPI	R24,5
    17C7 E0E0      LDI	R30,0
    17C8 079E      CPC	R25,R30
    17C9 F008      BCS	0x17CB
    17CA C037      RJMP	0x1802
(0100) 	{PORTA|=(1<<(j-1));	
    17CB 019C      MOVW	R18,R24
    17CC 5021      SUBI	R18,1
    17CD 4030      SBCI	R19,0
    17CE E001      LDI	R16,1
    17CF E010      LDI	R17,0
    17D0 940E20F3  CALL	lsl16
    17D2 B22B      IN	R2,0x1B
    17D3 2433      CLR	R3
    17D4 2A20      OR	R2,R16
    17D5 2A31      OR	R3,R17
    17D6 BA2B      OUT	0x1B,R2
(0101)      temp2=(50*angle1[i][j+8]/3+750)+(j-1)*3750;}
    17D7 E10A      LDI	R16,0x1A
    17D8 E010      LDI	R17,0
    17D9 0193      MOVW	R18,R6
    17DA 940E20B9  CALL	empy16s
    17DC 0118      MOVW	R2,R16
    17DD E88C      LDI	R24,0x8C
    17DE E090      LDI	R25,0
    17DF 0E28      ADD	R2,R24
    17E0 1E39      ADC	R3,R25
    17E1 0197      MOVW	R18,R14
    17E2 5F28      SUBI	R18,0xF8
    17E3 4F3F      SBCI	R19,0xFF
    17E4 E002      LDI	R16,2
    17E5 E010      LDI	R17,0
    17E6 940E20B9  CALL	empy16s
    17E8 01F8      MOVW	R30,R16
    17E9 0DE2      ADD	R30,R2
    17EA 1DF3      ADC	R31,R3
    17EB 9125      LPM	R18,Z+
    17EC 9134      LPM	R19,0(Z)
    17ED E302      LDI	R16,0x32
    17EE E010      LDI	R17,0
    17EF 940E20B9  CALL	empy16s
    17F1 E023      LDI	R18,3
    17F2 E030      LDI	R19,0
    17F3 940E209F  CALL	div16u
    17F5 01C8      MOVW	R24,R16
    17F6 5182      SUBI	R24,0x12
    17F7 4F9D      SBCI	R25,0xFD
    17F8 0197      MOVW	R18,R14
    17F9 5021      SUBI	R18,1
    17FA 4030      SBCI	R19,0
    17FB EA06      LDI	R16,0xA6
    17FC E01E      LDI	R17,0xE
    17FD 940E20B9  CALL	empy16s
    17FF 015C      MOVW	R10,R24
    1800 0EA0      ADD	R10,R16
    1801 1EB1      ADC	R11,R17
(0102)      PORTC|=(1<<(j-1));	
    1802 0197      MOVW	R18,R14
    1803 5021      SUBI	R18,1
    1804 4030      SBCI	R19,0
    1805 E001      LDI	R16,1
    1806 E010      LDI	R17,0
    1807 940E20F3  CALL	lsl16
    1809 B225      IN	R2,0x15
    180A 2433      CLR	R3
    180B 2A20      OR	R2,R16
    180C 2A31      OR	R3,R17
    180D BA25      OUT	0x15,R2
(0103)      temp1=(50*angle1[i][j]/3+750)+(j-1)*3750;	       
    180E E10A      LDI	R16,0x1A
    180F E010      LDI	R17,0
    1810 0193      MOVW	R18,R6
    1811 940E20B9  CALL	empy16s
    1813 0118      MOVW	R2,R16
    1814 E88C      LDI	R24,0x8C
    1815 E090      LDI	R25,0
    1816 0E28      ADD	R2,R24
    1817 1E39      ADC	R3,R25
    1818 E002      LDI	R16,2
    1819 E010      LDI	R17,0
    181A 0197      MOVW	R18,R14
    181B 940E20B9  CALL	empy16s
    181D 01F8      MOVW	R30,R16
    181E 0DE2      ADD	R30,R2
    181F 1DF3      ADC	R31,R3
    1820 9125      LPM	R18,Z+
    1821 9134      LPM	R19,0(Z)
    1822 E302      LDI	R16,0x32
    1823 E010      LDI	R17,0
    1824 940E20B9  CALL	empy16s
    1826 E023      LDI	R18,3
    1827 E030      LDI	R19,0
    1828 940E209F  CALL	div16u
    182A 01C8      MOVW	R24,R16
    182B 5182      SUBI	R24,0x12
    182C 4F9D      SBCI	R25,0xFD
    182D 0197      MOVW	R18,R14
    182E 5021      SUBI	R18,1
    182F 4030      SBCI	R19,0
    1830 EA06      LDI	R16,0xA6
    1831 E01E      LDI	R17,0xE
    1832 940E20B9  CALL	empy16s
    1834 016C      MOVW	R12,R24
    1835 0EC0      ADD	R12,R16
    1836 1ED1      ADC	R13,R17
(0104)  	 do{ temp=TCNT1;	
    1837 B56C      IN	R22,0x2C
    1838 B57D      IN	R23,0x2D
(0105)  	     if(temp>temp1)PORTC&=~(1<<(j-1));	
    1839 16C6      CP	R12,R22
    183A 06D7      CPC	R13,R23
    183B F478      BCC	0x184B
    183C 0197      MOVW	R18,R14
    183D 5021      SUBI	R18,1
    183E 4030      SBCI	R19,0
    183F E001      LDI	R16,1
    1840 E010      LDI	R17,0
    1841 940E20F3  CALL	lsl16
    1843 0118      MOVW	R2,R16
    1844 9420      COM	R2
    1845 9430      COM	R3
    1846 B245      IN	R4,0x15
    1847 2455      CLR	R5
    1848 2042      AND	R4,R2
    1849 2053      AND	R5,R3
    184A BA45      OUT	0x15,R4
(0106)          if(temp>temp2)PORTA&=~(1<<(j-1));
    184B 16A6      CP	R10,R22
    184C 06B7      CPC	R11,R23
    184D F478      BCC	0x185D
    184E 0197      MOVW	R18,R14
    184F 5021      SUBI	R18,1
    1850 4030      SBCI	R19,0
    1851 E001      LDI	R16,1
    1852 E010      LDI	R17,0
    1853 940E20F3  CALL	lsl16
    1855 0118      MOVW	R2,R16
    1856 9420      COM	R2
    1857 9430      COM	R3
    1858 B24B      IN	R4,0x1B
    1859 2455      CLR	R5
    185A 2042      AND	R4,R2
    185B 2053      AND	R5,R3
    185C BA4B      OUT	0x1B,R4
(0107)   	   } while(temp<j*3750);        
    185D EA06      LDI	R16,0xA6
    185E E01E      LDI	R17,0xE
    185F 0197      MOVW	R18,R14
    1860 940E20B9  CALL	empy16s
    1862 1760      CP	R22,R16
    1863 0771      CPC	R23,R17
    1864 F290      BCS	0x1837
    1865 01C7      MOVW	R24,R14
    1866 9601      ADIW	R24,1
    1867 017C      MOVW	R14,R24
    1868 01C7      MOVW	R24,R14
    1869 3089      CPI	R24,0x9
    186A E0E0      LDI	R30,0
    186B 079E      CPC	R25,R30
    186C F408      BCC	0x186E
    186D CF57      RJMP	0x17C5
(0108)   }
(0109)      TCNT1=0x00;		
    186E 2422      CLR	R2
    186F 2433      CLR	R3
    1870 BC3D      OUT	0x2D,R3
    1871 BC2C      OUT	0x2C,R2
    1872 5041      SUBI	R20,1
    1873 4050      SBCI	R21,0
    1874 3040      CPI	R20,0
    1875 0745      CPC	R20,R21
    1876 F009      BEQ	0x1878
    1877 CF45      RJMP	0x17BD
    1878 01C3      MOVW	R24,R6
    1879 9601      ADIW	R24,1
    187A 013C      MOVW	R6,R24
    187B 90200110  LDS	R2,0x110
    187D 90300111  LDS	R3,0x111
    187F 1462      CP	R6,R2
    1880 0473      CPC	R7,R3
    1881 F408      BCC	0x1883
    1882 CF2D      RJMP	0x17B0
(0110)   }	 
(0111) 	 N1--;	 
    1883 91800100  LDS	R24,0x100
    1885 91900101  LDS	R25,0x101
    1887 9701      SBIW	R24,1
    1888 93900101  STS	0x101,R25
    188A 93800100  STS	0x100,R24
(0112)   } while(N1); 
    188C 90200100  LDS	R2,0x100
    188E 90300101  LDS	R3,0x101
    1890 2022      TST	R2
    1891 F009      BEQ	0x1893
    1892 CF18      RJMP	0x17AB
    1893 2033      TST	R3
    1894 F009      BEQ	0x1896
    1895 CF15      RJMP	0x17AB
(0113)   
(0114)   for(i=0;i<4;i++)
    1896 2466      CLR	R6
    1897 2477      CLR	R7
    1898 C0CB      RJMP	0x1964
(0115)   for(t=angle1_2[i][0];t>0;t--)    
    1899 E10A      LDI	R16,0x1A
    189A E010      LDI	R17,0
    189B 0193      MOVW	R18,R6
    189C 940E20B9  CALL	empy16s
    189E 01F8      MOVW	R30,R16
    189F E58C      LDI	R24,0x5C
    18A0 E298      LDI	R25,0x28
    18A1 0FE8      ADD	R30,R24
    18A2 1FF9      ADC	R31,R25
    18A3 9145      LPM	R20,Z+
    18A4 9154      LPM	R21,0(Z)
    18A5 C0B7      RJMP	0x195D
(0116)   { TCNT1=0x00;
    18A6 2422      CLR	R2
    18A7 2433      CLR	R3
    18A8 BC3D      OUT	0x2D,R3
    18A9 BC2C      OUT	0x2C,R2
(0117) 	for(j=1;j<9;j++)	
    18AA E081      LDI	R24,1
    18AB E090      LDI	R25,0
    18AC 017C      MOVW	R14,R24
    18AD C0A3      RJMP	0x1951
(0118)    {if(j<5)
    18AE 01C7      MOVW	R24,R14
    18AF 3085      CPI	R24,5
    18B0 E0E0      LDI	R30,0
    18B1 079E      CPC	R25,R30
    18B2 F008      BCS	0x18B4
    18B3 C037      RJMP	0x18EB
(0119)    {PORTA|=(1<<(j-1));	
    18B4 019C      MOVW	R18,R24
    18B5 5021      SUBI	R18,1
    18B6 4030      SBCI	R19,0
    18B7 E001      LDI	R16,1
    18B8 E010      LDI	R17,0
    18B9 940E20F3  CALL	lsl16
    18BB B22B      IN	R2,0x1B
    18BC 2433      CLR	R3
    18BD 2A20      OR	R2,R16
    18BE 2A31      OR	R3,R17
    18BF BA2B      OUT	0x1B,R2
(0120)     temp2=(50*angle1_2[i][j+8]/3+750)+(j-1)*3750;}
    18C0 E10A      LDI	R16,0x1A
    18C1 E010      LDI	R17,0
    18C2 0193      MOVW	R18,R6
    18C3 940E20B9  CALL	empy16s
    18C5 0118      MOVW	R2,R16
    18C6 E58C      LDI	R24,0x5C
    18C7 E298      LDI	R25,0x28
    18C8 0E28      ADD	R2,R24
    18C9 1E39      ADC	R3,R25
    18CA 0197      MOVW	R18,R14
    18CB 5F28      SUBI	R18,0xF8
    18CC 4F3F      SBCI	R19,0xFF
    18CD E002      LDI	R16,2
    18CE E010      LDI	R17,0
    18CF 940E20B9  CALL	empy16s
    18D1 01F8      MOVW	R30,R16
    18D2 0DE2      ADD	R30,R2
    18D3 1DF3      ADC	R31,R3
    18D4 9125      LPM	R18,Z+
    18D5 9134      LPM	R19,0(Z)
    18D6 E302      LDI	R16,0x32
    18D7 E010      LDI	R17,0
    18D8 940E20B9  CALL	empy16s
    18DA E023      LDI	R18,3
    18DB E030      LDI	R19,0
    18DC 940E209F  CALL	div16u
    18DE 01C8      MOVW	R24,R16
    18DF 5182      SUBI	R24,0x12
    18E0 4F9D      SBCI	R25,0xFD
    18E1 0197      MOVW	R18,R14
    18E2 5021      SUBI	R18,1
    18E3 4030      SBCI	R19,0
    18E4 EA06      LDI	R16,0xA6
    18E5 E01E      LDI	R17,0xE
    18E6 940E20B9  CALL	empy16s
    18E8 015C      MOVW	R10,R24
    18E9 0EA0      ADD	R10,R16
    18EA 1EB1      ADC	R11,R17
(0121) 	PORTC|=(1<<(j-1));	
    18EB 0197      MOVW	R18,R14
    18EC 5021      SUBI	R18,1
    18ED 4030      SBCI	R19,0
    18EE E001      LDI	R16,1
    18EF E010      LDI	R17,0
    18F0 940E20F3  CALL	lsl16
    18F2 B225      IN	R2,0x15
    18F3 2433      CLR	R3
    18F4 2A20      OR	R2,R16
    18F5 2A31      OR	R3,R17
    18F6 BA25      OUT	0x15,R2
(0122)     temp1=(50*angle1_2[i][j]/3+750)+(j-1)*3750;	
    18F7 E10A      LDI	R16,0x1A
    18F8 E010      LDI	R17,0
    18F9 0193      MOVW	R18,R6
    18FA 940E20B9  CALL	empy16s
    18FC 0118      MOVW	R2,R16
    18FD E58C      LDI	R24,0x5C
    18FE E298      LDI	R25,0x28
    18FF 0E28      ADD	R2,R24
    1900 1E39      ADC	R3,R25
    1901 E002      LDI	R16,2
    1902 E010      LDI	R17,0
    1903 0197      MOVW	R18,R14
    1904 940E20B9  CALL	empy16s
    1906 01F8      MOVW	R30,R16

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -