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

📄 main.lst

📁 2051控制无线收发器,通过串口无线收发数据.
💻 LST
📖 第 1 页 / 共 2 页
字号:
 190          
 191          
 192          
 193          
 194          //----------------------MAIN---------------------------
 195          void Main(void)
 196          {
 197   1      
 198   1      
 199   1      uchar j;
 200   1      
 201   1      uchar voltage;
 202   1      
 203   1      
 204   1         init_timer0();               //初始化定时器0
 205   1         init_serialcomm();           //初始化串口
 206   1         EA=1;
 207   1      
 208   1         P1=0xFF;
 209   1         C_POWER = 0;
 210   1      
 211   1         power_time=0;
 212   1      
 213   1         P_TXD=0;
 214   1      
 215   1         while(1)
 216   1         {
 217   2              if(f_40ms==1)
 218   2      
 219   2              {   f_40ms=0;
 220   3                  i++;
 221   3                      if((SW_TEMP==1)&&(key_count>0))
 222   3                              f_new_key=1;
 223   3      
 224   3      
 225   3                      if((SW_TEMP==0)&&(key_count<250))
 226   3                      {       key_count++;
 227   4                              P1=0xFF;
 228   4                      }
 229   3                      
 230   3                      TEST_PIN =!TEST_PIN;
 231   3      
 232   3                      power_time++;   
 233   3              }
 234   2      
 235   2              if(f_new_key==1)
 236   2              {       f_new_key=0;
 237   3      
 238   3                      power_time=0;
 239   3              
 240   3                      if(key_count<=2)
 241   3                              key_count=0;
C51 COMPILER V7.20   MAIN                                                                  10/15/2007 16:02:27 PAGE 5   

 242   3                      
 243   3                      if((key_count>2)&&(key_count<20))                  //           if((key_count>2)&&(key_count<25))
 244   3                      {       key_count=0;
 245   4                              cmd_index = 1;
 246   4                      }
 247   3                      
 248   3                      if((key_count>=38)&&(key_count<75))                                     //              if((key_count>=50)&&(key_count<100))
 249   3                      {       key_count=0;
 250   4                              cmd_index = 2;          
 251   4                      }
 252   3                      
 253   3                      if(key_count>=75)                                                                       //              if(key_count>=125)
 254   3                      {       key_count=0;
 255   4                              cmd_index = 3;
 256   4                      }
 257   3                      
 258   3              }
 259   2      
 260   2              if(cmd_index)
 261   2              {       switch(cmd_index)
 262   3                      {
 263   4                              case 1:   send_string_com(cmd_vshot_key, 7);
 264   4                                                P1=0xFF;
 265   4                                                break;
 266   4                              case 2:   send_string_com(cmd_shot_key, 7);
 267   4                                                P1=0xFF;
 268   4                                                break;
 269   4                              case 3:   send_string_com(cmd_long_key, 7);
 270   4                                                P1=0xFF;
 271   4                                                break;
 272   4                              default:  break;
 273   4                      }
 274   3                      cmd_index=0;
 275   3              }
 276   2      
 277   2      
 278   2              if(f_new_receive==1)
 279   2              {       f_new_receive=0;
 280   3      
 281   3                      f_new_data = 1;
 282   3      
 283   3      //              if(rcv_data[(rcv_data[1]+2)]!=0x03)
 284   3      //              {       f_new_data = 0;
 285   3      //              }
 286   3      
 287   3      //              if(rcv_data[(rcv_data[1]+2)]!=Get_CheckSum(rcv_data))
 288   3      //              {       f_newc_data = 0;
 289   3      //              }
 290   3      //              if((rcv_data[2]!=eq_sn[0])||(rcv_data[3]!=eq_sn[1])||(rcv_data[4]!=eq_sn[2])||(rcv_data[5]!=eq_sn[3]))
 291   3                      if((rcv_data[1]!=ID_H)||(rcv_data[2]!=ID_L))                             //???????????
 292   3                      {       f_new_data = 0;
 293   4                      }
 294   3              }
 295   2      
 296   2      
 297   2      
 298   2              if(f_new_data==1)
 299   2              {       f_new_data=0;
 300   3                      chr=(rcv_data[3]>>4)-0x02;
 301   3                      if(chr==0x00)
 302   3                      {//     P1=0xE0;
 303   4                              power_time=0;
C51 COMPILER V7.20   MAIN                                                                  10/15/2007 16:02:27 PAGE 6   

 304   4                              if((rcv_data[3]&0x0F)<0x0A)
 305   4                              {       dis_vol=rcv_data[3]&0x0F;
 306   5                                      P1=output_D[dis_vol];
 307   5                                      dis_work_mode=0xE0;
 308   5                                      f_dis_work_mode=1;
 309   5                              }
 310   4                              else
 311   4                                      P1=0xE0;        
 312   4      
 313   4                      }
 314   3                      
 315   3                      if(chr==0x01)
 316   3                      {//     P1=0xD0;
 317   4                              power_time=0;
 318   4                              if((rcv_data[3]&0x0F)<0x0A)                     
 319   4                              {       dis_vol=rcv_data[3]&0x0F;
 320   5                                      P1=output_D[dis_vol];
 321   5                                      dis_work_mode=0xD0;                     
 322   5                                      f_dis_work_mode=1;                                      
 323   5                              }
 324   4                              else
 325   4                                      P1=0xD0;                        
 326   4                      
 327   4                      }
 328   3                      if(chr==0x02)
 329   3                      {//     P1=0xBC;
 330   4                              power_time=0;
 331   4                              if((rcv_data[3]&0x0F)<0x0A)                             
 332   4                              {       dis_vol=rcv_data[3]&0x0F;
 333   5                                      P1=output_D[dis_vol];
 334   5                                      dis_work_mode=0xBC;                     
 335   5                                      f_dis_work_mode=1;                              
 336   5                              }
 337   4                              else
 338   4                                      P1=0xBC;                        
 339   4                              
 340   4                      }
 341   3                      if((rcv_data[3]&0xF0)==0x80)
 342   3                      {       //P1=0x26;
 343   4                              power_time=490;
 344   4                      }
 345   3                      
 346   3                      if((rcv_data[3]&0xF0)==0x90)
 347   3                      {       P1=0x30;
 348   4                              power_time=0;
 349   4                      }       
 350   3                              
 351   3              }
 352   2      
 353   2              if(power_time>500)
 354   2                      C_POWER=1;
 355   2              
 356   2              if(receive_time==0)
 357   2                      {       u_count=0;
 358   3                              f_0x10=0;
 359   3                              f_receiving_0=0;
 360   3                      }       
 361   2                                                
 362   2              if((power_time>100)&&(f_dis_work_mode==1))
 363   2                      {       f_dis_work_mode=0;
 364   3                              P1=dis_work_mode;
 365   3                      }
C51 COMPILER V7.20   MAIN                                                                  10/15/2007 16:02:27 PAGE 7   

 366   2                      
 367   2      
 368   2         }
 369   1      
 370   1      }
*** WARNING C280 IN LINE 199 OF MAIN.C: 'j': unreferenced local variable
*** WARNING C280 IN LINE 201 OF MAIN.C: 'voltage': unreferenced local variable


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    849    ----
   CONSTANT SIZE    =     31    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     32       9
   IDATA SIZE       =     16    ----
   BIT SIZE         =     10    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  2 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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