Archives
Trending
Support
Login
clear text
XML
Django
JavaScript
MATLAB
C
C++
C#
Python
SQL
Shell
Bash
Markdown
YAML
JSON
HTML
CSS
PHP
Java
Ruby
Go
Rust
Swift
Kotlin
Arduino
TypeScript
Perl
Autohotkey
Lua
SQF
R
Scala
Haskell
Groovy
Dart
Clojure
VB.NET
Objective-C
PowerShell
Bash
CoffeeScript
Verilog
/********* 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 NOT compiled for: ESP32 DevKit V1 - Source Code created on: 2024-09-20 09:58:11 ********* Pleasedontcode.com **********/ /****** SYSTEM REQUIREMENTS *****/ /****** SYSTEM REQUIREMENT 1 *****/ /* afficher la température sur un tft LCD 3.5" ainsi */ /* qu'un curseur pour générer une alarme température */ /****** END SYSTEM REQUIREMENTS *****/ /****** DEFINITION OF LIBRARIES *****/ #include
// https://github.com/matmunk/DS18B20 #include
// TFT library for 3.5" LCD #include
// SPI library for communication with TFT /****** FUNCTION PROTOTYPES *****/ void setup(void); void loop(void); /***** DEFINITION OF DIGITAL INPUT PINS *****/ const uint8_t DS18B20_DQ_PIN = 4; // Changed the variable name to a valid identifier /****** DEFINITION OF LIBRARIES CLASS INSTANCES*****/ // Create an instance of the DS18B20 class, passing the digital pin number as a parameter DS18B20 ds(DS18B20_DQ_PIN); // Create an instance of the TFT display TFT_eSPI tft = TFT_eSPI(); // Invoke library /****** ALARM THRESHOLDS *****/ #define LOW_ALARM 20 #define HIGH_ALARM 25 void setup(void) { // Initialize serial communication for debugging Serial.begin(9600); // Set the pin mode for the DS18B20 data pin pinMode(DS18B20_DQ_PIN, INPUT); // Initialize the TFT display tft.init(); tft.setRotation(1); // Set the rotation of the display tft.fillScreen(TFT_BLACK); // Clear the screen with black color tft.setTextColor(TFT_WHITE); // Set text color to white tft.setTextSize(2); // Set text size // Define the address of the DS18B20 sensor (replace with your actual sensor address) uint8_t address[] = {40, 250, 31, 218, 4, 0, 0, 52}; // Select the DS18B20 sensor using its address if (ds.select(address)) { // Set the alarm thresholds for the temperature ds.setAlarms(LOW_ALARM, HIGH_ALARM); } else { Serial.println("Device not found!"); } } void loop(void) { // Define the address of the DS18B20 sensor (should match the address used in setup) uint8_t address[] = {40, 250, 31, 218, 4, 0, 0, 52}; // Check if the DS18B20 sensor is selected if (ds.select(address)) { // Get the current temperature float temperature = ds.getTempC(); // Display the temperature on the TFT tft.fillRect(0, 0, 240, 40, TFT_BLACK); // Clear previous temperature display tft.setCursor(10, 10); // Set cursor position tft.print("Temperature: "); tft.print(temperature); tft.println(" C"); // Check if the temperature alarm has been triggered if (ds.hasAlarm()) { // Print a warning message with the current temperature Serial.print("Warning! Temperature is "); Serial.print(temperature); Serial.println(" C"); // Display alarm message on the TFT tft.setTextColor(TFT_RED); // Set text color to red for alarm tft.setCursor(10, 30); // Set cursor position for alarm message tft.print("ALARM! Temp: "); tft.print(temperature); tft.println(" C"); } } else { Serial.println("Device not found!"); } // Wait for 10 seconds before the next loop iteration delay(10000); } /* END CODE */
Mark as private (unlisted)
for 30 minutes
for 6 hours
for 1 day
for 1 week
for 1 month
for 1 year
everlasting (like CCCP)