|

Instrukcja uruchomienia wyświetlacza TFT ILI9341 z dotykiem na ESP32

Wyświetlacz TFT ILI9341 z dotykiem XPT2046 to popularne rozwiązanie dla projektów opartych na ESP32, STM32 oraz innych mikrokontrolerach, umożliwiające wygodne wyświetlanie informacji i interakcję z użytkownikiem. Dzięki dużej dostępności i stosunkowo prostemu podłączeniu, ekran ten jest często wybierany przez hobbystów oraz profesjonalistów do tworzenia interaktywnych interfejsów. W tym artykule przedstawimy krok po kroku, jak podłączyć wyświetlacz do ESP32, skonfigurować niezbędne biblioteki oraz uruchomić testowe programy, aby upewnić się, że zarówno obraz, jak i funkcja dotyku działają poprawnie.

Wyświetlacze dostępne w naszej ofercie:
🛒 Wyświetlacz dotykowy TFT LCD 2,8″ ST7789V 240x320px z czytnikiem SD SPI
🛒 Wyświetlacz dotykowy TFT LCD 2,4″ 240x320px z czytnikiem SD SPI ST7789
🛒 Wyświetlacz dotykowy TFT LCD 2,8″ 240x320px z czytnikiem SD SPI
🛒 Wyświetlacz dotykowy TFT LCD 3,2″ 240x320px z czytnikiem SD SPI ILI9341
🛒 Wyświetlacz dotykowy TFT LCD 2,4″ 240x320px z czytnikiem SD SPI ILI9341

Podłączenie wyświetlacza do ESP32

Podłącz wyświetlacz TFT do ESP32 zgodnie z poniższą tabelą:

Wyświetlacz TFT ILI9341

PIN TFTPIN ESP32
VCC3,3 V
GNDGND
CS15
RESET4
DC2
SDI(MOSI)23
SCK18
LED3,3 V
SDO(MISO)21

Dotyk XPT2046 (wbudowany w wyświetlacz)

PIN DotykuPIN ESP32
T_CS5
T_DIN (MOSI)23
T_DO (MISO)21
T_CLK (SCK)18

Instalacja biblioteki

Otwórz Arduino IDE, przejdź do Biblioteki (Library Manager) i wyszukaj oraz zainstaluj:

TFT_eSPI (do obsługi wyświetlacza i dotyku XPT2046)

Konfiguracja biblioteki TFT_eSPI

Musimy dostosować plik User_Setup.h, aby działał zarówno wyświetlacz, jak i dotyk.

Znajdź plik User_Setup.h w katalogu biblioteki TFT_eSPI:
C:\Users(nazwa_użytkownika)\Documents\Arduino\libraries\TFT_eSPI\User_Setup.h

Otwórz go w edytorze tekstu i znajdź poniższe linie.
Upewnij się, że są odkomentowane 

#define ILI9341_DRIVER

Oraz zakomentowane pozostałe linjki z tej sekcji

Następnie odszukujemy “For NodeMCU”, i komentujemy wszystkie poniższe linie definicji.

aby uzyskać taką konfigurację

Następnie odszukujemy sekcję “ESP32 SETUP” i w tym miejscu ustawiamy przypisania pinów zgodnie z tabelą przedstawioną na początku. Piny takie jak TFT_CS, TFT_DC, TFT_RST oraz TOUCH_CS możemy dowolnie przypisać do innych GPIO, pod warunkiem, że odpowiednio podłączymy je do ESP32.

Docelowo powinieneś uzyskać konfigurację jak na załączonym zdjęciu.

Następnie, po wykonaniu tych kroków, zapisujemy zmiany w pliku User_Setup.h i zamykamy go. Dzięki temu konfiguracja zostanie zastosowana i będzie gotowa do użycia w Arduino IDE.

Jeśli masz inny sterownik, np. ST7789, konfiguracja wygląda bardzo podobnie.

W takim przypadku zamiast #define ILI9341_DRIVER 

