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

📄 dth add lcd.lst

📁 基于DTH11+LCD温湿度采集
💻 LST
字号:
C51 COMPILER V9.01   DTH_ADD_LCD                                                           06/03/2013 17:36:27 PAGE 1   


C51 COMPILER V9.01, COMPILATION OF MODULE DTH_ADD_LCD
OBJECT MODULE PLACED IN dth add lcd.OBJ
COMPILER INVOKED BY: D:\软件\keil\C51\BIN\C51.EXE dth add lcd.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          //DHT11.c文件
   2          #include<reg52.h>
   3          #include<Time_Delay.h>
*** WARNING C318 IN LINE 3 OF dth add lcd.c: can't open file 'Time_Delay.h'
   4           //the main only needs to call get DHT11(),then the temperature and huminity was got in F16T,F16RH as floa
             -t
   5          sbit bit11=P2^0;
   6          unsigned char  

   7          U8T_data_H,U8T_data_L,U8RH_data_H,U8RH_data_L,U8checkdata;
   8          float F16T,F16RH;       //用于最终读取的温湿度数据      
   9          // read 8 bits onice
  10           char  COM(void)
  11                {
  12   1           
  13   1                      char i,U8temp,U8comdata;
  14   1             for(i=0;i<8;i++)    
  15   1                  {
  16   2                      
  17   2                      
  18   2              
  19   2                      while(!bit11);  //表示读取的高电位延时大于20多us 则读取的是1 否则读取的是0
  20   2                              Delay_us(35);                   //通过U8FLAG 可 bit11 显示数据的脉长
*** WARNING C206 IN LINE 20 OF DTH ADD LCD.C: 'Delay_us': missing function-prototype
*** ERROR C267 IN LINE 20 OF DTH ADD LCD.C: 'Delay_us': requires ANSI-style prototype
  21   2                              U8temp=0;
  22   2               
  23   2                   if(bit11)U8temp=1;
  24   2                         
  25   2                       while(bit11);           
  26   2                         U8comdata<<=1;
  27   2                         U8comdata|=U8temp;        //0
  28   2                   }//rof
  29   1                      return  U8comdata;
  30   1              }
  31          
  32                  //--------------------------------
  33                  //-----温湿度读取子程序 ----------
  34                  //--------------------------------
  35                  //----以下变量均为全局变量--------
  36                  //----温度高8位== U8T_data_H------
  37                  //----温度低8位== U8T_data_L------
  38                  //----湿度高8位== U8RH_data_H-----
  39                  //----湿度低8位== U8RH_data_L-----
  40                  //----校验 8位 == U8checkdata-----
  41                  //----调用相关子程序如下----------
  42                  //---- Delay();, Delay_10us();,COM(); 
  43                  //--------------------------------
  44          
  45                  void getDHT11(void)
  46                  {
  47   1                //主机拉低18ms 
  48   1           GO1:    bit11=0;
  49   1                 Delay_ms(20);
  50   1                 bit11=1;
  51   1               //总线由上拉电阻拉高 主机延时20us
C51 COMPILER V9.01   DTH_ADD_LCD                                                           06/03/2013 17:36:27 PAGE 2   

  52   1                 Delay_us(60);
  53   1                 
  54   1               //主机设为输入 判断从机响应信号 
  55   1               //  bit11=1;
  56   1               //判断从机是否有低电平响应信号 如不响应则跳出,响应则向下运行  

  57   1        
  58   1                 if(!bit11)            //T !    
  59   1                 {
  60   2                
  61   2                 while(!bit11);               //wait DHT goto high
  62   2                 
  63   2                 while(bit11);
  64   2               //数据接收状态          
  65   2                 
  66   2                 U8RH_data_H=COM();
  67   2                 
  68   2                 U8RH_data_L=COM();
  69   2                
  70   2                 U8T_data_H=COM();
  71   2                 
  72   2                 U8T_data_L=COM();
  73   2                
  74   2                 U8checkdata=COM();
  75   2                 bit11=1;
  76   2               //数据校验 
  77   2               
  78   2                 
  79   2                 if((U8T_data_H+U8T_data_L+U8RH_data_H+U8RH_data_L)!

  80   2      =U8checkdata)    //if check wrong,read again
  81   2                 goto  GO1;
  82   2                 }//fi
  83   1                 F16T=U8T_data_H+(float)U8T_data_L/256;               

  84   1      //change integer to float
  85   1                 F16RH=U8RH_data_H+(float)U8RH_data_L/256;
  86   1              }
  87          
  88          
  89          

C51 COMPILATION COMPLETE.  2 WARNING(S),  1 ERROR(S)

⌨️ 快捷键说明

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