/***
借助于温度传感器、风扇模块和几个LED灯,我们利用Arduino开发制作一个“高温监控仪”:
当环境温度处于较适宜的温度范围时(比如28℃以下),绿色LED灯亮,风扇模块无动作;
当温度有小幅度升高时(28℃以上、30℃以下),黄色LED灯发光进行预警,
同时风扇模块低速转动进行风力降温,直至恢复正常;当温度较高时(30℃以上)
,红色LED灯发光进行报警,风扇模块高速转动进行风力快速降温……在整个过程中,
屏幕每隔3秒钟就显示一次实时检测到的温度数据。
***/
#include <dht11.h>
#include <ESP8266WiFi.h>
#define DHT11PIN 5 //定义温湿度针脚为5号引脚
dht11 DHT11;
int Fan = 13;
int GreenLED = 4;
int YellowLED = 14;
int RedLED = 12;
void setup()
{
Serial.begin(115200);
pinMode(DHT11PIN,OUTPUT);//5
pinMode(Fan,OUTPUT); //13
pinMode(GreenLED,OUTPUT);//4
pinMode(YellowLED,OUTPUT);//14
pinMode(RedLED,OUTPUT); //12
}
void loop(){
int chk = DHT11.read(DHT11PIN); //将读取到的值赋给chk
int temp=(float)DHT11.temperature; //将温度值赋给tem
Serial.print("当前温度: ");
Serial.print(temp);
Serial.println("℃");
if (temp <= 25.00)//则控制绿色LED灯发光
{
digitalWrite(GreenLED,HIGH);
}
else if (temp > 25.00 && temp <= 30.00) //如果温度在28℃-30℃之间,则控制黄色LED灯发光、风扇低速转动
{
digitalWrite(YellowLED,HIGH);
analogWrite(Fan,127);
}
else {
digitalWrite(RedLED,HIGH);
analogWrite(Fan,255);
}
delay(3000);
digitalWrite(GreenLED,LOW);
digitalWrite(YellowLED,LOW);
digitalWrite(RedLED,LOW);
analogWrite(Fan,0);
}
ESP8266做的一个温控风扇程序
最新推荐文章于 2024-05-21 23:16:53 发布