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

📄 rs485.lst

📁 输出视频的字符的软件
💻 LST
📖 第 1 页 / 共 2 页
字号:
 246   5                                                  }
 247   4                                              else
 248   4                                                  {
 249   5                                           disp_color((self_newscount+pub_newscount-wink_offset)%rowcharacter);
 250   5                                                  }
 251   4                                      }
 252   3                      i=0;
 253   3                      }
 254   2                              
 255   2                      else if((i==exit)&&(self_newscount+pub_newscount!=0))
 256   2                      {
 257   3               EnWork_bit=FALSE;
 258   3                       i=0;
 259   3                      }
 260   2                      
 261   2                      else if((i==confirm)&&(self_newscount+pub_newscount!=0))
 262   2                      {
 263   3                              Clr_Display();
 264   3                  disp_main();
 265   3                              i=0;
 266   3                              while ((timeout2<0x3e8)&&(i!=pagedown)&&(i!=cancel))
 267   3                                      {
 268   4                                      if(Rx_bit)
 269   4                                              {
 270   5                                             i=check_page_command();
 271   5                                              if(((i==cancel)&&(kindBYTE))||(i==pagedown))
 272   5                                                      {
 273   6                                               Clr_Display();
 274   6                                               Inqire_Frame();
 275   6                                                      }
 276   5                                              }
 277   4                                      }
 278   3                                 i=0;
 279   3                                 while ((timeout2<0x3e8)&&(i!=confirm)&&(i!=pageup))
 280   3                                  {                      
 281   4                                         if(Rx_bit)
 282   4                                              {
 283   5                                           i=check_page_command();
 284   5                                               Clr_Display();
 285   5                                               disp_detail();
 286   5                                              }
 287   4                       }
 288   3                      i=0;
 289   3                      }
 290   2      //------------------------------------------------------------------
 291   2                      else
 292   2                      {
 293   3                      i=0;
 294   3                      }
 295   2              }
 296   1              CNTRL=FALSE;             //USED TO RELAY
 297   1              clr_timer2();
 298   1      
 299   1              Enwork_bit=0;
 300   1              Clr_Display();
 301   1      }
 302          /*-----------------------------------------*/
