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

📄 system.lst

📁 单片机的温湿度测量系统
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V8.05a   SYSTEM                                                               03/18/2009 08:40:16 PAGE 5   

 240   1           dout=0;
 241   1           Delay(180);
 242   1           dout=1;
 243   1         //总线由上拉电阻拉高 主机延时20us
 244   1           Delay_10us();
 245   1           Delay_10us();
 246   1           Delay_10us();
 247   1           Delay_10us();
 248   1         //主机设为输入 判断从机响应信号 
 249   1           dout=1;
 250   1         //判断从机是否有低电平响应信号 如不响应则跳出,响应则向下运行    
 251   1           if(!dout)     //T !    
 252   1           {
 253   2           U8FLAG=2;
 254   2         //判断从机是否发出 80us 的低电平响应信号是否结束  
 255   2           while((!dout)&&U8FLAG++);
 256   2           U8FLAG=2;
 257   2         //判断从机是否发出 80us 的高电平,如发出则进入数据接收状态
 258   2           while((dout)&&U8FLAG++);
 259   2         //数据接收状态    
 260   2           COM();
 261   2           U8RH_data_H_temp=U8comdata;
 262   2           COM();
 263   2           U8RH_data_L_temp=U8comdata;
 264   2           COM();
 265   2           U8T_data_H_temp=U8comdata;
 266   2           COM();
 267   2           U8T_data_L_temp=U8comdata;
 268   2           COM();
 269   2           U8checkdata_temp=U8comdata;
 270   2           dout=1;
 271   2         //数据校验 
 272   2         
 273   2           U8temp=(U8T_data_H_temp+U8T_data_L_temp+U8RH_data_H_temp+U8RH_data_L_temp);
 274   2           if(U8temp==U8checkdata_temp)
 275   2           {
 276   3              U8RH_data_H=U8RH_data_H_temp;
 277   3              U8RH_data_L=U8RH_data_L_temp;
 278   3            U8T_data_H=U8T_data_H_temp;
 279   3              U8T_data_L=U8T_data_L_temp;
 280   3              U8checkdata=U8checkdata_temp;
 281   3           }//fi
 282   2           }//fi
 283   1      
 284   1        }
 285            
 286          
 287          void  process(void)
 288          {
 289   1          if(U8RH_data_H==0)
 290   1        { hh=0;
 291   2          hl=0;
 292   2        }
 293   1        else 
 294   1        {
 295   2          hh=U8RH_data_H/10;
 296   2          hl=U8RH_data_H%10;
 297   2        }
 298   1      
 299   1          if(U8T_data_H==0)
 300   1        { th=0;
 301   2          tl=0;
C51 COMPILER V8.05a   SYSTEM                                                               03/18/2009 08:40:16 PAGE 6   

 302   2        }
 303   1        else 
 304   1        {
 305   2          th=U8T_data_H/10;
 306   2          tl=U8T_data_H%10;
 307   2        } 
 308   1      }
 309          
 310               void Delay(U16 j)
 311              {      U8 i;
 312   1            for(;j>0;j--)
 313   1          {   
 314   2          for(i=0;i<27;i++);
 315   2      
 316   2          }
 317   1          }
 318          
 319           void  Delay_10us(void)
 320                {
 321   1              U8 i;
 322   1              i--;
 323   1              i--;
 324   1              i--;
 325   1              i--;
 326   1              i--;
 327   1              i--;
 328   1             }
 329          void winkling(void)
 330          {
 331   1      switch(mode_flag)
 332   1      {
 333   2         case 0:break;
 334   2               
 335   2         case  1:
 336   2        { 
 337   3          while(mode_flag==1)
 338   3              {
 339   4                
 340   4                     send(0x05,0xf);
 341   4                      special(100);
 342   4      
 343   4                      if(mode_flag!=1)      {   send(0x05,th0);   goto XX2;     }
 344   4      
 345   4      
 346   4                       if(set_flag==1)
 347   4                     {
 348   5                        set_flag=0;
 349   5                        th0++;
 350   5                        if(th0>9) th0=0;        
 351   5              
 352   5                      }
 353   4                                        
 354   4                     send(0x05,th0);
 355   4                      special(100);
 356   4                      if(set_flag==1)
 357   4                     {
 358   5                        set_flag=0;
 359   5                        th0++;
 360   5                        if(th0>9) th0=0;        
 361   5              
 362   5                      } 
 363   4                               
C51 COMPILER V8.05a   SYSTEM                                                               03/18/2009 08:40:16 PAGE 7   

 364   4                }
 365   3              }
 366   2      
 367   2          case  2:
 368   2        { 
 369   3      XX2:    while(mode_flag==2)
 370   3              {
 371   4                
 372   4                     send(0x06,0xf);
 373   4                      special(100);
 374   4                      if(mode_flag!=2){    send(0x06,tl0);  goto XX3;}
 375   4                       if(set_flag==1)
 376   4                     {
 377   5                        set_flag=0;
 378   5                        tl0++;
 379   5                        if(tl0>9)tl0=0;           
 380   5                    
 381   5                      } 
 382   4                     send(0x06,tl0);
 383   4                      special(100);
 384   4                      if(set_flag==1)
 385   4                     {
 386   5                        set_flag=0;
 387   5                        tl0++;
 388   5                        if(tl0>9)tl0=0;           
 389   5                    
 390   5                      } 
 391   4                 
 392   4                }
 393   3              }
 394   2                              
 395   2          case 3:
 396   2      
 397   2      XX3:         { while(mode_flag==3)
 398   3                {
 399   4                
 400   4                     send(0x07,0xf);
 401   4                      special(100);
 402   4                      if(mode_flag!=3)              { send(0x07,hh0); goto XX4;}
 403   4      
 404   4                       if(set_flag==1)
 405   4                     {
 406   5                        set_flag=0;
 407   5                        hh0++;
 408   5                        if(hh0>9)hh0=0;           
 409   5                    
 410   5                      } 
 411   4                     send(0x07,hh0);
 412   4                      special(100);
 413   4                      if(set_flag==1)
 414   4                     {
 415   5                        set_flag=0;
 416   5                        hh0++;
 417   5                          if(hh0>9) hh0=0;
 418   5                      } 
 419   4                }
 420   3                }
 421   2                
 422   2                case 4:
 423   2      
 424   2      XX4:   { while(mode_flag==4)
 425   3                {
C51 COMPILER V8.05a   SYSTEM                                                               03/18/2009 08:40:16 PAGE 8   

 426   4                
 427   4                     send(0x08,0xf);
 428   4                      special(100);
 429   4                      if(mode_flag!=4) {               send(0x08,hl0); goto XX5;  }
 430   4                      if(set_flag==1)
 431   4                     {
 432   5                        set_flag=0;
 433   5                        hl0++;
 434   5                        if(hl0>9)  hl0=0;
 435   5                      }
 436   4              
 437   4                       
 438   4                     send(0x08,hl0);
 439   4                      special(100);
 440   4                      if(set_flag==1)
 441   4                     {
 442   5                        set_flag=0;
 443   5                        hl0++;
 444   5                        if(hl0>9)  hl0=0;
 445   5                    }
 446   4              
 447   4              }
 448   3              } 
 449   2                
 450   2        case  5:
 451   2        { 
 452   3      XX5:    while(mode_flag==5)
 453   3          {
 454   4                
 455   4        s_seg(th0,tl0,hh0,hl0);
 456   4                   
 457   4                     
 458   4                      special(100);
 459   4                      if (mode_flag!=5)  { s_seg(th0,tl0,hh0,hl0); goto XX6;}
 460   4        s_seg(0xf,0xf,0xf,0xf);
 461   4                      special(100);
 462   4      
 463   4                 
 464   4          }
 465   3        }     
 466   2       }      
 467   1      XX6:          mode_flag=0;
 468   1                s_seg(th,tl,hh,hl);
 469   1      
 470   1      
 471   1       }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   1008    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     43       7
   IDATA SIZE       =   ----    ----
   BIT SIZE         =      1    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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