Nowa rodzina STM32C0, dedykowana płytka NUCLEO-C031C6
Nowa rodzina STM32C0
Niedawno ST Microelectronics zaprezentowało nową rodzinę mikrokontrolerów STM32 – STM32C0.
Razem z nim otrzymaliśmy nowe NUCLEO-C031C6. Oczywiście jest do kupienia u nas w sklepie 🙂

Jest to dosyć ciekawa nowość, bo jego kampania promocyjna (no może nie wprost) mówi o tym, że jest to „zabójca 8-bitowców”. Nawet hasło reklamowe ze strony ST Microelectronics brzmi „Twój następny 8-bitowiec jest 32-bitowy”
???? Ciekawe, co? Pytanie dlaczego?
- Po pierwsze low-cost. Mają to być najtańsze mikrokontrolery z całej gamy STM32. Bo czym jak właśnie nie ceną mają najbardziej konkurować z 8-bitowymi układami?
- Pojedyncze zasilanie. Kto projektował PCB dla jakiegokolwiek STM32 ten wie, o czym mowa. Nie raz układy te miały 3 albo więcej pinów zasilania i tak samo masy. Na każdej ściance mikrokontrolera. Koszmar projektanta… Teraz ma być jedna para i tyle.
- Rdzeń. Powinno tutaj wystarczyć stwierdzenie, że „mamy ARMa”, ale to nie jest dla każdego przewagą ???? Cortex-M0+ z taktowaniem 48MHz to już jest coś. Pamięci w NUCLEO-C031C6 skromne, bo tylko 32kB Flash i 12kB RAM. Dzisiaj już to chyba nie robi wrażenia nawet na 8-bitowcach. ST obiecuje dużo, jeśli chodzi o energooszczędność. Zobaczymy jak to wypadnie. Są jedynie podstawowe tryby low-powerowe.
- Peryferia. Rodzina C0 z założenia ma być „uboga” peryferyjnie. Wziąłem w cudzysłów, bo ta ubogość jest tylko względem innych, większych STM32. Porównując do 8-bitowców jest podobnie, a może nieco lepiej? Z podstawowych interfejsów. mamy tutaj jedynie GPIO, I2C, SPI, UART i ADC. Totalne minimum, które również mamy w większości 8-bitowców. Przewagi nad 8-bit? Chociażby DMA z DMAMUX. 3-kanałowe, ale zawsze to
DMA! Mamy oczywiście dedykowany RTC na pokładzie, który działa w trybach obniżonego poboru mocy.ADC może mieć aż 19 kanałów zewnętrznych. No i NVIC, który dostarczany jest przez rdzeń ARMowy. To też jest jakby nie patrzeć sporo. - Kompatybilne pinowo z STM32G0. Jeśli projektowałeś coś pod G0, a nie używasz jego większych zasobów – możesz obniżyć koszty tylko wymieniając mikrokontroler. Co myślisz o tej nowej rodzinie? Nada się jako zamiennik dla 8-bitowców? Widzę ciekawy potencjał na naukę programowania STM32 „na rejestrach”. Skoro jest ich tutaj mało i są prostsze, to może to byłoby to?
Zasoby STM32C0
Rodzina C0 ma być mała, prosta i tania. Z tego powodu nie mamy zbyt wielkich możliwości wyposażenia.

Na koniec marca 2023 do dyspozycji mamy dwie linie mikrokontrolerów:
- STM32C011
- STM32C031
Rozpiętość dostępnych obudów jest dosyć spora. Możemy skorzystać już z 8-pinowego SO8. Nie jest to najmniejsza obudowa na rynku, ale jest wciąż mała i łatwa do obsadzenia na płytce PCB.
Na drugim krańcu obudów mamy LQFP48 powszechnie znane z innych rodzin mikrokontrolerów. ST Microelectronics chwali się, że rodzina C0 jest pinowo kompatybilna z rodziną G0. Wielki plus za to.

Pamięci Flash i RAM też nie powalają. Maksymalnie 32kB Flash i 12kB RAM. Minimum to 16kB Flash i 6 kB RAM.
Oczywiście jest to niewiele na tle pozostałych STM32. Porównując z malutkimi 8-bitowcami będzie na ogół lepiej. Musimy pamiętać, do czego zostały stworzone STM32C0!
Czy to koniec 8-bitowców?
Czy te cechy zadecydują o śmierci 8-bitowców? Zobaczymy. Jest całkiem duża szansa na to, że projektanci będą się przenosili na nowsze rozwiązanie. Czy w całości? Raczej nie 🙂
8-bitowce nadal będą używane. Będzie ich coraz mniejszy udział, ale nie zerowy.
Warto sprawdzić najnowszą rodzinę STM32C0. Zrobisz to szybko i wygodnie na dedykowanym zestawie ewaluacyjnym NUCLEO-C031C6. Znajdziesz go w ofercie naszego sklepu.
Tylko dlaczego jest tylko Nucleo-64? Skoro to ma być STM32 entry level to powinna być też mała i prosta płytka Nucleo-32 z układem STM32C011 (QFP20).
Ale Entry-Level nie oznacza, że będzie to najmniejsza możliwa. Wiele osób będzie startowało na HALu, a przy takim maluchu jak C011 zaraz będzie ciasno na Flashu 🙂 Poza tym jest zestawik z C011: https://dev-6578.msalamon.pl/produkt/stm32c0116-dk-zestaw-uruchomieniowy-z-mikrokontrolerem-stm32c011f6u6/
Nie dramatyzujmy. 32KB Flash to dość sporo. Właśnie teraz skompilowałem swoją aplikację – wcale nie taką prostą, z użyciem HAL – i zajęła 25KB (Release).