/********* 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 Display
- Source Code compiled for: Arduino Uno
- Source Code created on: 2023-12-09 14:43:01
********* Pleasedontcode.com **********/
/****** SYSTEM REQUIREMENTS *****/
/****** SYSTEM REQUIREMENT 1 *****/
/* At the transmitter arduino side nrf24l01 module */
/* with DS18B20 waterproof transmitter should send */
/* data to the Receiver side with lcd display */
/* Receiver should receive and display it on LCD */
/****** END SYSTEM REQUIREMENTS *****/
/****** DEFINITION OF LIBRARIES *****/
#include
#include
#include
#include
/****** FUNCTION PROTOTYPES *****/
void setup();
void loop();
void printTemperature();
/***** DEFINITION OF DIGITAL INPUT PINS *****/
const uint8_t DS18B20_DQ_PIN = 2;
/***** DEFINITION OF I2C PINS *****/
const uint8_t LCD_I2C_PIN_SDA = A4;
const uint8_t LCD_I2C_PIN_SCL = A5;
const uint8_t LCD_I2C_SLAVE_ADDRESS = 0x27;
/****** DEFINITION OF LIBRARY CLASS INSTANCES*****/
DS18B20 ds(DS18B20_DQ_PIN);
LiquidCrystal_I2C lcd(LCD_I2C_SLAVE_ADDRESS, 16, 2);
void setup()
{
// Initialize the digital input pin for DS18B20
pinMode(DS18B20_DQ_PIN, INPUT);
// Initialize the I2C communication
Wire.begin();
// Initialize the LCD display
lcd.begin(16, 2);
lcd.backlight();
// Print initial message on LCD
lcd.print("Receiver - NRF24L01");
lcd.setCursor(0, 1);
lcd.print("Waiting for data...");
}
void loop()
{
// Read temperature from DS18B20
float temperature = ds.getTempC();
// Display temperature on LCD
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Temperature: ");
lcd.print(temperature);
lcd.print(" C");
delay(2000);
}
void printTemperature()
{
// Read temperature from DS18B20
float temperature = ds.getTempC();
// Print temperature via serial
Serial.print("Temperature: ");
Serial.print(temperature);
Serial.println(" C");
}