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

📄 接受.lis

📁 利用MEGA8控制RF02无线芯片接收RF01发送的四路数据
💻 LIS
📖 第 1 页 / 共 3 页
字号:
 0190 5527              clr R21
 0192                   .dbline 197
 0192           ;         RFXX_WRT_CMD(0xCE88);//reset FIFO for next frame recognition
 0192 08E8              ldi R16,52872
 0194 1EEC              ldi R17,206
 0196 3CDF              rcall _RFXX_WRT_CMD
 0198                   .dbline 198
 0198           ;         RFXX_WRT_CMD(0xCE8B);
 0198 0BE8              ldi R16,52875
 019A 1EEC              ldi R17,206
 019C 39DF              rcall _RFXX_WRT_CMD
 019E                   .dbline 200
 019E           ; 
 019E           ;         ch0=RF_RXBUF[0];
 019E 20900400          lds R2,_RF_RXBUF
 01A2 20920300          sts _ch0,R2
 01A6                   .dbline 201
 01A6           ;         ch1=RF_RXBUF[1];
 01A6 20900500          lds R2,_RF_RXBUF+1
 01AA 20920200          sts _ch1,R2
 01AE                   .dbline 202
 01AE           ;         ch2=RF_RXBUF[2];
 01AE 20900600          lds R2,_RF_RXBUF+2
 01B2 20920100          sts _ch2,R2
 01B6                   .dbline 203
 01B6           ;         ch3=RF_RXBUF[3];
 01B6 20900700          lds R2,_RF_RXBUF+3
 01BA 20920000          sts _ch3,R2
 01BE                   .dbline 205
 01BE           ;               
 01BE           ;         Transmit(ch0);
 01BE 00910300          lds R16,_ch0
 01C2 61DF              rcall _Transmit
 01C4                   .dbline 206
 01C4           ;         Transmit(ch1);
 01C4 00910200          lds R16,_ch1
 01C8 5EDF              rcall _Transmit
 01CA                   .dbline 207
 01CA           ;         Transmit(ch2);
 01CA 00910100          lds R16,_ch2
 01CE 5BDF              rcall _Transmit
 01D0                   .dbline 208
 01D0           ;         Transmit(ch3);
 01D0 00910000          lds R16,_ch3
 01D4 58DF              rcall _Transmit
 01D6                   .dbline 210
 01D6           ;               
 01D6           ;               for(p=0;p<55;p++)
 01D6 6627              clr R22
 01D8 7727              clr R23
 01DA 0DC0              rjmp L60
 01DC           L57:
 01DC                   .dbline 211
 01DC           ;                 for(q=0;q<123;q++)
 01DC AA24              clr R10
 01DE BB24              clr R11
 01E0 03C0              rjmp L64
 01E2           L61:
 01E2                   .dbline 212
 01E2           ;                   ;
 01E2           L62:
 01E2                   .dbline 211
 01E2 C501              movw R24,R10
 01E4 0196              adiw R24,1
 01E6 5C01              movw R10,R24
 01E8           L64:
 01E8                   .dbline 211
 01E8 C501              movw R24,R10
 01EA 8B37              cpi R24,123
 01EC E0E0              ldi R30,0
 01EE 9E07              cpc R25,R30
 01F0 C0F3              brlo L61
 01F2           X13:
 01F2           L58:
 01F2                   .dbline 210
 01F2 6F5F              subi R22,255  ; offset = 1
 01F4 7F4F              sbci R23,255
 01F6           L60:
 01F6                   .dbline 210
 01F6 6733              cpi R22,55
 01F8 E0E0              ldi R30,0
 01FA 7E07              cpc R23,R30
 01FC 78F3              brlo L57
 01FE           X14:
 01FE                   .dbline 213
 01FE           ;       } 
 01FE           L52:
 01FE                   .dbline 214
 01FE           ;        count1++;
 01FE 80910000          lds R24,_count1
 0202 90910100          lds R25,_count1+1
 0206 0196              adiw R24,1
 0208 90930100          sts _count1+1,R25
 020C 80930000          sts _count1,R24
 0210                   .dbline 215
 0210           ;        if(count1==6)
 0210 8630              cpi R24,6
 0212 E0E0              ldi R30,0
 0214 9E07              cpc R25,R30
 0216 09F0              breq X25
 0218 76C0              rjmp L65
 021A           X25:
 021A           X15:
 021A                   .dbline 216
 021A           ;        {
 021A                   .dbline 217
 021A           ;          PORTB^=0x01;
 021A 81E0              ldi R24,1
 021C 28B2              in R2,0x18
 021E 2826              eor R2,R24
 0220 28BA              out 0x18,R2
 0222                   .dbline 218
 0222           ;          count1=0;
 0222 2224              clr R2
 0224 3324              clr R3
 0226 30920100          sts _count1+1,R3
 022A 20920000          sts _count1,R2
 022E                   .dbline 219
 022E           ;          count2++;
 022E 80910200          lds R24,_count2
 0232 90910300          lds R25,_count2+1
 0236 0196              adiw R24,1
 0238 90930300          sts _count2+1,R25
 023C 80930200          sts _count2,R24
 0240                   .dbline 220
 0240           ;          if(count2==760)  //20ms
 0240 883F              cpi R24,248
 0242 E2E0              ldi R30,2
 0244 9E07              cpc R25,R30
 0246 49F4              brne L67
 0248           X16:
 0248                   .dbline 221
 0248           ;          {
 0248                   .dbline 222
 0248           ;           PORTB^=0x02;
 0248 82E0              ldi R24,2
 024A 28B2              in R2,0x18
 024C 2826              eor R2,R24
 024E 28BA              out 0x18,R2
 0250                   .dbline 223
 0250           ;           count2=0;
 0250 2224              clr R2
 0252 30920300          sts _count2+1,R3
 0256 20920200          sts _count2,R2
 025A                   .dbline 224
 025A           ;          }
 025A           L67:
 025A                   .dbline 225
 025A           ;          if(count2<38)  //1ms
 025A 80910200          lds R24,_count2
 025E 90910300          lds R25,_count2+1
 0262 8632              cpi R24,38
 0264 E0E0              ldi R30,0
 0266 9E07              cpc R25,R30
 0268 20F4              brsh L69
 026A           X17:
 026A                   .dbline 226
 026A           ;           { 
 026A                   .dbline 227
 026A           ;                 PORTD|=0xE0;
 026A 82B3              in R24,0x12
 026C 806E              ori R24,224
 026E 82BB              out 0x12,R24
 0270                   .dbline 228
 0270           ;           }
 0270 23C0              rjmp L70
 0272           L69:
 0272                   .dbline 230
 0272           ;          else
 0272           ;           { 
 0272                   .dbline 231
 0272           ;                temp=count2/3;
 0272 23E0              ldi R18,3
 0274 30E0              ldi R19,0
 0276 00910200          lds R16,_count2
 027A 10910300          lds R17,_count2+1
 027E 00D0              rcall div16u
 0280 5801              movw R10,R16
 0282                   .dbline 232
 0282           ;                if(temp<ch0)  PORTD|=0x20;
 0282 20900300          lds R2,_ch0
 0286 3324              clr R3
 0288 0215              cp R16,R2
 028A 1305              cpc R17,R3
 028C 10F4              brsh L71
 028E           X18:
 028E                   .dbline 232
 028E 959A              sbi 0x12,5
 0290 01C0              rjmp L72
 0292           L71:
 0292                   .dbline 233
 0292           ;                else              PORTD&=~0x20;
 0292 9598              cbi 0x12,5
 0294           L72:
 0294                   .dbline 235
 0294           ;                 
 0294           ;                if(temp<ch1)  PORTD|=0x40;
 0294 20900200          lds R2,_ch1
 0298 3324              clr R3
 029A A214              cp R10,R2
 029C B304              cpc R11,R3
 029E 10F4              brsh L73
 02A0           X19:
 02A0                   .dbline 235
 02A0 969A              sbi 0x12,6
 02A2 01C0              rjmp L74
 02A4           L73:
 02A4                   .dbline 236
 02A4           ;                else              PORTD&=~0x40;
 02A4 9698              cbi 0x12,6
 02A6           L74:
 02A6                   .dbline 238
 02A6           ;                 
 02A6           ;                if(temp<ch3)  PORTD|=0x80;
 02A6 20900000          lds R2,_ch3
 02AA 3324              clr R3
 02AC A214              cp R10,R2
 02AE B304              cpc R11,R3
 02B0 10F4              brsh L75
 02B2           X20:
 02B2                   .dbline 238
 02B2 979A              sbi 0x12,7
 02B4 01C0              rjmp L76
 02B6           L75:
 02B6                   .dbline 239
 02B6           ;                else              PORTD&=~0x80;
 02B6 9798              cbi 0x12,7
 02B8           L76:
 02B8                   .dbline 240
 02B8           ;               }
 02B8           L70:
 02B8                   .dbline 241
 02B8           ;          speed++;
 02B8 80910400          lds R24,_speed
 02BC 90910500          lds R25,_speed+1
 02C0 0196              adiw R24,1
 02C2 90930500          sts _speed+1,R25
 02C6 80930400          sts _speed,R24
 02CA                   .dbline 242
 02CA           ;          if(speed>255)
 02CA 8FEF              ldi R24,255
 02CC 90E0              ldi R25,0
 02CE 20900400          lds R2,_speed
 02D2 30900500          lds R3,_speed+1
 02D6 8215              cp R24,R2
 02D8 9305              cpc R25,R3
 02DA 40F4              brsh L77
 02DC           X21:
 02DC                   .dbline 243
 02DC           ;          {
 02DC                   .dbline 244
 02DC           ;           speed=0;
 02DC 2224              clr R2
 02DE 3324              clr R3
 02E0 30920500          sts _speed+1,R3
 02E4 20920400          sts _speed,R2
 02E8                   .dbline 245
 02E8           ;               PORTC&=~0x10;
 02E8 AC98              cbi 0x15,4
 02EA                   .dbline 246
 02EA           ;          }
 02EA 0DC0              rjmp L78
 02EC           L77:
 02EC                   .dbline 247
 02EC           ;          else if(speed<ch2) 
 02EC 20900100          lds R2,_ch2
 02F0 3324              clr R3
 02F2 40900400          lds R4,_speed
 02F6 50900500          lds R5,_speed+1
 02FA 4214              cp R4,R2
 02FC 5304              cpc R5,R3
 02FE 10F4              brsh L79
 0300           X22:
 0300                   .dbline 248
 0300           ;           { PORTC|=0x10;}
 0300                   .dbline 248
 0300 AC9A              sbi 0x15,4
 0302                   .dbline 248
 0302 01C0              rjmp L80
 0304           L79:
 0304                   .dbline 250
 0304           ;          else
 0304           ;          {   PORTC&=~0x10; }
 0304                   .dbline 250
 0304 AC98              cbi 0x15,4
 0306                   .dbline 250
 0306           L80:
 0306           L78:
 0306                   .dbline 251
 0306           ;        }
 0306           L65:
 0306                   .dbline 253
 0306           ;        
 0306           ;    }//while1
 0306           L47:
 0306                   .dbline 190
 0306 3CCF              rjmp L50
 0308           X23:
 0308                   .dbline -2
 0308           L37:
 0308                   .dbline 0 ; func end
 0308 0895              ret
 030A                   .dbsym r counter 10 i
 030A                   .dbsym r temp 10 i
 030A                   .dbsym r i 20 i
 030A                   .dbsym r p 22 i
 030A                   .dbsym r q 10 i
 030A                   .dbend
                        .area bss(ram, con, rel)
 0000                   .dbfile F:\915M\接受\接受.c
 0000           _ch3::
 0000                   .blkb 1
 0001                   .dbsym e ch3 _ch3 c
 0001           _ch2::
 0001                   .blkb 1
 0002                   .dbsym e ch2 _ch2 c
 0002           _ch1::
 0002                   .blkb 1
 0003                   .dbsym e ch1 _ch1 c
 0003           _ch0::
 0003                   .blkb 1
 0004                   .dbsym e ch0 _ch0 c
 0004           _RF_RXBUF::
 0004                   .blkb 4
 0008                   .dbsym e RF_RXBUF _RF_RXBUF A[4:4]c
 0008           ;   }//main
 0008           ;     
 0008           ;     
 0008           ;     
 0008           ;     

⌨️ 快捷键说明

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