STM32F072/042: Cortex-M0 + USB (z LPM i BCD) + CAN + HDMI CEC

Nowe w ofercie mikrokontrolery z rdzeniem Cortex-M0 nie są aż tak nowe jak się może na pierwszy rzut oka wydawać, co wyjaśniamy w artykule. Wprowadzone na rynek w pierwszych tygodniach 2014 roku, piętnaście typów mikrokontrolerów z rodziny STM32F0, jest kolejnym etapem umacniania rynkowej pozycji 32-bitowych mikrokontrolerów, produkowanych przez STMicroelectronics.

 

Graf ilustrujący podstawowe cechy mikrokontrolerów STM32F0x2

 

 

 

 

Charakterystyczną cechą wyposażenia nowych mikrokontrolerów, dzięki czemu odróżniają się od innych układów STM32, są wbudowane trzy interfejsy komunikacyjne:
– USB FS 2.0 device, których zaletami są: obsługa protokołów BCD (Battery Charger Detection) oraz LPM (Link Power Management), które upraszczają budowę urządzeń energooszczędnych oraz inteligentnych systemów zasilających bazujących na USB. Równie ważną zaletą jest także brak konieczności stosowania specjalnych, precyzyjnych rezonatorów kwarcowych do taktowania cyfrowej części interfejsu USB. Dużą dokładność sygnału zegarowego zapewnia mechanizm synchronizowania wewnętrznego generatora za pomocą tokenów SOF (Start of Frame), które są standardowym elementem ramek przesyłanych przez interfejs USB. Blok zapewniający synchronizację nazywa się Clock Recovery System (CRS), jego konstruktorzy przewidzieli kilka sposobów „dostrajania” wewnętrznego generatora, spośród których użytkownik może wybrać najlepszy w konkretnej sytuacji aplikacyjnej.

Na rysunku 1 pokazano schemat blokowy interfejsu USB z podziałem na domeny taktowania.

 

 

Rys. 1. Schemat blokowy interfejsu USB device stosowanego w mikrokontrolerach STM32F0x2

Rys. 1. Schemat blokowy interfejsu USB device stosowanego w mikrokontrolerach STM32F0x2

 

– CAN 2.0A/B (active) z możliwością transmisji danych z prędkością do 1 Mb/s z ramkami wyposażonymi w 11- lub 29-bitowe identyfikatory. Interfejs wyposażono w 3 mailboksy w torze nadawczym, dwa kanały FIFO w torze odbiorczym, a także skalowalne filtry w 14 bankach.
– HDMI CEC (Consumer Electronic Control), będący 1-przewodowym kanałem komunikacyjnym interfejsów HDMI (Sup. 1). Schemat blokowy tego interfejsu pokazano na rysunku 2.

 

Rys. 2. Schemat blokowy interfejsu CAN stosowanego w mikrokontrolerach STM32F0x2

Rys. 2. Schemat blokowy interfejsu CEC stosowanego w mikrokontrolerach STM32F0x2

 

W ramach podrodziny STM32F0x2 producent oferuje dwie grupy układów: STM32F042 i STM32F072. Wyposażenie wewnętrzne układów STM32F042 jest nieco uboższe niż ma to miejsce w przypadku STM32F072, dotyczy to nie tylko liczby wbudowanych kanałów pojemnościowych, ale także maksymalnych pojemności pamięci, liczby linii GPIO, liczby timerów 16-bitowych, liczby dostępnych kanałów DMA itp. Warto zwrócić uwagę, że możliwości funkcjonalne poszczególnych bloków peryferyjnych są w obydwu podrodzinach takie same, dzięki czemu konstruktor dobierając odpowiedni układ do aplikacji może skupić się na liczbie potrzebnych bloków peryferyjnych, a nie ich funkcjonalności. Wszystkie mikrokontrolery STM32F0x2 wyposażono w 16-bitowe rdzenie Cortex-M0, które są taktowane z maksymalną częstotliwością do 48 MHz.

 

