📄 xunxiandongzuo8.lis
字号:
0746 .dbline 96
0746 .dbline 96
0746 F0C0 rjmp L54
0748 L61:
0748 .dbline 98
0748 .dbline 99
0748 02E6 ldi R16,98
074A 10E0 ldi R17,0
074C F1D0 rcall _risemotor
074E .dbline 100
074E 00EB ldi R16,1200
0750 14E0 ldi R17,4
0752 7BD1 rcall _delay_ms
0754 .dbline 101
0754 03E7 ldi R16,115
0756 10E0 ldi R17,0
0758 EBD0 rcall _risemotor
075A .dbline 103
075A .dbline 103
075A E6C0 rjmp L54
075C L62:
075C .dbline 105
075C .dbline 106
075C 07E6 ldi R16,103
075E 10E0 ldi R17,0
0760 07D1 rcall _pushmotor2
0762 .dbline 107
0762 00ED ldi R16,2000
0764 17E0 ldi R17,7
0766 71D1 rcall _delay_ms
0768 .dbline 108
0768 03E7 ldi R16,115
076A 10E0 ldi R17,0
076C 01D1 rcall _pushmotor2
076E .dbline 109
076E .dbline 109
076E DCC0 rjmp L54
0770 L63:
0770 .dbline 111
0770 .dbline 112
0770 02E6 ldi R16,98
0772 10E0 ldi R17,0
0774 FDD0 rcall _pushmotor2
0776 .dbline 113
0776 00ED ldi R16,2000
0778 17E0 ldi R17,7
077A 67D1 rcall _delay_ms
077C .dbline 114
077C 03E7 ldi R16,115
077E 10E0 ldi R17,0
0780 F7D0 rcall _pushmotor2
0782 .dbline 115
0782 .dbline 115
0782 D2C0 rjmp L54
0784 L64:
0784 .dbline 117
0784 .dbline 118
0784 07E6 ldi R16,103
0786 10E0 ldi R17,0
0788 13D1 rcall _pushmotor1
078A .dbline 119
078A 0CED ldi R16,1500
078C 15E0 ldi R17,5
078E 5DD1 rcall _delay_ms
0790 .dbline 120
0790 03E7 ldi R16,115
0792 10E0 ldi R17,0
0794 0DD1 rcall _pushmotor1
0796 .dbline 122
0796 .dbline 122
0796 C8C0 rjmp L54
0798 L65:
0798 .dbline 126
0798 .dbline 127
0798 33DC rcall _L_PIDInit
079A .dbline 128
079A 2224 clr R2
079C 22BE out 0x32,R2
079E .dbline 129
079E .dbline 130
079E 20920000 sts _num_H,R2
07A2 3324 clr R3
07A4 30920200 sts _Num_Speed+1,R3
07A8 20920100 sts _Num_Speed,R2
07AC .dbline 132
07AC .dbline 132
07AC BDC0 rjmp L54
07AE L66:
07AE .dbline 134
07AE .dbline 135
07AE 2224 clr R2
07B0 25BC out 0x25,R2
07B2 .dbline 136
07B2 .dbline 138
07B2 8FEF ldi R24,255
07B4 80930300 sts _PID_choice,R24
07B8 C0D2 rcall _free_stop
07BA .dbline 139
07BA .dbline 139
07BA B6C0 rjmp L54
07BC L67:
07BC .dbline 141
07BC .dbline 142
07BC .dbline 143
07BC .dbline 144
07BC .dbline 145
07BC .dbline 147
07BC .dbline 148
07BC A0900800 lds R10,_rev_buf+1
07C0 BB24 clr R11
07C2 BA2C mov R11,R10
07C4 AA24 clr R10
07C6 20900900 lds R2,_rev_buf+2
07CA 3324 clr R3
07CC A20C add R10,R2
07CE B31C adc R11,R3
07D0 B0920100 sts _L_sPID+1,R11
07D4 A0920000 sts _L_sPID,R10
07D8 80E8 ldi R24,128
07DA 80930300 sts _PID_choice,R24
07DE 87E0 ldi R24,7
07E0 85BD out 0x25,R24
07E2 .dbline 149
07E2 .dbline 149
07E2 A2C0 rjmp L54
07E4 L70:
07E4 .dbline 151
07E4 .dbline 152
07E4 .dbline 153
07E4 .dbline 155
07E4 .dbline 156
07E4 .dbline 158
07E4 .dbline 159
07E4 .dbline 161
07E4 .dbline 163
07E4 20900800 lds R2,_rev_buf+1
07E8 3324 clr R3
07EA 4424 clr R4
07EC 5524 clr R5
07EE FE01 movw R30,R28
07F0 2082 std z+0,R2
07F2 3182 std z+1,R3
07F4 4282 std z+2,R4
07F6 5382 std z+3,R5
07F8 88E0 ldi R24,8
07FA 90E0 ldi R25,0
07FC FE01 movw R30,R28
07FE 2080 ldd R2,z+0
0800 3180 ldd R3,z+1
0802 4280 ldd R4,z+2
0804 5380 ldd R5,z+3
0806 8A93 st -y,R24
0808 8101 movw R16,R2
080A 9201 movw R18,R4
080C 00D0 rcall lsl32
080E FE01 movw R30,R28
0810 0083 std z+0,R16
0812 1183 std z+1,R17
0814 2283 std z+2,R18
0816 3383 std z+3,R19
0818 20900900 lds R2,_rev_buf+2
081C 3324 clr R3
081E 4424 clr R4
0820 5524 clr R5
0822 FE01 movw R30,R28
0824 6080 ldd R6,z+0
0826 7180 ldd R7,z+1
0828 8280 ldd R8,z+2
082A 9380 ldd R9,z+3
082C 620C add R6,R2
082E 731C adc R7,R3
0830 841C adc R8,R4
0832 951C adc R9,R5
0834 FE01 movw R30,R28
0836 6082 std z+0,R6
0838 7182 std z+1,R7
083A 8282 std z+2,R8
083C 9382 std z+3,R9
083E 88E0 ldi R24,8
0840 90E0 ldi R25,0
0842 FE01 movw R30,R28
0844 2080 ldd R2,z+0
0846 3180 ldd R3,z+1
0848 4280 ldd R4,z+2
084A 5380 ldd R5,z+3
084C 8A93 st -y,R24
084E 8101 movw R16,R2
0850 9201 movw R18,R4
0852 00D0 rcall lsl32
0854 FE01 movw R30,R28
0856 0083 std z+0,R16
0858 1183 std z+1,R17
085A 2283 std z+2,R18
085C 3383 std z+3,R19
085E 20900A00 lds R2,_rev_buf+3
0862 3324 clr R3
0864 4424 clr R4
0866 5524 clr R5
0868 FE01 movw R30,R28
086A 6080 ldd R6,z+0
086C 7180 ldd R7,z+1
086E 8280 ldd R8,z+2
0870 9380 ldd R9,z+3
0872 620C add R6,R2
0874 731C adc R7,R3
0876 841C adc R8,R4
0878 951C adc R9,R5
087A FE01 movw R30,R28
087C 6082 std z+0,R6
087E 7182 std z+1,R7
0880 8282 std z+2,R8
0882 9382 std z+3,R9
0884 88E0 ldi R24,8
0886 90E0 ldi R25,0
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 8A93 st -y,R24
0894 8101 movw R16,R2
0896 9201 movw R18,R4
0898 00D0 rcall lsl32
089A FE01 movw R30,R28
089C 0083 std z+0,R16
089E 1183 std z+1,R17
08A0 2283 std z+2,R18
08A2 3383 std z+3,R19
08A4 20900B00 lds R2,_rev_buf+4
08A8 3324 clr R3
08AA 4424 clr R4
08AC 5524 clr R5
08AE FE01 movw R30,R28
08B0 6080 ldd R6,z+0
08B2 7180 ldd R7,z+1
08B4 8280 ldd R8,z+2
08B6 9380 ldd R9,z+3
08B8 620C add R6,R2
08BA 731C adc R7,R3
08BC 841C adc R8,R4
08BE 951C adc R9,R5
08C0 FE01 movw R30,R28
08C2 6082 std z+0,R6
08C4 7182 std z+1,R7
08C6 8282 std z+2,R8
08C8 9382 std z+3,R9
08CA FE01 movw R30,R28
08CC 2080 ldd R2,z+0
08CE 3180 ldd R3,z+1
08D0 4280 ldd R4,z+2
08D2 5380 ldd R5,z+3
08D4 30920500 sts _L_sPID+4+1,R3
08D8 20920400 sts _L_sPID+4,R2
08DC 50920700 sts _L_sPID+4+2+1,R5
08E0 40920600 sts _L_sPID+4+2,R4
08E4 .dbline 169
08E4 ; switch( PID_choice )
08E4 ; {
08E4 ; case SPEED_SET :
08E4 ; {
08E4 ; temp_sint = v_PIDCalc ( &L_sPID);
08E4 .dbline 171
08E4 ; break;
08E4 ; }
08E4 80E9 ldi R24,144
08E6 80930300 sts _PID_choice,R24
08EA 87E0 ldi R24,7
08EC 85BD out 0x25,R24
08EE .dbline 172
08EE ; case DISTANCE_SET :
08EE .dbline 172
08EE .dbline 173
08EE ; {
08EE .dbline 177
08EE ; temp_sint = s_PIDCalc( &L_sPID );
08EE ; break;
08EE ; }
08EE ; }
08EE .dbline 178
08EE ; //temp_sint = v_PIDCalc ( &L_sPID);
08EE 1CC0 rjmp L54
08F0 L53:
08F0 .dbline 180
08F0 ; Num_Speed = 0;
08F0 ;
08F0 .dbline 181
08F0 ; send_PWM( temp_sint ); //调节PWM的占空比
08F0 20901E00 lds R2,L46
08F4 30901B00 lds R3,L43
08F8 3214 cp R3,R2
08FA 68F4 brsh L78
08FC .dbline 182
08FC ;
08FC .dbline 183
08FC ; }
08FC 80E0 ldi R24,<_send_buf
08FE 90E0 ldi R25,>_send_buf
0900 E32D mov R30,R3
0902 FF27 clr R31
0904 E80F add R30,R24
0906 F91F adc R31,R25
0908 2080 ldd R2,z+0
090A 2FB8 out 0xf,R2
090C .dbline 184
090C ;
090C 832D mov R24,R3
090E 8F5F subi R24,255 ; addi 1
0910 80931B00 sts L43,R24
0914 .dbline 185
0914 ; /*pwm脉宽调节*/
0914 09C0 rjmp L79
0916 L78:
0916 .dbline 187
0916 ; void send_PWM(signed int num_pwm)
0916 ; {
0916 .dbline 188
0916 ; if( num_pwm >= 0 )
0916 .dbline 189
0916 ; now_dir = GO_AHEAD;
0916 .dbline 190
0916 ; else
0916 .dbline 191
0916 ; now_dir = GO_BACK;
0916 2224 clr R2
0918 20921B00 sts L43,R2
091C 20921C00 sts L44,R2
0920 20921E00 sts L46,R2
0924 20921D00 sts L45,R2
0928 .dbline 201
0928 ;
0928 ; if( now_dir == GO_AHEAD ) //判断正反转
0928 ; {
0928 ; //now_dir=GO_AHEAD,正向,
0928 ; if(pre_dir != now_dir) //pre_dir!=now_dir,换成正向,
0928 ; {
0928 ; PORTC |= 0x08; //PC3->1,转向变为正
0928 ; pre_dir = now_dir; //重载pre_dir
0928 ; }
0928 ;
0928 L79:
0928
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -