找回密码
 立即注册

QQ登录

只需一步,快速开始

本帖最后由 lxf 于 2020-8-17 13:33 编辑

第29课 水杯温度检测仪


目标

用DHT11温湿度传感器检测加满水的水杯温度,并在LCD1602显示屏上显示

实验材料

Arduino UNO开发板
DHT11温湿度传感器模块
LCD1602显示屏
配套USB数据线
配套杜邦线若干
Arduino IDE软件

图片1.png

内容

用DHT11温湿度传感器检测加满水的水杯温度,每隔5秒检测一次,并在LCD1602显示屏上显示。

接线图

微信图片_20200702163538.png

接线方式

Arduino UNO    <------>   DHT11温湿度传感器模块
        5V              <------>                   +
     GND             <------>                    -
       2                 <------>                  OUT
Arduino UNO    <------>   LCD1602显示屏
     5V                  <------>                VCC
   GND                <------>                GND
    A4                  <------>                 SDA
    A5                  <------>                 SCL

备注:需要使用到DHT11温湿度传感器和LCD1602显示屏第三方库文件,前面已讲到,不再叙述。

程序实现代码

  1. #include <dht11.h>   //DHT11温湿度传感器库文件
  2. #include <Wire.h>
  3. #include <LiquidCrystal_I2C.h>    //LCD1602显示屏库文件
  4. LiquidCrystal_I2C mylcd(0x27,16,2);    //设置LCD1602设备地址,这里的地址是0x27
  5. dht11 DHT11;
  6. #define DHT11PIN 2   //将宏DHT11PIN定义为2,即将DHT11温湿度传感器定义为2号引脚
  7. void setup(){
  8.   Serial.begin(9600);
  9.    mylcd.init();   // 初始化LCD
  10.    mylcd.backlight();   //设置LCD背景等亮
  11. }
  12. void loop(){
  13. int x = DHT11.read(DHT11PIN);
  14. float tempread=(float)DHT11.temperature;
  15.    mylcd.setCursor(1-1, 1-1);   //设置显示指针,这里是第1行第1列
  16.    mylcd.print("Temperature: ");  //串口打印字符串“Temperature:”
  17.      mylcd.setCursor(1-1, 2-1);  //设置显示指针,这里是第2行第1列
  18.    mylcd.print(tempread);   //输出DHT11温湿度传感器检测到的水杯温度
  19. delay(5000);   
  20. }
复制代码

实验结果测试:

微信图片_20200702163421.png
分享至 : QQ空间
收藏

0 个回复

您需要登录后才可以回帖 登录 | 立即注册