Rys. 3. Schemat blokowy bloku komparatora analogowego stosowanego w mikrokontrolerach STM32F0x2

Rys. 3. Schemat blokowy bloku komparatora analogowego stosowanego w mikrokontrolerach STM32F0x2

 

Interesującym elementem wyposażenia mikrokontrolerów STM32F072 jest komparator analogowy, którego budowę pokazano na rysunku 3. Składa się on z dwóch komparatorów, których wejścia i wyjścia można dość elastycznie dołączać do linii GPIO oraz zdefiniowanych przez producenta sygnałów wewnętrznych.
Mikrokontrolery STM32F0x2 – poza wcześniej wymienionymi – wyposażono w dużą liczbę popularnych interfejsów komunikacyjnych: SPI, I2C, I2S, UART-y. Liczba interfejsów jest różna dla mikrokontrolerów F042 i F072 (odpowiednio: po 1 szt. CAN, CEC, I2C, USB, po 2 szt. I2S, SPI i USART oraz po 1 szt.CAN, CEC, USB, po 2 szt. I2C, I2S, SPI i 4 szt. USART). Interfejs I2C obsługuje protokoły SMbus i PMbus, jest ponadto przystosowany do pracy w trybie FastMode+, w którym maksymalna prędkość transmisji wynosi 1 Mb/s.
Wyposażenie prezentowanych mikrokontrolerów obejmuje także sensory pojemnościowe wbudowane w komórki linii GPIO (TSC – Touch Sensor Controller), dzięki którym można budować bezstykowe klawiatury, przełączniki i nastawniki analogowe. Mikrokontrolery z podrodziny STM32F042 wyposażono w 15 linii z sensorami pojemnościowymi, a mikrokontrolery STM32F072 wyposażono w 24 takich linii.
Przemyślana konstrukcja prezentowanych mikrokontrolerów jest widoczna w specyfikacjach linii GPIO: są one przystosowane do współpracy z układami zasilanymi napięciem do 5 V, producent wydzielił także osobną linię zasilająca o nazwie VDDIO2 (niezależna od linii zasilania przetwornika A/C oraz rdzenia i peryferii cyfrowych), która służy do zasilania wydzielonych 8 (w F042) lub 19 (w F072) linii GPIO napięciem o wartości z przedziału 1,65…3,6 V, niezależnym od pozostałych linii zasilających. Zakres dopuszczalnych temperatur pracy wynosi od -40 do +85oC, a zakres napięć zasilających – od 2 do 3,6 V.

 

Fot. 4. Wygląd płytki zestawu 32F072BDISCOVERY

Fot. 4. Wygląd płytki zestawu 32F072BDISCOVERY

 

Chcąc ułatwić konstruktorom poznanie nowych mikrokontrolerów, producent wprowadził na rynek tani zestaw startowy o nazwie 32F072BDISCOVERY (fotografia 4), który wyposażono w elementy pozwalające zweryfikować działanie interfejsu USB device, zastosowano także 3-osiowy żyroskopowy sensor MEMS L3GD20, 4 diody LED, mikroprzełącznik oraz suwakowy nastawnik pojemnościowy. Zestaw wyposażono w złącze ekspandera RF EEPROM (np. ANT7-M24LR-A), które umożliwia dołączenie do testowanego mikrokontrolera dwuportowej (wyposażonej w interfejs I2C i bezstykowy RFID) pamięci EEPROM z serii M24LR.
Klasycznym elementem wyposażenia zestawu DISCOVERY jest programator-debugger ST-Link/v2, umożliwiający programowanie pamięci Flash testowanego mikrokontrolera oraz monitorowanie jego pracy – wszystko za pośrednictwem 2-liniowego interfejsu SWD. W ten sposób konstruktor otrzymuje kompletną platformę ewaluacyjną, za pomocą której może od razu rozpocząć prace badawcze.
Piotr Zbysiński

Newsy

Autor: STM32eu