Aktualna oferta mikrokontrolerów STM32 obejmuje praktycznie wszystkie standardowe obszary aplikacyjne, co pozwala producentowi na opracowywanie modeli mikrokontrolerów zoptymalizowanych pod względem wydajności i wyposażenia pod kątem potrzeb aplikacji nieco bardziej specyficznych.
Przykładem takiego układu jest STM32F446 (jego schemat blokowy pokazano na rysunku 1), który poza klasycznym wyposażeniem komunikacyjnym, zostal 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 (rysunek 2), 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 (QuadSPI - rysunek 3), który jest zaawansowaną wersją interfejsu SPI, charakteryzująca 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 4.
- 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. Schemat blokowy tego interfejsu pokazano na rysunku 5.
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 I²S przystosowano do pracy dupleksowej.
- Jeden kanał interfejsu I²C (FMPI²C) 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 znan z wcześniejszych wersji tego interfejsu.
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.
Warto także wspomnieć o pozostałych elementach wyposażenia prezentowanych układów, które doskonale ilustrują możliwości współczesnych mikrokontrolerów: wszystkie wersje F446 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żenie 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 - trąci banałem (choć możliwości tych elementów peryferyjnych są trudne do przecenienia).
Na tym kończę prezentację nowych mikrokontrolerów z oferty STMicroelectronics, za miesiąc kolejne!
Andrzej Gawryluk