STM32DISCOVERY z LCD-TFT - nowy zestaw
| TechnikaPrzedstawiamy nowe narzędzie dla fanów "graficznych" mikrokontrolerów STM32 - wyposażony w smartfonowy wyświetlacz LCD-TFT zestaw STM32F469I-DISCO.
Sprawna obsługa kolorowych wyświetlaczy LCD o dużej liczbie wyświetlanych pikseli wymaga zastosowania specjalnie wyposażonych, wydajnych mikrokontrolerów. Integralnym elementem "specjalnego" wyposażenia jest interfejs komunikacyjny, odpowiadający za szybki transport danych pomiędzy kontrolerem LCD i mikrokontrolerem. Dotychczas dużą popularnością w aplikacjach graficznych cieszyły się interfejsy równoległe, których zaletą była prostota obsługi i duża prędkość transferu danych, a poważną wadą duża liczba pinów niezbędnych do poprawnej pracy interfejsu.
Nowoczesna alternatywą dla interfejsów równoległych jest synchroniczny interfejs szeregowy MIPI-DSI (Mobile Industry Processor Interface Display Serial Interface), który został wykorzystany do komunikacji z kontrolerem LCD-TFT w zestawie STM32F469IDISCO (jego wygląd przedstawiono na fot. 1), który jest bohaterem artykułu.
Podstawowe elementy wyposażenia użytego w zestawie mikrokontrolera STM32F469NIH6 są identyczne jak w starszych mikrokontrolerach "graficznych" z rodziny STM32F4. Ważną nowością jest interfejs komunikacyjny MIPI-DSI, którego zaletą jest możliwość szeregowego transportu dużej ilości danych w krótkim czasie z wykorzystaniem - w warstwie fizycznej - interfejsu różnicowego, który minimalizuje poziom emitowanych zakłóceń EMC i jednocześnie jest odporny na zakłócenia zewnętrzne.
Konstruktorzy mikrokontrolerów STM32F469/479 wyposażyli DSI w konfigurowalny interfejs fizyczny z jedną lub dwoma liniami danych oraz jedną linią taktującą (synchronizującą), co jest zgodne ze standardem - interfejs MIPI-DSI składa się z dwóch różnicowych linii danych oraz jednej - także różnicowej - linii sygnału zegarowego (rys. 2).
Zastosowany w zestawie STM32469I-DISCO mikrokontroler STM32F469-NIH6 wyposażono w 2 MB pamięci Flash, 324 kB RAM, rdzeń Cortex-M4F i akcelerator graficzny Chrom-ART (rys. 3). Rdzeń mikrokontrolera może być taktowany sygnałem zegarowym o częstotliwości do 180 MHz, który zapewnia prędkość wykonywania programu do 225 DMIPS.
Na rysunku 3 pokazano trzy możliwe w mikrokontrolerach STM32F469 konfiguracje interfejsów służących do komunikacji mikrokontrolera z wyświetlaczem LCD. Jak widać, najprostsze jest użycie interfejsu DSI, co - jak pokazano powyżej - minimalizuje liczbę pinów wykorzystanych do transmisji danych i poziom zakłóceń oraz zmniejsza liczbę elementów niezbędnych do realizacji aplikacji - to wszystko przy zachowaniu możliwości wyświetlania obrazów wideo bez utraty jakości.
Mikrokontroler w prezentowanym zestawie obsługuje 4-calowy wyświetlacz o wymiarach matrycy 800×480 pikseli, na którym jest naklejony pojemnościowy touch-panel. Schemat elektryczny ilustrujący sposób dołączenia LCD do mikrokontrolera pokazano na rysunku 4.
Poza wyświetlaczem standardowym wyposażeniem zestawu STM32F469IDISCO są trzy mikrofony MEMS z wyjściami cyfrowymi, przetwornik DAC audio, a także pamięci: SDRAM 4M×32 bity oraz NOR Flash z interfejsem qSPI o pojemności 128 Mb. Mniej spektakularnymi, lecz przydatnymi w praktyce, elementami wyposażenia prezentowanego zestawu są: złącze dla kart microSD, 4 LED dla aplikacji użytkownika oraz złącze microUSB OTG FS.
Zestaw wyposażono w złącza zgodne z systemem Arduino UNO rev. 3 (fot. 5), co zapewnia jego zgodność także z coraz popularniejszymi płytkami NUCLEO. Standardowo, podobnie do innych zestawów z serii DISCOVERY, także STM32F469I-DISCO ma wbudowany programator-debugger zgodny z ST-Link/v2-1 (komunikuje się z mikrokontrolerem via SWD).
Zastosowana wersja interfejsu umożliwia pracę - jednocześnie z realizacją funkcji programatora-debuggera - jako konwerter USB/ UART (vCOM) oraz urządzenie USB klasy MassStorage. ST-Link/v2-1 jest ponadto zgodny ze standardem mbed, zestaw można więc wygodnie programować także bezpośrednio z sieciowego środowiska mbed.org firmy ARM.
Prezentowany zestaw - jak widać - jest bogato wyposażony w elementy peryferyjne, co wymaga użycia mikrokontrolera o dużej liczbie pinów. Producent zastosował w STM32F469I-DSCO układy w obudowach BGA216, które oferują 161 linii GPIO. Pośród nich 157 jest przystosowanych do zmiany stanów z częstotliwością do 90 MHz, a aż 159 linii może współpracować z logiką zasilaną napięciem 5 V.
Piotr Zbysiński