Project HOMEControl Deel 2 Het hoofdkantoor

Gebruik het hoofdkwartier een ESP 32 dit WLAN Developer Board én blauw tand ondersteund. Het display wordt gebruikt van 1.8 inch TFT display met 128 x 160 punten die afbeelding heeft opgenomen, is er bovendien een SD-kaart lezer. Ten slotte wil ik de roterende encoder voer met teller komt op het verzoekschrift. In de volgende bijdragen die wij dit hoofdkwartier wordt uitgebreid met een menu met set-up en functies. Het gebouw kan worden gebruikt natuurlijk ook, dat als uitgangspunt kan dienen voor andere applicaties met met een SD-kaart, input en nodig zijn.

Ik heb besloten aan het verbinden van het hoofdkwartier en niet om stevig Steckbrett. Dit heeft als voordeel dat een hogere stabiliteit en verwijst naar het hoofdkwartier later invoegen in een zaak.

De zetel dan klaar kijken dus:

Lijst van de gebruikte componenten:

Bedrading plan:

Opgelet!

Belangrijke verandering nu de verbinding van de SW Rotary encoders houdt verband met GPIO14 en de verbinding met SW GPIO15 nu. De verandering was nodig, want GPIO2 GPIO0 en mag niet worden gebruikt.

Waardering plan is de bedrading van het scherm zijn een kant van de sandwich, dat is de inscriptie de Pin voor ESP32 wordt weerspiegeld.

De volgende in het begin van het programma. Op het scherm het logo is vermeld en de SD-kaart lezer geïnitialiseerd. Het is een erkend of SD kaart zit in de lezer en bijgevolg het resultaat aangegeven.

Het programma dient twee bibliotheken:

De GFX Adafruit bibliotheek


Adafruit ST7735 en de bibliotheek


 

 

# include < adafruit_gfx.h > //Core graphics library
# include < adafruit_st7735.h > //Hardware-specific bibliotheek
//Integration lettertype van bibliotheken
# include < Fonts/FreeSans9pt7b.h>; //Font voor logo
# include < Fonts/FreeSansBold9pt7b.h>; //Font voor logo

# include < spi.h >< SPI.h>;
# include < sd.h >< SD.h>;

Van de gebruikte //definition pinnen
# define TFT_CS 5 //Chip REGELSELECTIE voor TFT display
# define TFT_RST 22 De rij voor //reset TFT
# define TFT_DC 21 De rij voor //data/command TFT

# define SD_CS 16 //Chip REGELSELECTIE voor SD kaart


//tft aanleg
TFT Adafruit_ST7735 adafruit_st7735 = (TFT_CS, TFT_RST TFT_DC,);

//Function aan de weergave van een tekst op het scherm in een bepaalde kleur
De weergave van de tekst nietig (char * tekst, kleur uint16_t) {
tft.setTextColor (kleur);
tft.setTextWrap (true); //automatic regelafbreking is geactiveerd
tft.print (tekst);
}

//Function aan de weergave van een tekst in een punt (x, y) uitgezet op
//to het scherm. De kleur is gekozen
De weergave van de tekst nietig (uint16_t x, uint16_t Y, char * tekst, kleur uint16_t) {
tft.setCursor (x, y);
De weergave van de tekst (tekst, kleur);
}

//Function aan de weergave van het logo helemaal boven in het scherm
Leegte weddenschap display u () {
//Fill achtergrond
tft.fillRect (ST7735_YELLOW 0.0,127.30,);
//Frame teken
tft.drawRect (ST7735_BLUE 1.1,125.28,);
//Font voor het woord vet naar huis
tft.setFont (FreeSansBold9pt7b &);
//Position cursor
tft.setCursor (7.20);
//Spend tekst in het zwart
tft.setTextColor (ST7735_BLACK);
tft.print ("thuis");
//Font controle voor het woord niet dik
tft.setFont (FreeSans9pt7b &);
//Spend tekst in het rood
tft.setTextColor (ST7735_RED);
tft.print ("Control");
//Put terug op standaard lettertype
tft.setFont (nul);
}

valstrik leegte () {
Serial.begin (115200);
//tft initialiseren en zwarte achtergrond
tft.initR (INITR_BLACKTAB);
tft.fillScreen (ST7735_BLACK);
//You vast register
Display u weddenschappen ();
SD kaart //initialize en wijst op resultaat
if (! SD.begin (SD_CS)) {
De weergave van de tekst (20.60, "Keine SD-kaart", ST7735_YELLOW);
} else {
De weergave van de tekst (20.60 "SD-kaart oké," ST7735_GREEN);
}

}

Lus leegte () {
}
< /sd.h >

 

DisplaysEsp-32Projekte für fortgeschritteneSmart home

2 Kommentare

Volker

Volker

Hallo,

vielen Dank für die Anleitung.
Könnt ihr bitte die Grafiken so einstellen, dass die Schrift lesbar ist.
Das wäre sehr hilfreich.
Danke :)
Volker

Frank

Frank

Hallo Herr Lechner,
können Sie bitte den Verdrahtungsplan so darstellen das man die Pinnummern lesen kann,
mein ESP32 hat eine etwas andere Belegung ,deshalb kann ich mich nicht nach den Verbindungslinien
richten.
mit freundlichen Grüßen
Frank

Einen Kommentar hinterlassen

Alle Kommentare werden vor der Veröffentlichung moderiert

Aanbevolen blog berichten

  1. Installeer ESP32 nu van de raad van bestuur
  2. Lüftersteuerung Raspberry Pi
  3. Arduino IDE - Programmieren für Einsteiger - Teil 1
  4. ESP32 - das Multitalent
  5. OTA - Over the Air - ESP Programmeren via Wi-Fi