#include <LiquidCrystal_I2C.h>
#include "DHT.h"
#define DHTPIN 15
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);
#define I2C_ADDR 0x27
#define LCD_COLUMNS 16
#define LCD_LINES 2
#define BUZZERPIN 4
int buzzer = 4;
float temp;
float humi;
LiquidCrystal_I2C lcd(I2C_ADDR, LCD_COLUMNS, LCD_LINES);
void setup()
{
Serial.begin(115200);
Serial.println("HELLO ,CPE122!!");
dht.begin();
lcd.init();
lcd.backlight();
lcd.setCursor(0, 0);
Serial.println("HELLO ,CPE122!!");
pinMode(buzzer, OUTPUT);
}
void loop()
{
float temp = dht.readTemperature();
float humi = dht.readHumidity();
if (temp >= 35)
{
lcd.setCursor(0, 0);
lcd.print("Temp=" +String(temp)+ " C ");
lcd.setCursor(0, 1);
lcd.print("humi=" +String(humi)+ " C ");
buzzer_on();
}
else {
lcd.setCursor(0, 0);
lcd.print("Temp=" +String(temp));
lcd.setCursor(0, 1);
lcd.print("humi=" +String(humi));
}
delay(1);
}
void buzzer_on()
{ unsigned char i, j;
{ for (i = 0; i < 80; i++)
{ digitalWrite(buzzer, HIGH);
delay(1);
digitalWrite(buzzer, LOW);
delay(1);
}
for (i = 0; i < 100; i++)
{
digitalWrite(buzzer, HIGH);
digitalWrite(buzzer, LOW);
delay(2);
}
}
}