• 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

VPS Starter Arubacloud
0 głosów
1,081 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,526 wizyt
0 głosów
1 odpowiedź 432 wizyt
0 głosów
0 odpowiedzi 103 wizyt

92,452 zapytań

141,262 odpowiedzi

319,085 komentarzy

61,854 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

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 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!

...