C51 COMPILER V7.02b   RS485                                                                06/20/2006 18:46:34 PAGE 6   

 303          void answer_comm()                        /*主机发数据到分机,填好数据,检测是否空闲,发出*/
 304          {
 305   1        
 306   1        uchar data m;
 307   1      
 308   1               Tx_buffer[0]=MSNCMMD;
 309   1           Tx_sum=Tx_sum+Tx_buffer[0];
 310   1                      
 311   1             if(kindBYTE)
 312   1             {
 313   2                  Tx_buffer[1]=0xf0;
 314   2             }
 315   1               else
 316   1               {
 317   2               Tx_buffer[1]=0x00;
 318   2               }
 319   1               Tx_sum=Tx_sum+Tx_buffer[1];
 320   1               
 321   1              Tx_buffer[2]=lounumH;
 322   1               Tx_sum=Tx_sum+Tx_buffer[2];
 323   1               
 324   1              Tx_buffer[3]=lounumL;
 325   1               Tx_sum=Tx_sum+Tx_buffer[3];
 326   1      
 327   1              Tx_buffer[4]=myaddr;
 328   1               Tx_sum=Tx_sum+Tx_buffer[4];
 329   1               
 330   1              Tx_buffer[5]=valid;
 331   1               Tx_sum=Tx_sum+Tx_buffer[5];
 332   1      
 333   1              for(m=6;m<11;m++)
 334   1                      {
 335   2                      Tx_buffer[m]=0;
 336   2                      }
 337   1      
 338   1              if(Rxrun_bit)
 339   1              {
 340   2               delays60ms();
 341   2               }
 342   1             txstart();
 343   1               delays60ms();
 344   1      }
 345          /*-------------------------------------------*/
 346          /*
 347          
 348          
 349          */
 350          /*-------------------------------------------*/
 351          void  RS_int() interrupt 4
 352          {
 353   1      
 354   1       unsigned char data Rxdata=0;
 355   1       if(RI)
 356   1         {
 357   2          RI=0;
 358   2          Rxdata=SBUF;
 359   2      
 360   2          if(Rx_count==0)
 361   2              {
 362   3                         init_timer0();
 363   3                 if((Rxdata==SENDSTART)||(Rxdata==RESEIVESTART))
 364   3                 {
C51 COMPILER V7.02b   RS485                                                                06/20/2006 18:46:34 PAGE 7   

 365   4                 *info_buffer=Rxdata;
 366   4                 Rx_count++;
 367   4                 Rx_sum=Rxdata;
 368   4                     Rxrun_bit=1;
 369   4                  }
 370   3               }
 371   2      
 372   2           else if((Rx_count==0x07)&&(Rx_sum==Rxdata))
 373   2               {
 374   3                      if(*info_buffer==RESEIVESTART)
 375   3                      {
 376   4                         Rx_bit=1;
 377   4                             Rxrun_bit=0;
 378   4                                 TR0=0;           //not used T0 timer
 379   4                       }
 380   3                }
 381   2      
 382   2          else if((Rx_count==15)&&(Rx_sum==Rxdata))
 383   2              {
 384   3                      if(*info_buffer==SENDSTART)
 385   3                      {
 386   4                         Rx_bit=1;
 387   4                             Rxrun_bit=0;
 388   4                                 TR0=0;           //not used T0 timer
 389   4                       }
 390   3               }
 391   2      
 392   2               else if(Rx_count>15)
 393   2                {
 394   3                if((Rx_count==(*(info_buffer+5)+6))&&(Rx_sum==Rxdata)&&(*info_buffer==SENDSTART))
 395   3                   {
 396   4                    Rx_bit=1;
 397   4                        Rxrun_bit=0;
 398   4                                TR0=0;            //not used T0 timer
 399   4                    }
 400   3                 else if(Rx_count<(*(info_buffer+5)+6))
 401   3                    {
 402   4                     *(info_buffer+Rx_count)=Rxdata;
 403   4                     Rx_count++;
 404   4                     Rx_sum+=Rxdata;
 405   4                    }
 406   3                              else
 407   3                                {
 408   4                                if(!Rx_bit)
 409   4                                   {
 410   5                                    Clr_Rx();
 411   5                                    }
 412   4                                }
 413   3                 }
 414   2      
 415   2                else
 416   2                 {
 417   3                  *(info_buffer+Rx_count)=Rxdata;
 418   3                  Rx_count++;
 419   3                  Rx_sum+=Rxdata;
 420   3                  }
 421   2           }
 422   1      
 423   1       if(TI)
 424   1          {
 425   2            TI=0;
 426   2                  if(Tx_count<14)
C51 COMPILER V7.02b   RS485                                                                06/20/2006 18:46:34 PAGE 8   

 427   2                      {
 428   3                      SBUF=Tx_buffer[Tx_count];
 429   3                      Tx_sum=Tx_buffer[Tx_count]+Tx_sum;
 430   3                      Tx_count++;
 431   3                      }
 432   2      
 433   2             else if(Tx_count==14)
 434   2                      {
 435   3                      SBUF=Tx_sum;
 436   3                      Tx_count++;
 437   3                      }
 438   2             else
 439   2                      {
 440   3                      Tx_bit=0;
 441   3                  mRs485G=1;
 442   3                  Tx_count=0;
 443   3                      }
 444   2              }
 445   1      }
 446          
 447          
 448          
 449          //这是备用功能,作为删除信息时候的功能
 450          /*
 451                          else if(i==delete)
 452                          {
 453                                  Clr_Display();
 454                      Inqire_Frame();
 455                                  i=0;
 456                                  while ((timeout2<0x2ee)&&(i!=confirm)&&(i!=cancel))
 457                                          {
 458                           if(Rxrun_bit)
 459                              {
 460                               init_timer0();
 461                               }
 462                                          if(Rx_bit)
 463                                                  {
 464                                              i=check_page_command();
 465                                                  if(((i==cancel)&&(kindBYTE))||(i==pagedown))
 466                                                          {
 467                                                   Clr_Display();
 468                                                   Inqire_Frame();
 469                                                          }
 470                                                  }
 471                                          }
 472                                     i=0;
 473                                     while((timeout2<0x2ee)&&(i!=confirm)&&(i!=pageup))
 474                                        {            
 475                                             if(Rx_bit)
 476                                                     {
 477                                                  i=check_page_command();
 478                                                      Clr_Display();
 479                                                      disp_detail();
 480                                                      }
 481                             }
 482                      i=0;
 483                          }
 484          */


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   1168    ----
C51 COMPILER V7.02b   RS485                                                                06/20/2006 18:46:34 PAGE 9   

   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =    215    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     22       2
   IDATA SIZE       =     42    ----
   BIT SIZE         =      5    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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