Adott egy hőmérő egy nagyon lassú TFT kijelzővel. Van arra mód, hogy csak akkor frissítse a hőfokot ha az adatokban változás van? Jelen állapotában "villognak" a számok delay is csak annyit segít , hogy akkor pl 5 masodpercenként de villog. Esetleg valaki egy konkrét ilyen példát belinkelne?
keyestudio ks0454
DFRobot libs
nano/uno
Köszönöm
Kód: Egész kijelölése
#include "DFRobot_ST7687S_Latch.h"
#include <DHT.h> // include DHT library
#ifdef __AVR__
uint8_t pin_cs = 3, pin_rs = 5, pin_wr = 6, pin_lck = 7;
#else
uint8_t pin_cs = D3, pin_rs = D5, pin_wr = D6, pin_lck = D7;
#endif
#define BLACK 0x0000
#define WHITE 0xFFFF
#define RED 0xF800
#define BLUE 0x001F
#define ORANGE 0xff8000
DFRobot_ST7687S_Latch tft(pin_cs, pin_rs, pin_wr, pin_lck);
#define DHTPIN A0 // DHT11 data pin is connected to Arduino analog pin 1
#define DHTTYPE DHT11 // DHT11 sensor is used
float temp; //Stores temperature value
DHT dht11(DHTPIN, DHTTYPE); // initialize DHT library
void setup(void)
{
Serial.begin(115200);
tft.fillScreen(DISPLAY_BLACK);
tft.setTextSize(1); // text size = 1
tft.setTextColor(DISPLAY_RED); // set text color to green and black background
tft.setCursor(57, 0); // move cursor to position
tft.print("TELEP1");
// initialize DHT11 sensor
dht11.begin();
}
char _buffer[7];
// main loop
void loop()
{
// read temperature
byte temp = dht11.readTemperature();
// print temperature (in °C)
tft.setTextSize(6);
sprintf(_buffer, "%02u", temp);
tft.setTextColor(DISPLAY_WHITE); // set text color to red and black background
tft.setCursor(33, 10);
tft.print(_buffer);
}
// end of code.