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

📄 wsd2.lst

📁 湿度采集模块
💻 LST
📖 第 1 页 / 共 3 页
字号:
 403   3              xs1[7]=c;
 404   3              }
 405   2          if(b==6) 
 406   2          {
 407   3              if(a>20){a=0;}
 408   3              TAB[4]=13;
 409   3          TAB[5]=14;
 410   3          TAB[6]=a%100/10;
C51 COMPILER V7.20   WSD2                                                                  11/03/2004 13:33:32 PAGE 8   

 411   3          TAB[7]=a%100%10;
 412   3              xs1[5]=a;
 413   3              }
 414   2        }
 415   1        else {
 416   2             Collect=RDSDZ();
 417   2                 if(Collect<999){TAB[0]=14;}
 418   2             else TAB[0]=Collect/1000;
 419   2                 if(Collect<99){TAB[1]=14;}
 420   2                 else TAB[1]=Collect%1000/100;
 421   2                 if(Collect<9){TAB[2]=14;}
 422   2                 else TAB[2]=Collect%1000%100/10;
 423   2                 TAB[3]=Collect%1000%100%10;
 424   2             Coll++;
 425   2         switch(Coll)
 426   2             {
 427   3              case 10000:  Collect1=TMP[0];  break;
 428   3              case 20000:  Collect1=TMP[1];  break;
 429   3                  case 30000:  Collect1=TMP[2];  break;
 430   3                      case 40000:  Collect1=TMP[3]; Coll=0; break;
 431   3             }
 432   2                 db1=1;                                                           
 433   2                 if(Collect1<999){TAB[4]=14;}
 434   2             else TAB[4]=Collect1/1000;
 435   2                 if(Collect1<99){TAB[5]=14;}
 436   2                 else TAB[5]=Collect1%1000/100;
 437   2                 if(Collect1<9){TAB[6]=14;}
 438   2                 else TAB[6]=Collect1%1000%100/10;
 439   2                 TAB[7]=Collect1%1000%100%10;
 440   2                 }
 441   1      }
 442          //-----------------------------
 443          void Show0(void)
 444          {
 445   1        d595(DAT[7]);
 446   1        d595(DAT1[TAB[3]]);
 447   1        SRCLK=0; SRCLK=1;
 448   1        delay1(dat);
 449   1      
 450   1        d595(DAT[6]);
 451   1        d595(DAT1[TAB[2]]);
 452   1        SRCLK=0; SRCLK=1;
 453   1        delay1(dat);
 454   1      
 455   1        d595(DAT[5]);
 456   1        d595(DAT1[TAB[1]]);
 457   1        SRCLK=0; SRCLK=1;
 458   1        delay1(dat);
 459   1      
 460   1        d595(DAT[4]);
 461   1        d595(DAT1[TAB[0]]);
 462   1        SRCLK=0; SRCLK=1;
 463   1        delay1(dat);
 464   1      }
 465          //-------------------------------
 466          void Show1(void)
 467          {  
 468   1        d595(DAT[0]);
 469   1        d595(DAT1[TAB[4]]);
 470   1        SRCLK=0; SRCLK=1;
 471   1        delay1(dat);
 472   1      
C51 COMPILER V7.20   WSD2                                                                  11/03/2004 13:33:32 PAGE 9   

 473   1        d595(DAT[1]);
 474   1        d595(DAT1[TAB[5]]);
 475   1        SRCLK=0; SRCLK=1;
 476   1        delay1(dat);
 477   1      
 478   1        d595(DAT[2]);
 479   1        db=1;       //开启小数点
 480   1        d595(DAT1[TAB[6]]);
 481   1        db=0;       //关闭小数点
 482   1        SRCLK=0; SRCLK=1;
 483   1        delay1(dat);
 484   1      
 485   1        d595(DAT[3]);
 486   1        d595(DAT1[TAB[7]]);
 487   1        SRCLK=0; SRCLK=1;
 488   1        delay1(dat);
 489   1      }
 490          /*-------------------------------*/
 491          void kzbj(void)
 492          {
 493   1      if(SOUT>xs1[0])
 494   1        {
 495   2        // delay(xs1[2]);
 496   2         WOUTH=0;WOUTL=1;
 497   2        }    //湿度上线
 498   1      else if(SOUT<xs1[1])
 499   1        {
 500   2        //delay(xs1[2]);
 501   2        WOUTL=0;WOUTH=1;
 502   2        }    //湿度下线
 503   1      else {
 504   2            WOUTH=1;WOUTL=1;
 505   2               }
 506   1      if(wdz>(xs1[3]*10))
 507   1        {
 508   2        //delay(xs1[5]);
 509   2        SOUTH=0;SOUTL=1;
 510   2        }     //温度上线
 511   1      else if(wdz<(xs1[4]*10))
 512   1        {
 513   2        //delay(xs1[5]);
 514   2        SOUTL=0;SOUTH=1;
 515   2        }     //温度下线
 516   1      else {
 517   2            SOUTH=1;SOUTL=1;
 518   2               }
 519   1      }
 520          /*-------------------------------*/
 521          void time0_int(void)interrupt 1 //using 0
 522          {    uint a;
 523   1      EA=0;
 524   1      TR0=TR1=0;
 525   1        TH0=0Xdc;TL0=0X00;
 526   1        msn--;
 527   1        if(msn==0)
 528   1        {
 529   2        msn=50;
 530   2        a=plz=(TH1*256+TL1)*2;
 531   2        TH1=TL1=0;
 532   2        }
 533   1      TR0=TR1=1;
 534   1      EA=1;
C51 COMPILER V7.20   WSD2                                                                  11/03/2004 13:33:32 PAGE 10  

 535   1      }
 536          /*-------------------------------*/
 537          void time1_int(void)interrupt 3 //using 0
 538          {
 539   1      
 540   1      }
 541          /*-------------------------------*/
 542          void time2_int(void)interrupt 5 //using 1
 543          { 
 544   1      TR2=0;
 545   1        Show1();
 546   1        Show0();
 547   1       RCAP2H=0xff;
 548   1       RCAP2L=0xc0;
 549   1      TR2=1;
 550   1      TF2=0;
 551   1      }
 552          /*------------温度数据发送到上位机函数-----------*/
 553          void Send_out(void)
 554          {
 555   1      uchar code tab1[10]={0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39};
 556   1      /*
 557   1        do{
 558   1           while(!RI);
 559   1           RI=0;
 560   1          }while((SBUF^0x38)!=0);
 561   1      */
 562   1               SBUF=tab1[TAB[4]];  
 563   1           while(!TI);
 564   1           TI=0;
 565   1               SBUF=tab1[TAB[5]];  
 566   1           while(!TI);
 567   1           TI=0;
 568   1               SBUF=tab1[TAB[6]];  
 569   1           while(!TI);
 570   1           TI=0;
 571   1           SBUF=tab1[TAB[7]];  
 572   1           while(!TI);
 573   1           TI=0;
 574   1      }
 575          //-----------------------------*/
 576          void main(void)
 577          { 
 578   1        beep=1;
 579   1        SP=0x5f;
 580   1        d25045(1);
 581   1        d25045(3);
 582   1      /*
 583   1        SCON=0x50;
 584   1        TMOD=0x20;
 585   1        TH1=TL1=0XfF;         //11。0592    56000
 586   1        PCON=0x80;
 587   1        TR1=1;
 588   1      */
 589   1        TMOD=0x59;
 590   1        SCON=0x50;
 591   1        PCON=0;
 592   1        //T2MOD=0x02;
 593   1        TH1=TL1=0;
 594   1        TH0=0xdc;TL0=0x00;
 595   1        TR0=TR1=1;
 596   1      
C51 COMPILER V7.20   WSD2                                                                  11/03/2004 13:33:32 PAGE 11  

 597   1        RCAP2H=0xff;
 598   1        RCAP2L=0xc0;
 599   1        ET2=TR2=1;
 600   1        IP=0x02;
 601   1        IE=0xba;
 602   1      while(1)
 603   1        {
 604   2        mrtemp();             
 605   2        AJ();
 606   2        d25045(4);
 607   2        kzbj();
 608   2        //Send_out();
 609   2        //wdz=cjtemp();
 610   2        }
 611   1      }

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

⌨️ 快捷键说明

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