STM32 + Arduino + mbed = STM32Nucleo

Targi embedded 2014 stały się doskonałą okazją dla firmy STMicroelectronics do przedstawienia nowości ze swojej oferty związanej – co oczywiste – z mikrokontrolerami STM32. Są to przede wszystkim: wprowadzenie do sprzedaży nowej podrodziny mikrokontrolerów (STM32L0 – z rdzeniem Cortex-M0+), nowych narzędzi dla programistów (m.in. .NET MF dla STM32, STM32Cube, STM32CubeMX) oraz nowej rodziny zestawów startowych – STM32Nucleo.

Nowe zestawy mają być bytem równoległym w stosunku do niezwykle popularnych DISCOVERY, charakteryzują się następującymi cechami:

– niską ceną (nieco niższą niż DISCOVERY, co wynika m.in. z nieco mniej zaawansowanego wyposażenia),

– mechaniczna i elektryczną zgodnością z systemem Arduino Uno rev. 3,

– wygodną współpracą z internetowym środowiskiem programistycznym mbed.

Na fotografii 1 pokazano wygląd trzech przykładowych zestawów, które otrzymaliśmy od producenta do testów, a są to:

Nucleo-F030R8 (z mikrokontrolerem STM32F030R8T6),

Nucleo-F103RB (z mikrokontrolerem STM32F103RBT6),

Nucleo-F401RE (z mikrokontrolerem STM32F401RET6).

Obecnie do rodziny zestawów STM32Nucleo należą cztery wersje płytek, które są identyczne pod względem budowy i wyposażenia, różnią się między sobą wyłącznie zastosowanymi mikrokontrolerami. Oprócz wymienionych, dostępna jest także płytka Nucleo-L152RE z energooszczędnym mikrokontrolerem STM32L152RET6.

 Fot. 1. Wygląd trzech wybranych zestawów z serii STM32Nucleo

Fot. 1. Wygląd trzech wybranych zestawów z serii STM32Nucleo

 

Płytka z rodziny STM32Nucleo są standardowo wyposażone w programator/debuger ST-LINK/V2-1 (z nową wersją firmware, dzięki której interfejs ułatwia współpracę z internetowym środowiskiem programistycznym mbed), cyfrowo sterowany podsystem dystrybucji zasilania, trzy diody LED (w tym jedna dla aplikacji użytkownika, jedna sygnalizująca włączenie zasilania i jedna dwukolorowa – spełnia rolę sygnalizacyjną w programatorze – została użyta w przykładzie demo pokazanym na filmie), dwa mikroprzełączniki (w tym jeden RESET), złącze miniUSB (do zasilania, komunikacji z mikrokontrolerem aplikacji via wirtualny COM, emulacji urządzenia klasy mass storage oraz komunikacji z programatorem ST-Link). Standardowym wyposażeniem prezentowanych zestawów są także złącza z wyprowadzonymi GPIO, co zapewnia im między innymi kompatybilność z płytkami systemu Arduino (shields). Rozmieszczenie wyprowadzeń zestawu na złączach zgodnych z Arduino pokazano na rysunku 2.

Rys. 2. Rozmieszczenie sygnałów na złączach zgodnych z systemem Arduino Uno rev. 3 

Rys. 2. Rozmieszczenie sygnałów na złączach zgodnych z systemem Arduino Uno rev. 3

Mikrokontrolery w prezentowanych zestawach wykorzystują wewnętrzne generatory taktujące, ale producent przewidział dwa miejsca na PCB umożliwiające montaż rezonatorów kwarcowych (32,768 kHz dla RTC i głównego). Na ewaluacyjnej części płytki zastosowano także zworkę (jumper na dwóch gold-pinach), która umożliwia zmierzenie poboru prądu przez mikrokontroler.

Warto pamiętać, że mikrokontroler programatora realizuje także funkcję wirtualnego COM, którego linie Rx i Tx wyprowadzono na złącze gold-pin płytki programatora, dzięki czemu można je podłączyć do dowolnych linii testowanego mikrokontrolera.

Na zdjęciach prezentowanych zestawów a także przygotowanym przez nas filmie widać, że wyposażono je w drugi, alternatywny wobec Arduino, zestaw złącz, które tworzą system stykowy o nazwie Morpho, mający służyć konstruktorom do stosowania – jak zapowiada producent, w niedalekiej przyszłości – modułów ekspanderów funkcjonalnych, jakie zamierza wdrożyć STMicroelectronics do produkcji. Na rysunku 3 pokazano rozmieszczenie sygnałów na tych złączach.

 Rys. 3. Rozmieszczenie sygnałów na złączach Morpho Headers

Rys. 3. Rozmieszczenie sygnałów na złączach Morpho Headers

Wspomnianym atutem płytek Nucelo jest ich zgodność z internetowym środowiskiem programistycznym narzędziowym mbed (firmy ARM z dostępem do zdalnego kompilatora firmy ARM, www.mbed.org), dla którego są one natywnymi platformami sprzętowymi (rysunek 4). Nie oznacza to jednak, że konstruktorzy przyzwyczajeni do innych środowisk będą musieli zmienić swoje przyzwyczajenia: wbudowany w zestawy programator jest zgodny z popularnym ST-Link/v2, dzięki czemu testowany mikrokontroler można programować z poziomu wszystkich popularnych pakietów narzędziowych, jak na przykład: Keil MDK (mVision), IAR EWARM (Workbench), czy Atollic TrueStudio.

 Rys. 4. Zestawy STM32 Nucleo są natywnymi platformami sprzętowymi internetowego środowiska programistycznego mbed

Rys. 4. Zestawy STM32 Nucleo są natywnymi platformami sprzętowymi internetowego środowiska programistycznego mbed

Prezentowane zestawy są już dostępne w sprzedaży, także w naszym kraju. Ich ceny producent ustalił na poziomie „w okolicy” cen zestawów DISCOVERY, przy czym trzeba pamiętać, że ich wyposażenie w zintegrowane peryferia jest słabsze niż DISCOVERY.

Firma STMicroelectronics zapowiada rychłe wprowadzenie na rynek kolejnych płytek z serii Nucleo, w tym. m.in. modeli: Nucleo-F072RB, Nucleo-F302R8, Nucleo-F334R8 oraz Nucleo-L053R8. Mają być one dostępne w drugim kwartale tego roku, co jest bardzo prawdopodobne, bowiem STMicroelectronics produkuje wszystkie docelowe mikrokontrolery.

Andrzej Gawryluk