#include <DHT.h> //menyertakan library DHT kedalam program
#include <LiquidCrystal_I2C.h>
#include <Wire.h>
#define DHTPIN 2 //kita pasang sensor pada pin 6 digital
#define DHTTYPE DHT11 //kita menggunakan jenis sensor DHT11, ubah jika kamu gunakan sensor lain seperti DHT22 (AM2302) atau DHT21 (AM2301)
//#define DHTTYPE DHT22 // DHT 22, AM2302, AM2321
//#define DHTTYPE DHT21 // DHT 21, AM2301
DHT dht(DHTPIN, DHTTYPE); //deklarasi pin sensor dengan jenis sensor yang dipilih
LiquidCrystal_I2C lcd(0x27, 16, 2); // Set Alamat I2C dan Ukuran LCD
//LiquidCrystal_I2C lcd(0x3F, 16, 2);
void setup() {
//lcd.begin();
lcd.init();
lcd.backlight(); // Menyalakan Backlight LCD
dht.begin(); //program komunikasi atau setup untuk sensor DHT
Serial.begin(9600); //program komunikasi atau setup untuk serial monitor dan kecepatan komunikasi (baudrate)
}
void loop() {
float kelembapan = dht.readHumidity(); //menyimpan nilai kelembapan pada variabel kelembapan
float suhu = dht.readTemperature(); //menyimpan nilai suhu pada variabel suhu
delay(200); //mengatur jeda waktu pembacaan sensor selama 200 milidetik
Serial.print(kelembapan); //menampilkan nilai kelembapan pada Serial Monitor
Serial.print("%"); //Simbol persen satuan kelembapan
Serial.print(" "); //menambahkan spasi
Serial.print(suhu); //menampilkan nilai suhu pada Serial Monitor
Serial.println("*C"); //Satuan Derajat Suhu
//menampilkan nilai kelembapan pada LCD
lcd.setCursor(0, 0); //
lcd.print("kelembapan.: ");
lcd.print((int) kelembapan);
lcd.print("%");
//menampilkan nilai suhu pada LCD
lcd.setCursor(0, 1);
lcd.print("Suhu.: ");
lcd.print((int) suhu);
lcd.print((char)223); //Simbol Derajat di LCD
lcd.print("C ");
}