Nowe mikrokontrolery STM32 z rdzeniem Cortex-M4F
| TechnikaMikrokontrolery z rodziny STM32F4 zawierają szybki, dobrze wyposażony rdzeń, co powoduje, że są chętnie stosowane w coraz bardziej wymagających aplikacjach, w tym urządzeniach z graficznymi interfejsami użytkownika. Ostatnie nowości w rodzinie STM32 są sprzętowo zorientowane na tego typu aplikacje, w artykule przedstawimy także nowe mikrokontrolery zoptymalizowane konstrukcyjnie do stosowania w aplikacjach wymagających dużej liczby interfejsów komunikacyjnych.
Pierwszym w rodzinie STM32 mikrokontrolerem zorientowanym na aplikacje z GUI był STM32F429 i jego młodszy brat STM32F439. Dużą wydajność w aplikacjach graficznych mikrokontrolery te osiągają dzięki wbudowanemu koprocesorowi graficznemu Chrom-Art (DMA2D), który od strony konstrukcyjnej jest wyspecjalizowanym kanałem DMA.
Samodzielnie realizuje on wiele podstawowych funkcji wspomagających wyświetlanie obrazów, w tym: wypełnianie zadanych obszarów kolorem zdefiniowanym przez użytkownika, kopiowanie i przenoszenie fragmentów obrazu, konwersja formatów z bazą w CLUT (Colour Look-Up table) definiowaną przez użytkownika, nakładanie obrazów z opcjonalnym definiowaniem przezroczystości itp. Nie jest to więc od strony funkcjonalnej "karta graficzna" w rozumieniu PC, ale doskonałe narzędzie wspomagające realizację typowych interfejsów graficznych w różnego rodzaju panelach HMI.
Ponieważ propozycja firmy STMicroelectronics została ciepło przyjęta przez rynek, pojawiły się kolejne mutacje mikrokontrolerów przeznaczonych do takich aplikacji: nowe mikrokontrolery są oznaczone symbolami STM32F469 i STM32F479. Ich "lokalizację" w rodzinie STM32F4 pokazano na rysunku 1.
Podstawowe elementy wyposażenia tych mikrokontrolerów są identyczne ze starszymi układami "graficznymi", wyposażono je natomiast w nowatorski - w świecie mikrokontrolerów - interfejs graficzny MIPI DSI (Mobile Industry Processor Interface Display Serial Interface), coraz częściej stosowany w urządzeniach mobilnych. Schemat blokowy tego interfejsu pokazano na rysunku 2.
Jego 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 zaburzeń EM i jednocześnie jest odporny na zakłócenia. Konstruktorzy mikrokontrolerów STM32F469/479 wyposażyli interfejs DSI w konfigurowalny interfejs z jedną lub dwoma liniami danych oraz jedną linią taktującą (synchronizującą). W ten sposób do mikrokontrolera można dołączyć wyświetlacz LCD wyświetlający obraz w standardzie do 720p, odświeżany z częstotliwością do 30 Hz, z wykorzystaniem zaledwie 6 linii GPIO mikrokontrolera.
Prezentowane w artykule mikrokontrolery są obecnie dostępne w ograniczonej liczbie modeli, ale producent deklaruje szybkie poszerzenie oferty, jej docelowy kształt przedstawiono na rysunku 3. Jak widać, gama planowanych modeli jest dość szeroka i cieszy fakt, że firma STMicroelectronics ma na uwadze tanie aplikacje realizowane na 2-warstwowych płytkach drukowanych, gdzie można stosować obudowy LQFP.
Drugą ważną nowością w ofercie STM32F4 - zorientowaną na aplikacje wymagające dużej liczby interfejsów komunikacyjnych - są mikrokontrolery STM32F446, które poza klasycznym wyposażeniem komunikacyjnym, został przez producenta doposażony w trzy dodatkowe, nieco mniej popularne, interfejsy szeregowe:
- HDMI-CEC (Consumer Electronic Control) v 1.4 - jest to 1-przewodowy interfejs szeregowy (rys. 4), służący do przewodowej, lokalnej komunikacji urządzeń AV. Na przykład dzięki interfejsowi HDMI-CEC połączone ze sobą urządzenia mogą być sterowane za pomocą jednego pilota bez konieczności ich konfigurowania. Za pośrednictwem złącza HDMI można sterować maksymalnie 10 podłączonymi urządzeniami, w tym wyświetlaczem. Wiele firm nadaje własne, firmowe nazwy temu interfejsowi, na przykład Philips określa go mianem EasyLink, firma Samsung - Anynet+, Toshiba - CE Link, Panasonic - EZSync, Sony - Bravia Theater Sync itd.
- dwukanałowy interfejs QSPI (Quad-SPI), który jest zaawansowaną wersją interfejsu SPI, charakteryzującą się możliwością szeregowo-równoległego transferu danych za pomocą 1-/2- lub 4-bitowej magistrali danych, synchronizowanej za pomocą sygnału zegarowego. Za pomocą tego interfejsu mikrokontroler może obsługiwać m.in. pamięci NOR-Flash o pojemności do 256 MB z prędkością 90 MB/s w trybie SDR (taktowanie jednym zboczem) lub 120 MB/s w trybie DDR (taktowanie dwoma zboczami). Wbudowany w prezentowane mikrokontrolery interfejs QSPI umożliwia także jednoczesną obsługę dwóch pamięci Flash - jego konfigurację w tym trybie pracy pokazano na rysunku 5.
- 4-kanałowy interfejs SPDIF (IEC-60958, IEC-61937) zintegrowany z dekoderem odbieranych danych, automatyczną detekcją prędkości transmisji (częstotliwości próbkowania sygnału audio) i możliwością obsługi sygnałów Dolby lub DTS w konfiguracji do 5.1 włącznie.
Mikrokontrolery STM32F446 wyposażono w rdzeń Cortex-M4F taktowany sygnałem zegarowym o maksymalnej częstotliwości do 180 MHz (osiąga wtedy wydajność 225 DMIPS/608 Coremark). Dostęp do pamięci Flash jest w tych mikrokontrolerach buforowany przez sprzętowy akcelerator ART, znany z wcześniejszych modeli mikrokontrolerów STM32.
"Graficzne" mikrokontrolery w rodzinie STM32:
|
Warto także wspomnieć o pozostałych elementach wyposażenia mikrokontrolerów STM32F446: wszystkie modele wyposażono w sprzętowe interfejsy kamer CCD (DCMI), wielokanałowe, szybkie przetworniki A/C i C/A o rozdzielczości 12 bitów, standardowym elementem wyposażenia jest także podsystem audio obsługujący protokoły I²S, LSB-/MSB-justified, PCM/DSP, TDM oraz AC'97.
Wspominanie o konfigurowalnych timerach, UART-ach, interfejsach CAN i SDIO oraz konfigurowalnych mechanizmach wspomagania oszczędzania energii - ze względu na ich obecność w większości dostępnych na rynku mikrokontrolerów STM32 - można uznać za niepotrzebne, ale doskonale ilustruje poziom podstawowego wyposażenia współczesnych mikrokontrolerów.
Modyfikacji w mikrokontrolerach STM32F446 uległy także niektóre cechy interfejsów i bloków peryferyjnych znanych z wcześniejszych rozwiązań:
- w interfejsach USB wydzielono linię zasilającą, która ułatwia budowanie energooszczędnych interfejsów z zewnętrznym interfejsem PHY, zaimplementowano ponadto obsługę mechanizmu Link Power Mode (implementującego stan pośredni pomiędzy stanem aktywności i uśpienia urządzenia dołączonego do interfejsu),
- 2 kanały interfejsu I2S przystosowano do pracy dupleksowej,
- jeden kanał interfejsu I2C (FMPI2C) obsługuje - poza standardowymi - także tryb pracy FastMode Plus (częstotliwość taktowania do 1 MHz) oraz SMbus (rev. 2.0). W nowej implementacji usunięto także niedoskonałości znane z wcześniejszych wersji tego interfejsu.
Przykłady przedstawione w artykule pokazują, jak konsekwentnie oferta produkcyjna mikrokontrolerów STM32 jest poszerzana: producent nie zaniedbuje żadnych obszarów ekspansji, regularnie zaspokajając coraz bardziej niszowe potrzeby konstruktorów budujących urządzenia do aplikacji masowych i niszowych, w których obydwu STM32 doskonale się odnajdują.
Piotr Zbysiński