/********* Pleasedontcode.com ********** Pleasedontcode thanks you for automatic code generation! Enjoy your code! - Terms and Conditions: You have a non-exclusive, revocable, worldwide, royalty-free license for personal and commercial use. Attribution is optional; modifications are allowed, but you're responsible for code maintenance. We're not liable for any loss or damage. For full terms, please visit pleasedontcode.com/termsandconditions. - Project: Temperature Monitor - Source Code compiled for: Arduino Uno - Source Code created on: 2023-12-29 00:33:51 ********* Pleasedontcode.com **********/ /****** SYSTEM REQUIREMENTS *****/ /****** SYSTEM REQUIREMENT 1 *****/ /* Leer la temperatura y la humedad y escribirla en */ /* el display LCD cada 1s. Si la temperatura supera */ /* los 40°C entonces encienda el zumbador, si no */ /* apague el zumbador. */ /****** END SYSTEM REQUIREMENTS *****/ /****** DEFINITION OF LIBRARIES *****/ #include #include #include #include /****** FUNCTION PROTOTYPES *****/ void setup(); void loop(); /***** DEFINITION OF DIGITAL INPUT PINS *****/ const uint8_t DHTPIN = 3; /***** DEFINITION OF DIGITAL OUTPUT PINS *****/ const uint8_t BUZZERPIN = 4; /***** DEFINITION OF I2C PINS *****/ const uint8_t I2C_PIN_SDA = A4; const uint8_t I2C_PIN_SCL = A5; const uint8_t I2C_SLAVE_ADDRESS = 39; /****** DEFINITION OF LIBRARY CLASS INSTANCES *****/ DHT dht(DHTPIN, DHT11); LiquidCrystal_I2C lcd(I2C_SLAVE_ADDRESS, 16, 2); void setup() { pinMode(DHTPIN, INPUT_PULLUP); pinMode(BUZZERPIN, OUTPUT); dht.begin(); lcd.begin(16, 2); lcd.backlight(); } void loop() { float humidity = dht.readHumidity(); float temperature = dht.readTemperature(); if (isnan(humidity) || isnan(temperature)) { Serial.println(F("Failed to read from DHT sensor!")); return; } lcd.clear(); lcd.setCursor(0, 0); lcd.print("Temp: "); lcd.print(temperature); lcd.print("C"); lcd.setCursor(0, 1); lcd.print("Humidity: "); lcd.print(humidity); lcd.print("%"); if (temperature > 40) { digitalWrite(BUZZERPIN, HIGH); } else { digitalWrite(BUZZERPIN, LOW); } delay(1000); }