Ofensywa STM32F
| TechnikaKilka tygodni temu poruszenie wśród konstruktorów wywołała informacja o poszerzeniu rodziny STM32 o mikrokontrolery wyposażone w rdzeń Cortex-M0 (rodzina STM32F0), teraz jest już pewne, że po wakacjach do produkcji trafią mikrokontrolery należące do kolejnej podrodziny, oznaczonej symbolem STM32F3.
Mikrokontrolery STM32F0 są piątą w ofercie STMicroelectronics podrodziną układów z rdzeniem Cortex-M (Cortex-M0), która uzupełnia doskonale już znane na rynku serie STM32F1, STM32F2, STM32F4 i STM32L1 - z których wszystkie wyposażono w rdzeń Cortex-M3.
Rodzina STM32F0 składa się z trzech linii mikrokontrolerów:
- STM32F050 - wyposażonych - poza standardowymi peryferiami (rysunek 1) - także w 12-bitowy przetwornik A/C o czasie próbkowania 1 ms,
- STM32F051 - wyposażonych dodatkowo także w 12-bitowy przetwornik C/A i komparatory analogowe,
- STM32F052 - charakteryzujących się wbudowanym - obok przetworników A/C, C/A i komparatorów analogowych - interfejsem USB FS.
Rdzeń zastosowany w mikrokontrolerach STM32F0 jest przystosowany do taktowania sygnałem zegarowym o częstotliwości do 48 MHz. Osiąga on wydajność ok. 38 DMIPS - 0,9 DMIPS/MHz, co umożliwiło uzyskanie 68 punktów w testach CoreMark.
Standardowym wyposażeniem mikrokontrolerów z rodziny STM32F0 jest 5-kanałowy kontroler DMA, szybki - do 1 Mb/s - interfejs I²C (z wysokoprądowymi liniami SDA/SCL), interfejs SPI z obsługą CEC-HDMI i elastycznie ustawianą długością ramki danych (od 4 do 16 bitów @24 Mb/s), szybki USART (do 6 Mb/s), programowalne 16-/32-bitowe timery z możliwością generacji 3-fazowego przebiegu PWM i 17 liniami capture/compare, a także wygodny w obsłudze wbudowany RTC z kalendarzem zliczającym w kodzie BCD.
W skład standardowego wyposażenia nowych mikrokontrolerów wchodzą także szybkie linie GPIO, łącznie do 55, w tym do 36 z tolerancją 5V, z możliwością obsługi nastawników pojemnościowych (także suwaków i "obrotowych") i sprzętowy kontroler PMSM (Permanent Magnet Synchronous Motor). Aż 16 linii GPIO jest obsługiwanych z poziomu magistrali AHB, dzięki czemu ich obsługa jest niezwykle szybka.
Interfejs USART może współpracować z transceiverami IrDA, przy czym można go wykorzystać do bezpośredniej obsługi kodów zdalnego sterowania, a także wybudzania rdzenia z trybu STOP. W zależności od typu mikrokontrolera, użytkownik ma do dyspozycji od 8 do 64 kB Flash (z perspektywą na 256 kB), 4 lub 8 kB SRAM (w planach do 20 kB) i obudowy o liczbie pinów od 32 (UFQFPN32), przez 48 (LQFP48), do 64 (LQFP64).
Producent zapowiada wdrożenia także wersji w obudowie z 20 wyprowadzeniami (8 i 16 kB Flash) oraz 100 wyprowadzeniami (128 kB Flash). Co ważne, producent deklaruje kompatybilność pin-to-pin mikrokontrolerów STM32F0 z mikrokontrolerami z pozostałych rodzin w takich samych obudowach.
Nowe mikrokontrolery wyposażono w interfejs do programowania-debugowania o nazwie SWD, który występuje także w starszych mikrokontrolerach STM32, nie wbudowano w nie JTAG-a. Interfejs SWD jest obsługiwany m.in. przez programatory USB: J-Link oraz ST-Link/V2 (a także jego ścisły, krajowy odpowiednik: ZL30PRGv2).
Zastosowanie w mikrokontrolerach STM32F0 stosunkowo niewielkiego rdzenia pozwoliło uzyskać niewielki pobór prądu, który producent deklaruje na poziomie ok. 5,3 mA w trybie Stop, poniżej 2 mA w trybie Standby i ok. 190 mA/MHz podczas normalnej pracy (dla samego rdzenia). Napięcie zasilania prezentowanych układów powinno się mieścić w zakresie 2,0...3,6 VDC, dopuszczalne zakresy temperatur pracy to: -40...+85°C lub -40...+105°C.
Producent dużo uwagi skierował na zapewnienie bezpieczeństwa aplikacji, w których pracują mikrokontrolery STM32F0, co przejawia się m.in. wyposażeniem pamięci SRAM w sprzętowy kontroler parzystości, kontroler CRC dla pamięci Flash, dwa watchdogi i system monitorowania poprawności taktowania z automatycznym przełączaniem na wewnętrzne źródło sygnału zegarowego.
Firma STMicroelectronics przygotowała dla użytkowników chcących szybko i wygodnie poznać możliwości nowych mikrokontrolerów zestawy z serii Discovery (STM32F0DISCOVERY - fot. 2), które charakteryzują się niską ceną i przygotowanym przez producenta zestawem przykładowych aplikacji (jest ich obecnie 21 dla 3 różnych IDE).
Dla użytkowników o większych możliwościach finansowych producent przygotował pełnowymiarowy zestaw ewaluacyjny o bogatym wyposażeniu oznaczony symbolem STM320518-EVAL (fot. 3). Obydwa zestawy wyposażono w mikrokontrolery STM32F051R8T6 (Flash o pojemności 64 kB i SRAM o pojemności 8 kB, obudowa LQFP64), w obydwu zintegrowano programatory-debuggery JTAG/SWD z interfejsem USB, które są zgodne ze standardem ST-Linkv2. Zastosowanie tego programatora zapewnia łatwą integrację obydwu zestawów z większością popularnych środowisk programistycznych.
Więcej nowości
Drugą tegoroczną nowością - dziś jeszcze w zapowiedziach - są mikrokontrolery STM32F3 produkowane w technologii o wymiarze charakterystycznym 180 nm, których "sercem" jest rdzeń Cortex-M4F (z wbudowaną FPU) znany z rodziny STM32F4. Rdzeń tych mikrokontrolerów jest przystosowany do taktowania sygnałem zegarowym o maksymalnej częstotliwości do 72 MHz, czym przypominają mikrokontrolery z serii STM32F1 i - co interesujące - są z nimi kompatybilne mechanicznie i elektrycznie.
Podobne jest także ich wyposażenie wewnętrzne, przy czym większość interfejsów konstrukcyjnie odświeżono (zlikwidowano m.in. słynny w STM32 problem z I²C, a w interfejsie SPI można programować długość ramki danych), zastosowano także nowe peryferia analogowe, m.in.: analogowy wzmacniacz PGA, 12-bitowe szybkie przetworniki A/C i C/A (do 5 Ms/s), niektóre mikrokontrolery STM32F3 wyposażono także w 16-bitowy przetwornik A/C typu S-D, timer o rozdzielczości poniżej 1 ns oraz umożliwiające łatwą implementację nastawników i klawiatur dotykowych (typu CT).
Nowe timery AMC (Advanced Motor Control) zastosowane w mikrokontrolerach STM32F3 mogą być taktowane sygnałami zegarowymi o częstotliwości 144 MHz, możliwe jest także - za pomocą bezpiecznika OTP - nieodwracalne odłączenie interfejsu JTAG i unieruchomienie bootloadera, dzięki czemu program i dane przechowywane w bateryjnie podtrzymywanym SRAM są chronione przed skopiowaniem.
Plany na przyszłość
Z nieoficjalnych materiałów informacyjnych wynika, że mikrokontrolery STM32F3 będą wyposażone w pamięć Flash o pojemności do 256 kB, SRAM o łącznej pojemności do 40 kB, a niektóre modele (STM32F30x) także w 8 kB szybkiej pamięci CCM-SRAM (Core Coupled Memory), z której program może być wykonywany z prędkością równoważną taktowaniu CPU sygnałem o częstotliwości 90 MHz.
Duża szybkość taktowania pamięci CCM-SRAM wynika z tego, że dołączono ją bezpośrednio do magistrali I-bus rdzenia Cortex-M4F. Z tego krótkiego przeglądu nowości wyraźnie wynika, że tegoroczne wdrożenia firmy STMicroelectronics otwierają konstruktorom nowe możliwości aplikacyjne, z których część była dla mikrokontrolerów do niedawna niedostępna. Czekamy na ciąg dalszy.
Piotr Zbysiński