久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

51單片機驅動數字溫濕度DHT11 lcd1602顯示

作者:佚名   來源:本站原創   點擊數:  更新時間:2014年04月10日   【字體:

//   濕度20-90   溫度0-50  采樣間隔1S
#include <reg52.h>
#include <intrins.h>
#include "LCD1602display.h"
sbit DQ=P2^3;    //DTH11
uchar code ASCII[]="0123456789%c";
uchar code table0[]="    Hum:00";
uchar code table1[]="    Tem:00";
uchar tem;
uchar hum;
  
display0[2]={0,0};
display1[2]={0,0};
      
//**************************延時函數
void delay_ms(uint z)
{
 uint x,y;
 for(x=z;x>0;x--)
  for(y=114;y>0;y--);
}
//**************************初始化DTH11
bit Init_DTH11()
{
 bit flag;
 uchar num;
 DQ=0;
 delay_ms(19);   // >18ms
 DQ=1;
 for(num=0;num<10;num++);   // 20-40us    34.7us
 for(num=0;num<12;num++);
 flag=DQ;
 for(num=0;num<11;num++); //DTH響應80us
 for(num=0;num<24;num++);    //DTH拉高80us
 return flag;
}
//****************************讀DTH11數據
uchar DTH11_RD_CHAR()
{
 uchar byte=0;
 uchar num;
 uchar num1;
 while(DQ==1);
 for(num1=0;num1<8;num1++)
 {
  while(DQ==0);
  byte<<=1;     //高位在前
  for(num=0;DQ==1;num++);
  if(num<10)
   byte|=0x00;
  else
   byte|=0x01;
 }
 return byte;
}
//******************************讀取DTH11溫度和濕度
void  DTH11_DUSHU()
{
 uchar num;
 if(Init_DTH11()==0)
 {
  hum=DTH11_RD_CHAR();   //比正常值高7度左右
  DTH11_RD_CHAR();
  tem=DTH11_RD_CHAR();
  DTH11_RD_CHAR();
  DTH11_RD_CHAR();
  for(num=0;num<17;num++);  //最后BIT輸出后拉低總線50us
  DQ=1;
 }
}
//***********************************顯示函數
void Display_DTH11() 
{
 display0[1]=hum/10%10;
 display0[0]=hum%10;
 
 DisplayListChar(0,  0, table0);
 DisplayOneChar (8,  0, ASCII[ display0[1] ] );
 DisplayOneChar (9,  0, ASCII[ display0[0] ] );
 DisplayOneChar (10, 0, ASCII[10] );     //顯示濕度
 display1[1]=tem/10%10;
 display1[0]=tem%10;
 DisplayListChar(0,  1, table1);
 DisplayOneChar (8,  1, ASCII[ display1[1] ] );
 DisplayOneChar (9,  1, ASCII[ display1[0] ] );
 DisplayOneChar (10, 1, 0xdf );
 DisplayOneChar (11, 1, ASCII[11] );     //顯示溫度
}
//*******************************主函數
main()
{
 tem=0;
 hum=0;
 delay_ms(1000);    //DTH11開始1s有錯誤輸出
 InitLCM();
 while(1)
 {
  DTH11_DUSHU();
  Display_DTH11();
  delay_ms(2000);
 }
}

用到的LCD1602display.h頭文件這里有:http://www.zg4o1577.cn/mcu/3292.html

關閉窗口
主站蜘蛛池模板: 久久在线看 | 久久久久亚洲av毛片大全 | 日韩精品成人一区二区三区视频 | 成人黄色av网址 | 亚洲精品免费视频 | 精品欧美一区二区三区久久久 | 午夜精品久久 | 亚洲夜夜爽 | 亚洲97 | 久久91精品国产一区二区三区 | 一级黄色毛片子 | 在线国产一区 | 日韩电影免费观看中文字幕 | xxxxxx国产 | 粉嫩高清一区二区三区 | 找个黄色片 | h视频在线观看免费 | 成人av观看| 一二区成人影院电影网 | 亚洲精品18 | 精品在线一区 | 超碰在线播 | 天天夜夜操| 日韩精品成人 | 欧美淫| 午夜国产| 精品一区二区三区在线观看国产 | 一区二区视频在线观看 | 欧美福利久久 | 黄色片网站国产 | 精品视频99 | 国产一级淫片a直接免费看 免费a网站 | 欧美日韩综合视频 | 免费人成激情视频在线观看冫 | 国产欧美一区二区三区久久人妖 | 自拍亚洲 | 国产黄色一级片 | 久久久夜| 一级毛片高清 | 午夜电影合集 | 国产成人99久久亚洲综合精品 |