odkomentuj odpowiednią linię dla swojego sterownika,
#define ST7789_DRIVER

Aby kolory wyświetlały się poprawnie, należy usunąć // przed następującymi liniami:
#define TFT_INVERSION_OFF
#define TFT_RGB_ORDER TFT_BGR // Colour order Blue-Green-Red

Dalsza konfiguracja pozostaje taka sama – należy odpowiednio przypisać piny oraz skonfigurować ustawienia zgodnie z dalszymi krokami instrukcji.

Uruchomienie testowego programu wyświetlacza

Aby sprawdzić działanie wyświetlacza, w Arduino IDE wybierz:

File → Examples → TFT_eSPI → 320×240 → TFT_Meters
Wgraj kod i sprawdź, czy na ekranie pojawi się animacja wskaźników.

Testowanie dotyku

Aby sprawdzić, czy dotyk działa poprawnie, wgraj przykładowy kod testowy, który możesz pobrać z poniższego linka:

Po wgraniu kodu na ESP32, otwórz Monitor portu szeregowego w Arduino IDE i sprawdź, czy wyświetlane są komunikaty potwierdzające wykrycie naciśnięcia przycisku.

Na początku programu wyświetlacz przeprowadzi kalibrację dotyku – na ekranie pojawi się instrukcja, aby nacisnąć każdy róg ekranu raz, zgodnie z wyświetlanymi punktami. Jest to niezbędne, aby poprawnie skalibrować dotyk.

Po zakończeniu kalibracji w konsoli powinny pojawiać się komunikaty w zależności od wciśniętego przycisku na ekranie dotykowym, np.

13:53:15.835 -> Red btn hit
13:53:15.835 -> 0
13:53:16.195 -> 0
13:53:16.600 -> 0
13:53:20.365 -> Green btn hit
13:53:20.365 -> 1
13:53:20.410 -> 1

„Red btn hit” – przycisk czerwony został naciśnięty, wartość 0.
„Green btn hit” – przycisk zielony został naciśnięty, wartość 1.

Wartość 0 lub 1 zmienia się w zależności od stanu przycisku, co oznacza, że ekran dotykowy poprawnie wykrywa dotyk.

Dodatkowo, przy dotknięciu ekranu w danym miejscu powinny pojawiać się czarne kropki, wskazujące lokalizację dotyku. Jest to wizualne potwierdzenie, że ekran reaguje na dotyk i poprawnie śledzi pozycję.

Jeśli komunikaty pojawiają się zgodnie z dotykanymi przyciskami i czarne kropki rysują się we właściwych miejscach, oznacza to, że dotyk działa poprawnie i jest gotowy do dalszego wykorzystania w programie. 🚀

Podsumowanie

Po wykonaniu wszystkich kroków opisanych w tej instrukcji Twój wyświetlacz TFT ILI9341 z dotykiem XPT2046 powinien działać poprawnie w połączeniu z ESP32. Dzięki odpowiedniej konfiguracji biblioteki TFT_eSPI oraz prawidłowemu podłączeniu pinów możesz teraz wykorzystywać ekran do różnych zastosowań, takich jak wizualizacja danych, sterowanie urządzeniami czy tworzenie interaktywnych interfejsów użytkownika.

Jeśli napotkałeś jakiekolwiek problemy, sprawdź poprawność podłączenia i konfiguracji w pliku User_Setup.h. Teraz możesz przejść do dalszego rozwijania swojego projektu i dostosowywania ekranu do własnych potrzeb. Powodzenia! 🚀

Wyświetlacze TFT z dotykiem dostępne w naszej ofercie:

Więcej treści na temat wyświetlaczy TFT, która może Cię zainteresować:


Prezentowaną w artykule elektronikę znajdziesz oczywiście w naszym sklepie 👉 sklep.msalamon.pl 👈Zapraszamy również na nasze social media, gdzie na bieżąco informujemy o nowych produktach oraz o najciekawszych promocjach 😎👇


Podobne wpisy

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *