#include "DHT.h"
#define DHTPIN 2
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#include <Fonts/FreeSansBold9pt7b.h>
#include <Fonts/Picopixel.h>
int buzzerPin = 13;
Adafruit_SSD1306 display(128, 64, &Wire, -1);
void setup() {
//noTone(buzzerPin);
Serial.begin(9600);
Serial.println(F("DHT22 test!"));
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(2, INPUT);
pinMode(5, OUTPUT);
pinMode(buzzerPin, OUTPUT);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
//display.clearDisplay();
dht.begin();
}
void loop() {
delay(2000);
float h = dht.readHumidity();
float t = dht.readTemperature();
float f = dht.readTemperature(true);
if (isnan(h) || isnan(t) || isnan(f)) {
Serial.println(F("Failed to read from DHT sensor!"));
return;
}
Serial.print ("Suhu= ");
Serial.println (t);
if (t<29){
digitalWrite(4,HIGH);
digitalWrite(3,LOW);
digitalWrite(5, LOW);
}
else if(t>=29 && t<=35 ){
digitalWrite(5,HIGH);
digitalWrite(4,LOW);
digitalWrite(3,LOW);
}
else if (t>35){
digitalWrite(3,HIGH);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
display.setCursor(32, 2);
display.print("SUHU TINGGI");
tone(buzzerPin, 1500);
delay(1000);
noTone(buzzerPin);
delay(1000);
}
}