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

📄 host.lst

📁 主从式总线型SIO系统(多机双向通信)
💻 LST
📖 第 1 页 / 共 2 页
字号:
 148   6                                                      SBUF=Clicent_Send_Data2;        //从机可发送数据          
 149   6                                                      while(!TI);
 150   6                                                      TI=0;
 151   6      
 152   6                                                      while(!RI);
 153   6                                                      RI=0;
 154   6                                                      DS18B20_Data[0]=SBUF;                     //接收温度数据
 155   6                                                      while(!RI);
 156   6                                                      RI=0;
 157   6                                                      DS18B20_Data[1]=SBUF;
 158   6      
 159   6                                                      ClrScreen();  //LCD清屏
 160   6                                                      GotoXY(0,0);                                            
 161   6                                                      Print_Str("NUM2");//LCD显示从 机号
 162   6                                                      temperature_process(DS18B20_Data[0],DS18B20_Data[1]);  //温度数据处理
 163   6                                                 
 164   6                                                 if(!flag) //正
 165   6                                                      {
 166   7                                                      GotoXY(0,1);
 167   7                                                      Print_Str(zhen_temp);
 168   7                                                      if(dot_dis)     
 169   7                                                      Print_Str(".");
 170   7                                                      Print_Str(xiaoshu_temp);
 171   7                                                      Print_Char(0xdf);
 172   7                                                      Print_Str("C");
 173   7                                      }
 174   6                                      else   //负
 175   6                                      {
 176   7                                                      GotoXY(0,1);
 177   7                                                      Print_Str("-");
 178   7                                                      Print_Str(zhen_temp);   
 179   7                                                      Print_Str(".");
C51 COMPILER V8.16   HOST                                                                  03/21/2009 23:04:12 PAGE 4   

 180   7                                                      Print_Str(xiaoshu_temp);
 181   7                                                      Print_Char(0xdf);
 182   7                                                      Print_Str("C");
 183   7                                      }
 184   6                                               //*/
 185   6                                              }
 186   5                                              if(Serial2==4)                    //向从机2发送数据
 187   5                                              {
 188   6                                               Serial2=0;
 189   6                                               num2=num2+2;                      
 190   6                                               SBUF=num2;                                     //发送数据2 4 6 8....测试(偶数递增)
 191   6                                              while(!TI);                                     //等待发送完成
 192   6                                      TI=0;
 193   6                                              }
 194   5                                                       
 195   5                                      }
 196   4                                      }        
 197   3               }
 198   2      
 199   2               //*********************************************
 200   2                       if(Intval3&&Int_pro3)                  //如果第三次中断,采集从机3温度
 201   2               {
 202   3                              Serial_Init();                          //初始化串口
 203   3                              SBUF=STD3;                                      //发送从机3 ID
 204   3                              while(!TI);                                     //等待发送完成
 205   3                              TI=0;
 206   3                                                      
 207   3                              while(Int_pro3)                         //如果没触发第二次中断0
 208   3                                      {
 209   4                                      if(Serial3)                             //从机3响应是否正确
 210   4                                      {  
 211   5                                              if(Serial3==1)          //如果从机3正确接收到地址
 212   5                                              {       
 213   6                                                      SCON=0xd0;
 214   6                                                      Serial3=0;
 215   6                                                      SBUF=Clicent_Command3;   //发送从机3命令
 216   6                                                      while(!TI);
 217   6                                                      TI=0;
 218   6                                              }
 219   5                                              if(Serial3==2&&SendTo3==1)              //
 220   5                                              {       
 221   6                                                      Serial3=0;
 222   6                                                      SBUF=Clicent_Receive_Data3;      //发送从机3命令
 223   6                                                      while(!TI);
 224   6                                                      TI=0;
 225   6                                              }
 226   5      
 227   5                                              if(Serial3==2&&ReceiveFrom3==1)         //如果从机正确接受到命令
 228   5                                              {       
 229   6                                                      Serial3=0;              //
 230   6                                                      SBUF=Clicent_Data_Command3;             //发送把从机结果送主机的命令
 231   6                                                      while(!TI);
 232   6                                                      TI=0;
 233   6                                              }
 234   5                                              if(Serial3==3)     //接收从机3 数据
 235   5                                              {       
 236   6                                                      Serial3=0;
 237   6      
 238   6                                                      SBUF=Clicent_Send_Data3;
 239   6                                                      while(!TI);
 240   6                                                      TI=0;
 241   6      
C51 COMPILER V8.16   HOST                                                                  03/21/2009 23:04:12 PAGE 5   

 242   6                                                      while(!RI);
 243   6                                                      RI=0;
 244   6                                                      DS18B20_Data[0]=SBUF;                     //接收数据
 245   6                                                      while(!RI);
 246   6                                                      RI=0;
 247   6                                                      DS18B20_Data[1]=SBUF;
 248   6                                                       
 249   6                                                      ClrScreen();  //清屏
 250   6                                                      GotoXY(0,0);                                            
 251   6                                                      Print_Str("NUM3");//显示结果
 252   6                                                      temperature_process(DS18B20_Data[0],DS18B20_Data[1]);
 253   6                                                 
 254   6                                                 if(!flag) //正
 255   6                                                      {
 256   7                                                      GotoXY(0,1);
 257   7                                                      Print_Str(zhen_temp);
 258   7                                                      if(dot_dis)     
 259   7                                                      Print_Str(".");
 260   7                                                      Print_Str(xiaoshu_temp);
 261   7                                                      Print_Char(0xdf);
 262   7                                                      Print_Str("C");
 263   7                                      }
 264   6                                      else   //负
 265   6                                      {
 266   7                                                      GotoXY(0,1);
 267   7                                                      Print_Str("-");
 268   7                                                      Print_Str(zhen_temp);   
 269   7                                                      Print_Str(".");
 270   7                                                      Print_Str(xiaoshu_temp);
 271   7                                                  Print_Char(0xdf);
 272   7                                                      Print_Str("C");
 273   7                                      }
 274   6                                              
 275   6                                              }
 276   5                                              if(Serial3==4)
 277   5                                              {
 278   6                                               Serial3=0;                     
 279   6                                              SBUF=num3;                                      //发送数据1 2 3 4....测试(自然数递增)
 280   6                                              while(!TI);                                     //等待发送完成
 281   6                                      TI=0;
 282   6                                              num3=num3+1; 
 283   6                                              }        
 284   5                                      }
 285   4                               }
 286   3               }
 287   2              }
 288   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   1629    ----
   CONSTANT SIZE    =     55    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     28       8
   IDATA SIZE       =   ----    ----
   BIT SIZE         =     14       1
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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