#include "DHT.h"
#define DHTPIN1 2 //dht ตัวที่1
#define DHTPIN2 3 //dht ตัวที่2
#define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321
DHT dht1(DHTPIN1, DHTTYPE); //กำหนดปะเภทและตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็กของ dht ตัวที่1
DHT dht2(DHTPIN2, DHTTYPE); //กำหนดปะเภทและตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็กของ dht ตัวที่2
void setup() {
Serial.begin(115200); //เริ่มแปลงค่าตัวเลขใน dht
Serial.println(F("DHT22 example!")); //แสดงผลในหน้าจอว่า DHT22 example!
pinMode(4, OUTPUT);//led green
pinMode(5, OUTPUT);//led blue
pinMode(6, OUTPUT);//led red
pinMode(7, OUTPUT);//led yellow
dht1.begin(); //เริ่มแปลงค่าตัวเลขใน dht1
dht2.begin(); //เริ่มแปลงค่าตัวเลขใน dht2
}
void loop() {
float temperature1 = dht1.readTemperature();
float humidity1 = dht1.readHumidity();
float temperature2 = dht2.readTemperature();
float humidity2 = dht2.readHumidity();
// ตรวจสอบว่ามีข้อผิดพลาดหรือไม่ของ dht1 (ถ้ามีทำซำ้).
if (isnan(temperature1) || isnan(humidity1)) {
Serial.println("Failed to read from DHT1 sensor!");
return;
}
// ตรวจสอบว่ามีข้อผิดพลาดหรือไม่ของ dht2 (ถ้ามีทำซำ้)
if (isnan(temperature2) || isnan(humidity2)) {
Serial.println("Failed to read from DHT2 sensor!");
return;
}
Serial.print ("temperature1 ="); //แสดงผลในหน้าจอว่า temperature1 = ค่าตัวเลขในตัวแปร temperature1
Serial.print (temperature1);
Serial.print (" humidity1 ="); //แสดงผลในหน้าจอว่า humidity1 = ค่าตัวเลขในตัวแปร humidity1
Serial.print (humidity1);
Serial.print (" temperature2 ="); //แสดงผลในหน้าจอว่า temperature2 = ค่าตัวเลขในตัวแปร temperature2
Serial.print (temperature2);
Serial.print (" humidity2 ="); //แสดงผลในหน้าจอว่า humidity1 = ค่าตัวเลขในตัวแปร humidity2
Serial.println (humidity2);
Serial.println("enter: 'g'for green light 'b'for blue light 'r'for red light 'y'for yellow light 'a'for all light");
if (Serial.available()>0)//ตรวจสอบว่าเป็นตัวเลข
{
int val = Serial.read();
if (val==103)//ตรวจสอบว่าตัวเลข = 103 หรือ g
{
digitalWrite(4, HIGH);delay(500);
digitalWrite(4, LOW);delay(500);
digitalWrite(4, HIGH);delay(500);
digitalWrite(4, LOW);delay(500);
}
else if(val==98)//ตรวจสอบว่าตัวเลข = 98 หรือ b
{
digitalWrite(5, HIGH);delay(500);
digitalWrite(5, LOW);delay(500);
digitalWrite(5, HIGH);delay(500);
digitalWrite(5, LOW);delay(500);
}
else if(val==114)//ตรวจสอบว่าตัวเลข = 114 หรือ r
{
digitalWrite(6, HIGH);delay(500);
digitalWrite(6, LOW);delay(500);
digitalWrite(6, HIGH);delay(500);
digitalWrite(6, LOW);delay(500);
}
else if(val==121)//ตรวจสอบว่าตัวเลข = 121 หรือ y
{
digitalWrite(7, HIGH);delay(500);
digitalWrite(7, LOW);delay(500);
digitalWrite(7, HIGH);delay(500);
digitalWrite(7, LOW);delay(500);
}
else if(val==97)//ตรวจสอบว่าตัวเลข = 97 หรือ a
{
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
digitalWrite(6, HIGH);
digitalWrite(7, HIGH);
delay(500);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
digitalWrite(7, LOW);
delay(500);
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
digitalWrite(6, HIGH);
digitalWrite(7, HIGH);
delay(500);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
digitalWrite(7, LOW);
delay(500);
}
}
//ตั้งค่าหน่วงเวลาทำซำ้ 5 วินาที
delay(5000);
}
/*กด g b r y a หลังข้อความชุดล่าสุด*/