Idea przyświecająca konstruktorom zestawów NUCLEO była prosta: opracowali prosty pod względem budowy, zgodny z rynkowym standardem Arduino, dzięki wyposażeniu w programator-debugger - kompletny a przy tym tani zestaw uruchomieniowy. Minimalizację kosztów produkcji producent uzyskał dzięki zastosowaniu mikrokontrolerów pochodzących z różnych podrodzin (wyposażonych w różne rdzenie) i jednakowych obudowach - LQFP64.
Zabieg ten spowodował, że płytki drukowane zestawów STM32NUCLEO wyglądają tak samo, niezależnie od typu zastosowanego mikrokontrolera, a ich identyfikację umożliwiają naklejki umieszczone jak pokazano na fotografii 1. Ujednolicenie sprzętu przez producenta ułatwia użytkownikom - w razie takiej potrzeby - wymianę mikrokontrolera na inny typ, co jest o tyle istotne, że pośród dostępnych obecnie 9 typów zestawów NUCLEO (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 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 programatorami-debuggerami stosowanymi w nowych modelach Discovery. Interfejs STLink/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ł w alternatywny zestaw złącz o nawie Morpho (rysunek 2). Złącza te zapewniają 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ą pierwsze - opracowane przez STMicroelectronics - ekspandery zgodne z Arduino, które są dostosowane do współpracy z zestawami STM32NUCLEO.
Pierwszy z nich - o nazwie X-NUCLEONFC01A1 (fotografia 3) - wyposażono w nieulotną pamięć EEPROM-NFC z serii M24SR (zgodną z NFC Forum Tag Type 4). Pamięć ta jest także wyposażona w standardowy, przewodowy interfejs I²C. Komunikacja z pamięcią jest możliwa przez obydwa interfejsy komunikacyjne, radiowy tor NFC (Near Field Communication) pracuje w pasmie radiowym 13,56 MHz. Ekspander wyposażono w antenę RFID wykonaną na PCB, która zapewnia komunikację pomiędzy pamięcią M24SR i smartfonem lub czytnikiem NFC/RFID oraz trzy diody LED do wykorzystania w aplikacji użytkownika.
Drugi z nowych shieldów oznaczono symbolem X-NUCLEO-IDB04A1 (fotografia 4), 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-NUCLEO-IDB04A1, 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.
Ostatnią "ekspanderową" nowością są zestawy oznaczone symbolem X-NUCLEOIHM01A1 (fotografia 5), 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 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.
Dla wszystkich 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 (przykład domyślnej konfiguracji mikrokontrolera STM32F401 z płytki NUCLEO pokazano na rysunku 6). Udostępnione oprogramowanie ułatwi konstruktorom zainteresowanym podjęciem samodzielnych prób rozpoczęcie pracy, w wielu przypadkach będzie wymagało jedynie niewielkich modyfikacji.
O kolejnych nowościach poinformujemy wkrótce.
Piotr Zbysiński, EP