Nowa rodzina tanich zestawów startowych z mikrokontrolerami STM32
| TechnikaHasło "Arduino" jest z całą pewnością znane wszystkim elektronikom zajmującym się współczesnymi mikrokontrolerami. W szybkim zdobyciu popularności tej platformie nie przeszkodziło amatorskie pochodzenie, co więcej, popularność systemu Arduino zachęciła także dużych producentów podzespołów do udostępniania własnych rozwiązań, za pomocą których promują produkowane przez siebie mikrokontrolery lub podzespoły peryferyjne. Do grona takich firm dołączyła firma STMicroelectronics, wprowadzając do sprzedaży opisane w artykule zestawy STM32NUCLEO i ekspandery dla nich.
Konstruktorzy zestawów NUCLEO zadanie mieli proste: polegało na opracowaniu prostego pod względem budowy, zgodnego ze standardem Arduino i przy tym taniego zestawu uruchomieniowego. Różnorodność wydajności obliczeniowej i możliwości oferowanych użytkownikom przy jednoczesnym obniżeniu kosztów produkcji producent uzyskał dzięki zastosowaniu mikrokontrolerów pochodzących z różnych podrodzin (wyposażonych w różne rdzenie, od Cortex-M0 do Cortex-M4F), ale montowanych w jednakowych obudowach (LQFP64).
Zabieg ten spowodował, że płytki drukowane zestawów STM32NUCLEO (fot. 1) wyglądają tak samo, niezależnie od typu zastosowanego mikrokontrolera. Ujednolicenie sprzętu przez producenta ułatwia użytkownikom - w razie takiej potrzeby - wymianę mikrokontrolera w testowanej aplikacji na inny typ, co jest o tyle istotne, że dostępnych jest obecnie aż 9 typów zestawów NUCLEO z mikrokontrolerami pochodzącymi ze wszystkich rodzin STM32 (zestawiono je w tabeli 1).
Atrakcyjność prezentowanych zestawów zwiększa fakt, że są one od strony mechanicznej i elektrycznej zgodne z systemem Arduino R3, dodatkowo niektóre modele są obsługiwane jako natywne platformy przez internetowe środowisko programistyczne mbed.
Wyposażenie pokładowe prezentowanych zestawów jest dość skromne - są one praktycznie pozbawione zewnętrznych elementów peryferyjnych, nie licząc jednego przycisku i jednej LED do dyspozycji użytkownika - ale wyposażono je w programator-debugger ST-Link/V2-1 o funkcjonalności identycznej z programatoramidebuggerami stosowanymi w nowych modelach Discovery. Interfejs ST-Link/V2-1 jest przystosowany do pracy jako jedno z trzech urządzeń USB: programator-debugger JTAG, pamięć masowa (USB Mass Storage) lub wirtualny port COM (vCOM).
Ponieważ złącze systemowe Arduino R3 zawiera niewiele linii sygnałowych - w przeciwieństwie do mikrokontrolerów stosowanych w zestawach STM32NUCLEO, które wyposażono w dużą liczbę linii GPIO - producent zastosował alternatywny zestaw złączy o nawie Morpho (widoczne na fot. 1 dwurzędowe męskie gold-piny). Zapewniają one większą elastyczność niż Arduino R3, ale dotychczas nie są dostępne ekspandery zgodne z tym standardem.
Prezentowane zestawy są przystosowane do zasilania z wielu różnych źródeł, w tym m.in. z interfejsu USB programatora, a także z zewnętrznego źródła o napięciu 7...12 VDC.
Nowością w ofercie producenta są także ekspandery zgodne z Arduino, opracowane przez STMicroelectronics, które są dostosowane do współpracy z zestawami STM32NUCLEO.
Pierwszy z nich - o nazwie X-NUCLEO-NFC01A1 (fot. 2) - wyposażono w nieulotną pamięć EEPROM-NFC z serii M24SR (zgodną z NFC Forum Tag Type 4). Pamięć ta jest wyposażona w dwa interfejsy komunikacyjne: standardowy, przewodowy interfejs I²C oraz bezprzewodowy interfejs radiowy, zgodny ze standardem NFC (Near Field Communication), który pracuje w paśmie radiowym 13,56 MHz. Ekspander wyposażono w antenę przystosowana do komunikacji RFID wykonaną na PCB, która zapewnia wymianę danych pomiędzy pamięcią M24SR i smartfonem lub czytnikiem NFC/RFID oraz trzy diody LED do wykorzystania w aplikacji użytkownika.
Drugą nowość oznaczono symbolem X-NUCLEO-IDB04A1 (fot. 3), jest to moduł interfejsu Bluetooth 4.0, który komunikuje się z otoczeniem za pomocą synchronicznego interfejsu szeregowego SPI. Tor radiowy obsługuje nowoczesny procesor Bluetooth firmy STMicroelectronics o nazwie BlueNRG.
Prezentowany moduł wyposażono także w szybką pamięć EEPROM z SPI - M95640. Producent przygotował framework dla modułu X-NUCLEOIDB04A1, który jest dostępny w ramach pakietu STM32CubeF4 (dla mikrokontrolerów STM32F4), dostępne są także przykładowe aplikacje demonstrujące możliwości nowoczesnych interfejsów Bluetooth.
Kolejną "ekspanderową" nowością są zestawy oznaczone symbolem X-NUCLEO-IHM01A1 (fot. 4), które wyposażono w inteligentny sterownik bipolarnych silników krokowych L6474. Jest to układ przystosowany do sterowania silnikami zasilanymi napięciami od 8 do 45 V i o maksymalnym prądzie fazy do 3 ARMS.
Napięcia wyjściowe sterowników mocy są monitorowane za pomocą 4 LED, dwie kolejne diody świecące sygnalizują: poprawne zasilanie interfejsu oraz wystąpienie błędu (np. zbyt wysoką temperaturę struktury sterownika, nieprawidłowy kod polecenia, utratę kroku, zbyt niskie napięcie zasilania itp.). Sterownik L6474 wyposażono w interfejs SPI, za pomocą którego zewnętrzny mikrokontroler może konfigurować parametry jego pracy. Sposób dołączenia linii I/O oraz SPI sterownika do wyprowadzeń mikrokontrolera użytkownik może w pewnym zakresie samodzielnie zmieniać, co wymaga przelutowania zwor SMD na płytce zestawu.
Producent zapowiada wprowadzenie do sprzedaży także ekspandera X-NUCLEO-IKP01A (fot. 5), którego sercem jest optyczny sensor gestów i odległości VL6180 (z oferty STMicroelectronics). Przykładowa aplikacja dla tego ekspandera, przygotowana na zestaw NUCLEO-F401RE, umożliwia wykorzystanie go do pomiaru odległości ręki lub innego obiektu od sensora, alternatywnie także do pomiaru natężenia oświetlenia. Wyniki pomiarów są wyświetlane na 4-pozycyjnym, 7-segmentowym wyświetlaczu LED. Aplikacja demonstracyjna potrafitakże wykrywać i obsługiwać proste gesty.
Dla zestawów przedstawionych w artykule firma STMicroelectronics przygotowała wsparcie programowe w postaci np. bibliotek HAL (Hardware Abstraction Layer), bibliotek do obsługi FAT, USB, TCP/IP, przykładowych aplikacji demonstrujących możliwości układów, a także aplikacji pakietu konfigurującego STM32CubeMX. Udostępnione oprogramowanie ułatwia konstruktorom zainteresowanym podjęciem samodzielnych prób szybkie i pozbawione podstawowych problemów rozpoczęcie pracy z mikrokontrolerami STM32.
Piotr Zbysiński