#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BMP085_U.h>
#include <DHT.h>
#define DHTPIN D4 // กำหนดขาของ DHT11 sensor เชื่อมต่อกับ NodeMCU
#define DHTTYPE DHT11 // กำหนดประเภทของ DHT sensor
DHT dht(DHTPIN, DHTTYPE);
Adafruit_BMP085_Unified bmp = Adafruit_BMP085_Unified(10085);
void setup() {
Serial.begin(9600); // เริ่มต้นการสื่อสารผ่าน Serial Monitor
Serial.println("DHT11 and BMP180 test");
dht.begin(); // เริ่มต้นการใช้งาน DHT sensor
if (!bmp.begin()) {
Serial.println("Could not find a valid BMP085 sensor, check wiring!");
while (1);
}
}
void loop() {
delay(2000); // รอ 2 วินาที
// อ่านค่าอุณหภูมิและความชื้นจาก DHT sensor
float h = dht.readHumidity();
float t = dht.readTemperature();
// อ่านค่าอุณหภูมิจาก BMP sensor
sensors_event_t event;
bmp.getEvent(&event);
float temperature;
bmp.getTemperature(&temperature);
// แสดงค่าที่ได้ผ่าน Serial Monitor
Serial.print("Humidity: ");
Serial.print(h);
Serial.print(" %\t Temperature: ");
Serial.print(t);
Serial.println(" *C");
Serial.print("BMP180 Temperature: ");
Serial.print(temperature);
Serial.println(" *C");
delay(2000); // รอ 2 วินาทีก่อนอ่านค่าใหม่
}