• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

arduino wyświetlanie temperatury na wyświetlaczu tft

Object Storage Arubacloud
0 głosów
1,102 wizyt
pytanie zadane 8 września 2015 w Mikrokontrolery przez niezalogowany

Posiadam ten wyświetlacz http://www.adafruit.com/product/2088

na sterowniku ST7735R

i czujnik temperatury i wilgotności dht11

problemem jest to że jak wyświetlam temperature na wyświetlaczu to np jak temperatura się podwyższy to znaki na wyświetlaczu się na siebie nakładają 

tu macie kod tego:

#include <idDHT11.h>
#include <Adafruit_GFX.h>
#include <Adafruit_ST7735.h>
#include <SPI.h>

#define TFT_CS     10
#define TFT_RST    9
#define TFT_DC     8

Adafruit_ST7735 tft = Adafruit_ST7735(TFT_CS,  TFT_DC, TFT_RST);

#define TFT_SCLK 13   
#define TFT_MOSI 11   

int idDHT11pin = 2;
int idDHT11intNumber = 0;

void dht11_wrapper();

idDHT11 DHT11(idDHT11pin,idDHT11intNumber,dht11_wrapper);

void setup() 
{
  tft.initR(INITR_144GREENTAB);

  tft.fillScreen(ST7735_BLACK);
  
  Serial.begin(9600);
}

void dht11_wrapper() {
  DHT11.isrCallback();
}

void loop() 
{
  
  DHT11.acquire();
  while (DHT11.acquiring());
  int result = DHT11.getStatus();
  tft.setCursor(0, 0);
  
  tft.setTextColor(ST7735_RED);
  
  tft.print("Temperatura: ");
  tft.print(DHT11.getCelsius());
  tft.print(" C");
  
  tft.setCursor(0, 10);
  
  tft.setTextColor(ST7735_CYAN);
  
  tft.print("Wilgotnosc:  ");
  tft.print(DHT11.getHumidity());
  tft.print(" %");
  
  delay(500);
}

 

1 odpowiedź

0 głosów
odpowiedź 8 września 2015 przez WWOTEX Mądrala (6,200 p.)

Na początku pętli głównej programu spróbuj dodać:

tft.clear();

Bo widzisz monitor tft musi wiedzieć że trzeba skasować poprzedni napis. wydaje mi się że tło też skasuje ale możesz pod wyczyszczeniem ekranu ustawić tło na nowo.

komentarz 8 września 2015 przez niezalogowany
Wiesz ja po prostu wypełniałem cały ekran na czarno potem to się rysowało na nowo ale efektem ubocznym było to że ekran migota jak szalony!
komentarz 8 września 2015 przez WWOTEX Mądrala (6,200 p.)

ale już nie nachodzą na siebie litery? to malowanie ekranu musisz napisać zaraz po tft.clear();

tft.clear();
tft.fillScreen(ST7735_BLACK);

 

Podobne pytania

0 głosów
1 odpowiedź 2,601 wizyt
0 głosów
1 odpowiedź 437 wizyt
0 głosów
0 odpowiedzi 107 wizyt

92,579 zapytań

141,429 odpowiedzi

319,657 komentarzy

61,962 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...