Nietypowy wy艣wietlacz ST7789P3 284×73 pix – test i charakterystyka
Wprowadzenie
Zakupi艂em ostatnio ciekawy wy艣wietlacz w rozs膮dnej cenie:
W 艣wiecie mikrokontroler贸w i wy艣wietlaczy TFT czasami natrafiamy na pere艂ki, kt贸re wyr贸偶niaj膮 si臋 nietypowymi parametrami. Takim w艂a艣nie egzemplarzem jest wy艣wietlacz ST7789P3 – sterownik znany, ale w zupe艂nie niestandardowym wykonaniu. W tym artykule om贸wi臋 ten ciekawy wy艣wietlacz i poka偶臋, jak go uruchomi膰 z ESP32.
Parametry techniczne
| Sterownik | ST7789P3 |
| Rozdzielczo艣膰 | 284 × 73 pikseli |
| Interfejs | SPI |
| Kolory | 16-bit (65K kolor贸w) |
| Wymiary aktywne | ~61.0 × 15.7 mm |
| Pod艣wietlenie | LED, 3.3V |
| Napi臋cie zasilania | 3.3V |
Uwaga: Rozdzielczo艣膰 284×73 pikseli jest nietypowa dla sterownik贸w ST7789, kt贸re zazwyczaj obs艂uguj膮 standardowe rozdzielczo艣ci jak 240×240 czy 135×240. Ten "w膮ski i szeroki" format sprawia, 偶e wy艣wietlacz idealnie nadaje si臋 do aplikacji wymagaj膮cych pask贸w stanu, wska藕nik贸w czy minimalistycznych interfejs贸w.
Pod艂膮czenie do ESP32
Konfiguracja po艂膮cze艅 z mikrokontrolerem ESP32 przedstawia si臋 nast臋puj膮co:
#define TFT_CS 15 // Chip Select #define TFT_RST 4 // Reset #define TFT_DC 2 // Data/Command #define TFT_MOSI 23 // MOSI (SDA) #define TFT_SCLK 18 // Clock (SCK) #define TFT_BACKLIGHT 5 // Pod艣wietlenie
Schemat po艂膮cze艅:
VCC → 3.3V ESP32
GND → GND ESP32
CS → GPIO15
RST → GPIO4
DC → GPIO2
SDA → GPIO23
SCK → GPIO18
BL → GPIO5
Kluczowa r贸偶nica: pod艣wietlenie aktywne stanem LOW
UWAGA! To najwa偶niejsza informacja dla os贸b maj膮cych problemy z uruchomieniem tego wy艣wietlacza:
pinMode(TFT_BACKLIGHT, OUTPUT); digitalWrite(TFT_BACKLIGHT, LOW); // AKTYWACJA pod艣wietlenia
W przeciwie艅stwie do wi臋kszo艣ci standardowych wy艣wietlaczy ST7789, gdzie pod艣wietlenie aktywowane jest stanem HIGH, w modelu ST7789P3 pod艣wietlenie wymaga stanu LOW. To cz臋sty pow贸d, dla kt贸rego wiele os贸b s膮dzi, 偶e ma uszkodzony egzemplarz – pod艣wietlenie po prostu nie 艣wieci, mimo poprawnego pod艂膮czenia.
Inicjalizacja w Arduino IDE
Do obs艂ugi wy艣wietlacza wykorzystali艣my bibliotek臋 Adafruit_ST7789 z nast臋puj膮c膮 konfiguracj膮:
#include <Adafruit_GFX.h> #include <Adafruit_ST7789.h> #define TFT_WIDTH 284 #define TFT_HEIGHT 76 Adafruit_ST7789 tft = Adafruit_ST7789(TFT_CS, TFT_DC, TFT_RST); void setup() { pinMode(TFT_BACKLIGHT, OUTPUT); digitalWrite(TFT_BACKLIGHT, LOW); // W艂膮cz pod艣wietlenie tft.init(TFT_HEIGHT, TFT_WIDTH); // Uwaga: wysoko艣膰, szeroko艣膰 tft.setRotation(1); // Obr贸t 90° tft.fillScreen(ST77XX_BLACK); }
Wa偶ne: W funkcji init() podajemy najpierw wysoko艣膰 (76), a potem szeroko艣膰 (284), a dopiero setRotation(1) zapewnia prawid艂ow膮 orientacj臋 poziom膮.
Teraz niestety b臋dziemy mieli obraz w negatywie. Musimy zmieni膰 go na pozytyw. To znaczy, w sekcji Viod Setup () musimy doda膰:
tft.invertDisplay(false);
Wyzwania i rozwi膮zania
Podczas konfiguracji napotka艂em kilka wyzwa艅:
Nietypowa rozdzielczo艣膰 - wymaga艂a r臋cznego zdefiniowania wymiar贸w
Orientacja - konieczno艣膰 u偶ycia
setRotation(1)dla pozycji poziomejPod艣wietlenie - odwrotna polaryzacja ni偶 w standardowych modelach
Optymalizacja animacji - konieczno艣膰 minimalizowania mrugania poprzez cz臋艣ciowe od艣wie偶anie
Przyk艂adowe zastosowania
Dzi臋ki nietypowym proporcjom, wy艣wietlacz idealnie nadaje si臋 do:
Pask贸w stanu i wska藕nik贸w progresu
Miniaturowych konsoli do debugowania
Wy艣wietlaczy parametr贸w w projektach audio a szczeg贸lnie jako wy艣wietlacze do zasilaczy
Interface'贸w dla czujnik贸w 艣rodowiskowych
Projekt贸w wearable tech (ze wzgl臋du na w膮ski format)
Podsumowanie
ST7789P3 w rozdzielczo艣ci 284×73 to ciekawa alternatywa dla standardowych wy艣wietlaczy TFT. Pomimo pocz膮tkowych wyzwa艅 konfiguracyjnych, oferuje unikalne mo偶liwo艣ci dla niszowych aplikacji. Kluczowe dla sukcesu jest pami臋tanie o odwr贸conej polaryzacji pod艣wietlenia - bez tej wiedzy uruchomienie wy艣wietlacza mo偶e by膰 frustruj膮cym do艣wiadczeniem.
Czy warto? Dla projekt贸w wymagaj膮cych kompaktowego, poziomego wy艣wietlacza - zdecydowanie tak! To dow贸d na to, 偶e nawet znane sterowniki mog膮 kry膰 w sobie nietypowe implementacje wartexploration. Do tego ta cena!
Napisa艂em prosty program demonstruj膮cy podstawowe mo偶liwo艣ci wy艣wietlacza a za razem testuj膮cy go.
Pliki do pobrania: Pe艂ny kod demo dost臋pny jest w repozytorium projektu. Pami臋taj o autorze i wspomnij o nim gdy b臋dziesz rozpowszechnia艂 ten program i projekt :) Dzi臋kuj臋.
Test i demo wy艣wietlacza ST7789P3 -link






