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

📄 jidong.lis

📁 基于m16的寻迹寻光小车程序
💻 LIS
📖 第 1 页 / 共 5 页
字号:
 00B0 8896              adiw R24,40
 00B2 9A93              st -y,R25
 00B4 8A93              st -y,R24
 00B6 0E940000          xcall fpcmp1
 00BA 2CF5              brge L9
 00BC           X1:
 00BC 08A1              ldd R16,y+32
 00BE 19A1              ldd R17,y+33
 00C0 2AA1              ldd R18,y+34
 00C2 3BA1              ldd R19,y+35
 00C4 CE01              movw R24,R28
 00C6 8496              adiw R24,36
 00C8 9A93              st -y,R25
 00CA 8A93              st -y,R24
 00CC 0E940000          xcall fpcmp1
 00D0 4CF4              brge L13
 00D2           X2:
 00D2 28A0              ldd R2,y+32
 00D4 39A0              ldd R3,y+33
 00D6 4AA0              ldd R4,y+34
 00D8 5BA0              ldd R5,y+35
 00DA 288A              std y+16,R2
 00DC 398A              std y+17,R3
 00DE 4A8A              std y+18,R4
 00E0 5B8A              std y+19,R5
 00E2 08C0              xjmp L14
 00E4           L13:
 00E4 2CA0              ldd R2,y+36
 00E6 3DA0              ldd R3,y+37
 00E8 4EA0              ldd R4,y+38
 00EA 5FA0              ldd R5,y+39
 00EC 288A              std y+16,R2
 00EE 398A              std y+17,R3
 00F0 4A8A              std y+18,R4
 00F2 5B8A              std y+19,R5
 00F4           L14:
 00F4 2888              ldd R2,y+16
 00F6 3988              ldd R3,y+17
 00F8 4A88              ldd R4,y+18
 00FA 5B88              ldd R5,y+19
 00FC 2886              std y+8,R2
 00FE 3986              std y+9,R3
 0100 4A86              std y+10,R4
 0102 5B86              std y+11,R5
 0104 08C0              xjmp L10
 0106           L9:
 0106 28A4              ldd R2,y+40
 0108 39A4              ldd R3,y+41
 010A 4AA4              ldd R4,y+42
 010C 5BA4              ldd R5,y+43
 010E 2886              std y+8,R2
 0110 3986              std y+9,R3
 0112 4A86              std y+10,R4
 0114 5B86              std y+11,R5
 0116           L10:
 0116 2884              ldd R2,y+8
 0118 3984              ldd R3,y+9
 011A 4A84              ldd R4,y+10
 011C 5B84              ldd R5,y+11
 011E 2882              std y+0,R2
 0120 3982              std y+1,R3
 0122 4A82              std y+2,R4
 0124 5B82              std y+3,R5
 0126                   .dbline 91
 0126           ;     small_tmp  = ( ( k < d ? k : d ) < e ) ? ( k < d ? k : d ) : e;
 0126 0881              ldd R16,y+0
 0128 1981              ldd R17,y+1
 012A 2A81              ldd R18,y+2
 012C 3B81              ldd R19,y+3
 012E CE01              movw R24,R28
 0130 8C96              adiw R24,44
 0132 9A93              st -y,R25
 0134 8A93              st -y,R24
 0136 0E940000          xcall fpcmp1
 013A 4CF4              brge L17
 013C           X3:
 013C 2880              ldd R2,y+0
 013E 3980              ldd R3,y+1
 0140 4A80              ldd R4,y+2
 0142 5B80              ldd R5,y+3
 0144 288E              std y+24,R2
 0146 398E              std y+25,R3
 0148 4A8E              std y+26,R4
 014A 5B8E              std y+27,R5
 014C 08C0              xjmp L18
 014E           L17:
 014E 2CA4              ldd R2,y+44
 0150 3DA4              ldd R3,y+45
 0152 4EA4              ldd R4,y+46
 0154 5FA4              ldd R5,y+47
 0156 288E              std y+24,R2
 0158 398E              std y+25,R3
 015A 4A8E              std y+26,R4
 015C 5B8E              std y+27,R5
 015E           L18:
 015E 088D              ldd R16,y+24
 0160 198D              ldd R17,y+25
 0162 2A8D              ldd R18,y+26
 0164 3B8D              ldd R19,y+27
 0166 CE01              movw R24,R28
 0168 C096              adiw R24,48
 016A 9A93              st -y,R25
 016C 8A93              st -y,R24
 016E 0E940000          xcall fpcmp1
 0172 2CF5              brge L15
 0174           X4:
 0174 0881              ldd R16,y+0
 0176 1981              ldd R17,y+1
 0178 2A81              ldd R18,y+2
 017A 3B81              ldd R19,y+3
 017C CE01              movw R24,R28
 017E 8C96              adiw R24,44
 0180 9A93              st -y,R25
 0182 8A93              st -y,R24
 0184 0E940000          xcall fpcmp1
 0188 4CF4              brge L19
 018A           X5:
 018A 2880              ldd R2,y+0
 018C 3980              ldd R3,y+1
 018E 4A80              ldd R4,y+2
 0190 5B80              ldd R5,y+3
 0192 2C8E              std y+28,R2
 0194 3D8E              std y+29,R3
 0196 4E8E              std y+30,R4
 0198 5F8E              std y+31,R5
 019A 08C0              xjmp L20
 019C           L19:
 019C 2CA4              ldd R2,y+44
 019E 3DA4              ldd R3,y+45
 01A0 4EA4              ldd R4,y+46
 01A2 5FA4              ldd R5,y+47
 01A4 2C8E              std y+28,R2
 01A6 3D8E              std y+29,R3
 01A8 4E8E              std y+30,R4
 01AA 5F8E              std y+31,R5
 01AC           L20:
 01AC 2C8C              ldd R2,y+28
 01AE 3D8C              ldd R3,y+29
 01B0 4E8C              ldd R4,y+30
 01B2 5F8C              ldd R5,y+31
 01B4 2C8A              std y+20,R2
 01B6 3D8A              std y+21,R3
 01B8 4E8A              std y+22,R4
 01BA 5F8A              std y+23,R5
 01BC 08C0              xjmp L16
 01BE           L15:
 01BE 28A8              ldd R2,y+48
 01C0 39A8              ldd R3,y+49
 01C2 4AA8              ldd R4,y+50
 01C4 5BA8              ldd R5,y+51
 01C6 2C8A              std y+20,R2
 01C8 3D8A              std y+21,R3
 01CA 4E8A              std y+22,R4
 01CC 5F8A              std y+23,R5
 01CE           L16:
 01CE 2C88              ldd R2,y+20
 01D0 3D88              ldd R3,y+21
 01D2 4E88              ldd R4,y+22
 01D4 5F88              ldd R5,y+23
 01D6 2C82              std y+4,R2
 01D8 3D82              std y+5,R3
 01DA 4E82              std y+6,R4
 01DC 5F82              std y+7,R5
 01DE                   .dbline 93
 01DE           ;     
 01DE           ;     if( small_tmp == a ) return 0;
 01DE 0C81              ldd R16,y+4
 01E0 1D81              ldd R17,y+5
 01E2 2E81              ldd R18,y+6
 01E4 3F81              ldd R19,y+7
 01E6 CE01              movw R24,R28
 01E8 8096              adiw R24,32
 01EA 9A93              st -y,R25
 01EC 8A93              st -y,R24
 01EE 0E940000          xcall fpcmp1
 01F2 11F4              brne L21
 01F4           X6:
 01F4                   .dbline 93
 01F4 0027              clr R16
 01F6 35C0              xjmp L7
 01F8           L21:
 01F8                   .dbline 94
 01F8           ;       else if( small_tmp == b ) return 1;
 01F8 0C81              ldd R16,y+4
 01FA 1D81              ldd R17,y+5
 01FC 2E81              ldd R18,y+6
 01FE 3F81              ldd R19,y+7
 0200 CE01              movw R24,R28
 0202 8496              adiw R24,36
 0204 9A93              st -y,R25
 0206 8A93              st -y,R24
 0208 0E940000          xcall fpcmp1
 020C 11F4              brne L23
 020E           X7:
 020E                   .dbline 94
 020E 01E0              ldi R16,1
 0210 28C0              xjmp L7
 0212           L23:
 0212                   .dbline 95
 0212           ;       else if( small_tmp == c ) return 2;
 0212 0C81              ldd R16,y+4
 0214 1D81              ldd R17,y+5
 0216 2E81              ldd R18,y+6
 0218 3F81              ldd R19,y+7
 021A CE01              movw R24,R28
 021C 8896              adiw R24,40
 021E 9A93              st -y,R25
 0220 8A93              st -y,R24
 0222 0E940000          xcall fpcmp1
 0226 11F4              brne L25
 0228           X8:
 0228                   .dbline 95
 0228 02E0              ldi R16,2
 022A 1BC0              xjmp L7
 022C           L25:
 022C                   .dbline 96
 022C           ;       else if( small_tmp == d ) return 3;
 022C 0C81              ldd R16,y+4
 022E 1D81              ldd R17,y+5
 0230 2E81              ldd R18,y+6
 0232 3F81              ldd R19,y+7
 0234 CE01              movw R24,R28
 0236 8C96              adiw R24,44
 0238 9A93              st -y,R25
 023A 8A93              st -y,R24
 023C 0E940000          xcall fpcmp1
 0240 11F4              brne L27
 0242           X9:
 0242                   .dbline 96
 0242 03E0              ldi R16,3
 0244 0EC0              xjmp L7
 0246           L27:
 0246                   .dbline 97
 0246           ;       else if( small_tmp == e ) return 4;
 0246 0C81              ldd R16,y+4
 0248 1D81              ldd R17,y+5
 024A 2E81              ldd R18,y+6
 024C 3F81              ldd R19,y+7
 024E CE01              movw R24,R28
 0250 C096              adiw R24,48
 0252 9A93              st -y,R25
 0254 8A93              st -y,R24
 0256 0E940000          xcall fpcmp1
 025A 11F4              brne L29
 025C           X10:
 025C                   .dbline 97
 025C 04E0              ldi R16,4
 025E 01C0              xjmp L7
 0260           L29:
 0260                   .dbline 98
 0260           ;       else return 1;
 0260 01E0              ldi R16,1
 0262                   .dbline -2
 0262           L7:
 0262                   .dbline 0 ; func end
 0262 A496              adiw R28,36
 0264 0895              ret
 0266                   .dbsym l small_tmp 4 D
 0266                   .dbsym l k 0 D
 0266                   .dbsym l e 48 D
 0266                   .dbsym l d 44 D
 0266                   .dbsym l c 40 D
 0266                   .dbsym l b 36 D
 0266                   .dbsym l a 32 D
 0266                   .dbend
 0266                   .dbfunc e car_xunguang _car_xunguang fV
 0266           ;         s_flag -> R10
                        .even
 0266           _car_xunguang::
 0266 0E940000          xcall push_xgset300C
 026A A02E              mov R10,R16
 026C                   .dbline -1
 026C                   .dbline 103
 026C           ; }
 026C           ; 
 026C           ; //完成相应动作
 026C           ; void car_xunguang( uchar s_flag )
 026C           ; {
 026C                   .dbline 104
 026C           ;        switch( s_flag )
 026C 4A2D              mov R20,R10
 026E 5527              clr R21
 0270 4030              cpi R20,0
 0272 4507              cpc R20,R21
 0274 89F0              breq L35
 0276           X11:
 0276 4130              cpi R20,1
 0278 E0E0              ldi R30,0
 027A 5E07              cpc R21,R30
 027C 79F0              breq L36
 027E           X12:
 027E 4230              cpi R20,2
 0280 E0E0              ldi R30,0
 0282 5E07              cpc R21,R30
 0284 69F0              breq L37
 0286           X13:
 0286 4330              cpi R20,3
 0288 E0E0              ldi R30,0
 028A 5E07              cpc R21,R30
 028C 59F0              breq L38
 028E           X14:
 028E 4430              cpi R20,4
 0290 E0E0              ldi R30,0
 0292 5E07              cpc R21,R30
 0294 49F0              breq L39
 0296           X15:
 0296 09C0              xjmp L32
 0298           L35:
 0298                   .dbline 106
 0298           ;        {
 0298           ;        case 0: turn_l();   break;
 0298 C5DE              xcall _turn_l
 029A                   .dbline 106
 029A 07C0              xjmp L33
 029C           L36:
 029C                   .dbline 107
 029C           ;        case 1: go_ahead(); break;
 029C B5DE              xcall _go_ahead
 029E                   .dbline 107
 029E 05C0              xjmp L33
 02A0           L37:
 02A0                   .dbline 108
 02A0           ;        case 2: turn_r();   break;
 02A0 C8DE              xcall _turn_r
 02A2                   .dbline 108
 02A2 03C0              xjmp L33
 02A4           L38:
 02A4                   .dbline 109
 02A4           ;        case 3: turn_l();   break;
 02A4 BFDE              xcall _turn_l
 02A6                   .dbline 109
 02A6 01C0              xjmp L33
 02A8           L39:

⌨️ 快捷键说明

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