uart.lst

来自「I2C slaver 的8051源码」· LST 代码 · 共 337 行 · 第 1/2 页

LST
337
字号
 157   5                                                              if(SBUF_Bak!= '|')
 158   5                                                                      {
 159   6                                                                              SBUF = 0x0d;
 160   6                                                                              while(TI == 0);
 161   6                                                                              TI = 0; 
 162   6                                                                              SBUF =0x0a;
 163   6                                                                              while(TI == 0);
 164   6                                                                              TI = 0;                 
 165   6      
 166   6                                                                              SBUF_Bak = '|';
 167   6                                                                      }       
 168   5                                                              
 169   5                                                              i++; //处理7c 00 c0的c0
 170   5                                                              SDA_DATA[i] = 0x20;
 171   5      
 172   5                                                      }               
 173   4                                              
 174   4                                      }
 175   3                                              
 176   3                                      if(SDA_DATA[i] == 0xc0)
 177   3                                              {               
 178   4                                                      {               
 179   5                                                              i++;
C51 COMPILER V7.50   UART                                                                  03/02/2009 15:59:07 PAGE 4   

 180   5                                                              if(SDA_DATA[i] == 0x20)
 181   5                                                                      {
 182   6                                                                              if(j == 0)
 183   6                                                                                      {
 184   7                                                                                              SBUF_Bak = SBUF;
 185   7                                                                                              
 186   7                                                                                              SBUF = SDA_DATA[i];
 187   7                                                                                              while(TI == 0);
 188   7                                                                                              TI = 0; 
 189   7      
 190   7                                                                                              SDA_DATA[i] = 0x20;//清空       
 191   7                                                                                      }
 192   6                                                                      }
 193   5                                                              else
 194   5                                                                      {
 195   6                                                                                      SBUF_Bak = SBUF;
 196   6                                                                                      
 197   6                                                                                      SBUF = SDA_DATA[i];
 198   6                                                                                      while(TI == 0);
 199   6                                                                                      TI = 0; 
 200   6      
 201   6                                                                                      SDA_DATA[i] = 0x20;//清空       
 202   6                                                                      
 203   6                                                                      }
 204   5                                                      }                               
 205   4                                              }
 206   3                                      i++;//while(i < Buffer_Len)循环的i++
 207   3                                      }       
 208   2                                      i = 0;
 209   2                                      Buffer_End = 1;
 210   2                                      Buffer_Return = 0;
 211   2                      }
 212   1      
 213   1               if(TEST_PIN == 0)
 214   1              {
 215   2                      i_i = i;                
 216   2                      SBUF =  (unsigned char)(i_i >> 8);   
 217   2                      while(TI == 0);
 218   2                      TI = 0;  
 219   2      
 220   2                      i_i = i;                
 221   2                      SBUF = (unsigned char)(i & 0x00ff);
 222   2                      while(TI == 0);
 223   2                      TI = 0;  
 224   2      
 225   2                      var_var = var;
 226   2                      SBUF = (unsigned char)(var_var>> 8);  
 227   2                      while(TI == 0);
 228   2                      TI = 0;  
 229   2                      
 230   2                      var_var = var;
 231   2                      SBUF = (unsigned char)(var_var& 0x00ff);
 232   2                      while(TI == 0);
 233   2                      TI = 0; 
 234   2      
 235   2                      SBUF = (unsigned char)Buffer_Return;
 236   2                      while(TI == 0);
 237   2                      TI = 0;  
 238   2              }
 239   1      }
 240          
 241          
C51 COMPILER V7.50   UART                                                                  03/02/2009 15:59:07 PAGE 5   

 242          
 243          #if 0//原始数据
              void SendToPc(void) 
              {
                      static unsigned int  i = 0;
                      
                      if(i < var ) //var 是放的次序数
                              {
                                      SBUF = SDA_DATA[i];
                                      while(TI == 0);
                                      TI = 0;          
                                      SDA_DATA[i] = 0x20;//清空
                                      i++;//i是拿的次序数     
                              }
                       if(Buffer_Return == 1) //Buffer_Return等于1是返回的标志
                              {
                                      //while(i < 200)
                                      while(i < 1000)
                                              {
                                                      SBUF = SDA_DATA[i];
                                                      while(TI == 0);
                                                      TI = 0;
                                                      SDA_DATA[i] = 0x20;//清空
                                                      i++;
                                              }                       
                                              i = 0;
                                              Buffer_Return = 0;
                              }
              
              if(TEST_PIN == 0)
              {
                      
                              i_i = i;                
                              SBUF =  (unsigned char)(i_i >> 8);   
                              while(TI == 0);
                              TI = 0;  
              
                              i_i = i;                
                              SBUF = (unsigned char)(i & 0x00ff);
                              while(TI == 0);
                              TI = 0;  
              
                              var_var = var;
                              SBUF = (unsigned char)(var_var>> 8);  
                              while(TI == 0);
                              TI = 0;  
                              
                              var_var = var;
                              SBUF = (unsigned char)(var_var& 0x00ff);
                              while(TI == 0);
                              TI = 0; 
              
                              SBUF = (unsigned char)Buffer_Return;
                              while(TI == 0);
                              TI = 0;  
              }
                      
              
                      
              }
              #endif   
 303          
C51 COMPILER V7.50   UART                                                                  03/02/2009 15:59:07 PAGE 6   



MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    680    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     10    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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