Arduino 读取温湿度传感器控制led灯的亮灭——筑梦之路

/*
 * 本实例实现读取温湿度传感器来控制led灯的亮灭
 * 接线说明:
 * 温湿度传感器:-接gnd,中间接5V或者3.3V,剩下的数字引脚8(数据)
 * led灯:负极GND(串联一个电阻),正极数字引脚10
 */

#include <DHT.h>  //引入温湿度传感器库
#define D 8       //定义传感器的数据引脚

DHT dht(D,DHT11);    //实例化对象
int led=10;          //定义led灯的数字引脚

void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);        //串口通信波特率
  pinMode(D,OUTPUT);         //引脚模式
  pinMode(led,OUTPUT);
  dht.begin();               //开始读取
}

void loop() {
  // put your main code here, to run repeatedly:
  //int chk=dht.read(D);      //读取所有的数据
  float hum=dht.readHumidity();   //读取湿度
  if(hum >= 45.00)                 //判断湿度是否超过45%RH
  {
    digitalWrite(led,HIGH);         //满足条件给led一个高电平
    Serial.print("湿度大于45%RH,灯亮了!!!  当前湿度值为");
    delay(3000);                    //亮灯三秒
  }
  else
  {
    digitalWrite(led,LOW);          //不满足条件熄灯
  }
  Serial.print("hum:");
  Serial.print(hum);
  Serial.println(" %RH");

  float tem = dht.readTemperature();       //读取温度
  if(tem>=22.00)                         //判断温度的条件
  {
    digitalWrite(led,HIGH);                //满足条件给led灯一个高电平
    Serial.print("温度大于22摄氏度,灯亮了!   当前温度值为");
    delay(5000);                        //亮灯5秒
  }
  else
  {
    digitalWrite(led,LOW);  
  }
  Serial.print("tem:");
  Serial.print(tem);
  Serial.println(" 摄氏度");
  delay(2000);
}

猜你喜欢

转载自blog.csdn.net/qq_34777982/article/details/108964001