Nowy zestaw z serii Discovery: STM32F3Discovery
W artykule przedstawiamy kolejny zestaw z serii Discovery (co w nomenklaturze STMicroelectronics oznacza: niska cena + bogate wyposażenie), tym razem przeznaczony dla mikrokontrolerów z rodziny STM32F3: STM32F3Discovery.
Na początku przypomnimy podstawowe fakty dotyczące mikrokontrolerów STM32F3: podrodzina STM32F3 jest mocniejszą obliczeniowo i lepiej wyposażoną sprzętowo alternatywą dla popularnych mikrokontrolerów STM32F1, przy czym zachowuje z nimi kompatybilność mechaniczną i elektryczną, zapewniając jednocześnie dużą wydajność obliczeniową (dzięki rdzeniowi Cortex-M4F, takiemu samemu jak w rodzinie STM32F4, ma on wbudowaną jednostki MAC i FPU, obsługuje instrukcje wspomagające obliczenia DSP) i bogate wyposażenie wewnętrzne. Technologia zastosowana do produkcji mikrokontrolerów STM32F3 umożliwia taktowanie CPU sygnałem o maksymalnej częstotliwości wynoszącej 72 MHz, co pozwala uzyskać wydajność obliczeniową (przy wykonywaniu programu z pamięci Flash) 90 DMIPS. Maksymalna planowana obecnie przez producenta pojemność pamięci Flash wynosi 256 kB, a SRAM do 48 kB. Mikrokontrolery STM32F3 są standardowo wyposażane m.in. w sprzętowy kontroler klawiatur bezstykowych (CT touch sense), kontroler parzystości SRAM, sprzętową ochronę dostępu do jej zawartości (za pomocą jednorazowego bezpiecznika), a także jednostkę MPU (Memory Protection Unit).
Rys. 1. Schematy blokowe mikrokontrolerów z rodziny STM32F3 (stan na październik 2012)
Podrodzina STM32F3 składa się z sześciu różniących się wewnętrznym wyposażeniem linii mikrokontrolerów, których najważniejsze cechy zestawiono w tabeli 1, a schematy blokowe poszczególnych podrodzin przedstawiono na rysunku 1.
Tab. 1. Zestawienie cech wybranych elementów wyposażenia mikrokontrolerów
Cecha | STM32F302 | STM32F303 | STM32F313 |
Rdzeń | Cortex-M4 + FPU | Cortex-M4 + FPU | Cortex-M4 + FPU |
Taktowanie max. | 72MHz | 72MHz | 72MHz |
Flash max. | 256kB | 256kB | 256kB |
SRAM max. | 32kB | 48kB | 48kB |
CCM-SRAM | 8kB | 8kB | 8kB |
ADC SAR | 2x12b/5MHz | 4x12b/5MHz | 4x12b/5MHz |
ADC Σ-Δ | – | – | – |
Inne peryferia analogowe | 4x Comp 2x PGA 1x DAC |
7x Comp 4x PGA 2x DAC |
7x Comp 2x DAC |
MC timer | 1/144MHz | 2/144MHz | 2/144MHz |
Cecha | STM32F372 | STM32F373 | STM32F383 |
Rdzeń | Cortex-M4 + FPU | Cortex-M4 + FPU | Cortex-M4 + FPU |
Taktowanie max. | 72MHz | 72MHz | 72MHz |
Flash max. | 256kB | 256kB | 256kB |
SRAM max. | 32kB | 32kB | 32kB |
CCM-SRAM | – | – | – |
ADC SAR | 1x12b/1MHz | 1x12b/1MHz | 1x12b/1MHz |
ADC Σ-Δ | 1x16b | 3x16b | 3x16b |
Inne peryferia analogowe |
1x Comp 1x DAC |
2x Comp 3x DAC |
2x Comp 3x DAC |
MC timer | – | – | – |
Peryferia zastosowane w mikrokontrolerach STM32F3 należą do nowej generacji, przykładowo:
- interfejs I2C obsługuje peryferia zgodne ze standardem Fm+, umożliwiając transmisję danych z prędkością do 1 Mb/s,
- interfejs SPI obsługuje ramki danych o długości konfigurowanej przez użytkownika w zakresie od 4 do 16 bitów,
- linie GPIO wyposażono w kompletny tor analogowy dla interfejsu bezstykowego CT touch sensing,
- linie GPIO są obsługiwane z poziomu magistrali AHB,
- zegar RTC zlicza czas w kodzie BCD,
- w niektórych mikrokontrolerach zastosowano timery o rozdzielczości pomiarowej 0,4 ns.
We wszystkich peryferiach usunięto błędy znane z mikrokontrolerów starszych generacji, dzięki czemu korzystanie – na przykład z I2C – będzie znacznie łatwiejsze niż dotychczas.
Ważną nowością zastosowaną w mikrokontrolerach STM32F3 są zaawansowane, 16-bitowe przetworniki A/C (sigma-delta, próbkowanie do ok. 50 kHz) oraz szybkie (1 lub 5 MHz, w zależności od typu układu) przetworniki SAR o rozdzielczości 12 bitów.
Fot. 2. Wygląd zestawu STM32F3Discovery
Firma STMicroelectronics z myślą o mikrokontrolerach STM32F3 przygotowała tani zestaw startowy STM32F3Discovery (fotografia 2), który należy do popularnej rodziny narzędzi „startowych” o wspólnej nazwie Discovery. Zestaw charakteryzuje się niską ceną (dostępny w KAMAMI.pl za ok. 69 PLN brutto), wbudowanym programatorem-debuggerem z USB (zgodny z ST-Link/v2), wyposażono go w mikrokontroler STM32F303VCT6 w obudowie LQFP100 z 256 kB pamięci Flash i 48 kB RAM. Standardowym elementem wyposażenia zestawu są dwa czujniki MEMS: 3-osiowy żyroskop L3GD20 oraz 3-osiowy akcelerometr zintegrowany z elektronicznym kompasem (LSM303DLHC). Użytkownik może wykorzystać w swoich aplikacjach 8 LED (dwie dodatkowe należą do wyposażenia systemowego zestawu) oraz jeden przycisk (+ przycisk ręcznego zerowania). Użytkownik ma także do dyspozycji złącze miniUSB (B), co pozwala wykorzystać zestaw do eksperymentów jako urządzenie klasy device. Tradycyjnie wszystkie wolne linie GPIO wyprowadzono na złącza gold-pin o rastrze 2,54 mm, do których można wygodnie dołączyć różnego rodzaju układy peryferyjne.
Producent oferuje konstruktorom także dwa inne zestawy dla mikrokontrolerów STM32F3 – STM32373C-EVAL oraz STM32303C-EVAL – przedstawimy je w osobnych artykułach.