STM32L0: Cortex-M0+ w rodzinie STM32

Podobne dokumenty
STM32 Butterfly. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

Nucleo F334R8 Właściwości i praca z zestawem

LITEcompLPC1114. Zestaw ewaluacyjny z mikrokontrolerem LPC1114 (Cortex-M0) Sponsorzy:

Instytut Teleinformatyki

ADuCino 360. Zestaw uruchomieniowy dla mikrokontrolerów ADuCM360/361

ZL25ARM. Płyta bazowa dla modułów diparm z mikrokontrolerami STR912. [rdzeń ARM966E-S]

DOKUMENTACJA PROJEKTU

ZL30ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F103

LITEcomp. Zestaw uruchomieniowy z mikrokontrolerem ST7FLITE19

Wykład 4. Przegląd mikrokontrolerów 16-bit: - PIC24 - dspic - MSP430

Wstęp Architektura... 13

Zestaw uruchomieniowy z mikrokontrolerem LPC1114 i wbudowanym programatorem ISP

ZL29ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

ZL5PIC. Zestaw uruchomieniowy dla mikrokontrolerów PIC16F887

LABORATORIUM - ELEKTRONIKA Układy mikroprocesorowe cz.2

ZL28ARM. Zestaw uruchomieniowy dla mikrokontrolerów AT91SAM7XC

AVREVB1. Zestaw uruchomieniowy dla mikrokontrolerów AVR. Zestawy uruchomieniowe

1. Wprowadzenie Programowanie mikrokontrolerów Sprzęt i oprogramowanie... 33

Wykład 2. Przegląd mikrokontrolerów 8-bit: -AVR -PIC

ZL10PLD. Moduł dippld z układem XC3S200

Programator-debugger JTAG/SWIM dla mikrokontrolerów STM32 i STM8

System on Chip na miarę S P R Z Ę T

Jednym z najlepszych sposobów poznawania nowego typu mikrokontrolera

ZL15AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega32

KAmduino UNO. Płytka rozwojowa z mikrokontrolerem ATmega328P, kompatybilna z Arduino UNO

KA-NUCLEO-F411CE. Płytka rozwojowa z mikrokontrolerem STM32F411CE

ZL27ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F103

32 bity to już standard!

Zestaw Startowy EvB. Więcej informacji na stronie:

SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701. SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701.

Płytka ewaluacyjna z ATmega16/ATmega32 ARE0021/ARE0024

dokument DOK wersja 1.0

ZL2ARM easyarm zestaw uruchomieniowy dla mikrokontrolerów LPC2104/5/6 (rdzeń ARM7TDMI-S)

ZL8AVR. Płyta bazowa dla modułów dipavr

KAmduino UNO. Rev Źródło:

Szkolenia specjalistyczne

Laboratorium Procesorów Sygnałowych

ZL4PIC. Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC

Projekt MARM. Dokumentacja projektu. Łukasz Wolniak. Stacja pogodowa

Tab. 1. Zestawienie najważniejszych parametrów wybranych mikrokontrolerów z rodziny LPC2100, które można zastosować w zestawie ZL3ARM.

ZL2ARM easyarm zestaw uruchomieniowy dla mikrokontrolerów LPC2104/5/6 (rdzeń ARM7TDMI-S)

1.2. Architektura rdzenia ARM Cortex-M3...16

ZL16AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega8/48/88/168

o Instalacja środowiska programistycznego (18) o Blink (18) o Zasilanie (21) o Złącza zasilania (22) o Wejścia analogowe (22) o Złącza cyfrowe (22)

ZL9AVR. Płyta bazowa dla modułów ZL7AVR (ATmega128) i ZL1ETH (RTL8019)

FREEboard. Zestaw startowy z mikrokontrolerem z rodziny Freescale KINETIS L (Cortex-M0+) i sensorami MEMS 7 DoF

MOD STM32 explorem0 z STM32F051C8T6. sklep.modulowo.pl akademia.modulowo.pl zestawy.modulowo.pl app.modulowo.pl blog.modulowo.

Politechnika Białostocka

ZL15AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega32

ZL2AVR. Zestaw uruchomieniowy z mikrokontrolerem ATmega8

Kurs programowania mikrokontrolerów ARM z rodziny Cortex-M3

Moduł prototypowy.. Leon Instruments. wersja 1.0

ZL19PRG. Programator USB dla układów PLD firmy Altera

ZL6ARM Zestaw uruchomieniowy dla mikrokontrolerów LPC213x. Tab. 1. Zestawienie najważniejszych parametrów wybranych mikrokontrolerów z rodziny LPC213x

Kurs Elektroniki. Część 5 - Mikrokontrolery. 1/26

ZL9ARM płytka bazowa dla modułów diparm z mikrokontrolerami LPC213x/214x

Maluchy na fali. HC08) na asembler ST7. W momencie wprowadzania rodziny ST7 możliwość bezpośredniego

Kod produktu: MP01611

Arduino dla początkujących. Kolejny krok Autor: Simon Monk. Spis treści

MMstm32F103Vx. Instrukcja uŝytkownika REV 1.1. Many ideas one solution

2. Architektura mikrokontrolerów PIC16F8x... 13

Wykład 2. Mikrokontrolery z rdzeniami ARM

Moduł prototypowy X3-DIL64 z procesorem ATxmega128A3U-AU

Altera MAX10: nowa generacja FPGA i jej nowe możliwości

NXP ma nowe ARM-y. BlueStreak: co i jak

ZL4PIC uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC (v.1.0) Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC

ZL5ARM. Zestaw uruchomieniowy dla mikrokontrolerów LPC2119/2129 (rdzeń ARM7TMDI-S) Kompatybilność z zestawem MCB2100 firmy Keil

Mikrokontrolery STMicroelectronics przegląd

STM32 dla początkujących (i nie tylko)

Elektronika samochodowa (Kod: TS1C )

ZL4PIC. Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC

Porty GPIO w mikrokontrolerach STM32F3

ARMputer, część 1 AVT 922

MIKROKONTROLERY I MIKROPROCESORY

Płyta uruchomieniowa EBX51

ZL6PLD zestaw uruchomieniowy dla układów FPGA z rodziny Spartan 3 firmy Xilinx

Płytka uruchomieniowa AVR oparta o układ ATMega16/ATMega32. Instrukcja Obsługi. SKN Chip Kacper Cyrocki Page 1

WPROWADZENIE Mikrosterownik mikrokontrolery

Kod produktu: MP01611-ZK

Płytka uruchomieniowa XM32

Język C. Wykład 9: Mikrokontrolery cz.2. Łukasz Gaweł Chemia C pokój 307

Rys. 1. Schemat ideowy karty przekaźników. AVT 5250 Karta przekaźników z interfejsem Ethernet

Systemy wbudowane Mikrokontrolery

Vinculum scalony host USB

Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów AVR

Układy zegarowe w systemie mikroprocesorowym

ZL11PRG v.2. Uniwersalny programator ISP. Odpowiednik: Byte Blaster II DLC5 Programmer AT89ISP STK-200 Lattice ISP ARM Wiggler

Mikrokontrolery STM32G0 PODZESPOŁY

ZL11ARM. Uniwersalna płytka bazowa dla modułów diparm

Sprawozdanie z projektu MARM. Część druga Specyfikacja końcowa. Prowadzący: dr. Mariusz Suchenek. Autor: Dawid Kołcz. Data: r.

Szczegółowy opis przedmiotu zamówienia. Część 1 - Laboratoryjny zestaw prototypowy

SML3 październik

ZL3ST7. Zestaw uruchomieniowy dla mikrokontrolerów

ZL1MSP430 Zestaw startowy dla mikrokontrolerów MSP430F11xx/11xxA ZL1MSP430

Programowanie mikrokontrolerów 2.0

3. Sygnały zegarowe i ich konfiguracja, mechanizmy bezpieczeństwa... 47

Uniwersalny zestaw uruchomieniowy ZL4PIC

WYKŁAD 5. Zestaw DSP60EX. Zestaw DSP60EX

Podstawowe informacje o STM8

Transkrypt:

STM32L0: Cortex-M0+ w rodzinie STM32 Norymberskie targi embedded world 2014 były dla STMicroelectronics okazją do przedstawienia wielu nowości, wśród których jedną z najbardziej wyczekiwanych przez konstruktorów są mikrokontrolery wyposażone w rdzeń Cortex-M0+. Nowa rodzina mikrokontrolerów nosi oznaczenie STM32L0, jak łatwo zauważyć po literze L w nazwie są to mikrokontrolery energooszczędne. STMicroelectronics ma w swojej ofercie szeroką gamę mikrokontrolerów wyposażonych w rdzenie Cortex-M0, Cortex-M3 oraz Cortex-M4F, produkuje także jedną rodzinę układów, zoptymalizowaną konstrukcyjnie pod kątem aplikacji wymagających stosowania podzespołów energooszczędnych 80 ELEKTRONIKA PRAKTYCZNA 4/2014

STM32L0: Cortex-M0+ w rodzinie STM32 Rys. 1. Deklarowane przez producenta pobory mocy przez CPU w różnych trybach pracy (STM32L1). Nowość w ofercie firmy mikrokontrolery STM32L0 także należą do linii zoptymalizowanej pod kątem minimalizacji poboru mocy, zastosowano w nich nowy rdzeń Cortex-M0+. Rdzeń ten jest udoskonaloną wersją rdzenia Cortex-M0 (stosowanego m.in. w mikrokontrolerach STM32F0), zwiększono jego wydajność i możliwości, zmniejszono jedocześnie pobór mocy i elastyczność implementacji w krzemie. Na rysunku 1 pokazano deklarowane przez producenta pobory mocy przez CPU w różnych trybach pracy, których mnogość jest jednym z elementów pozwalających zminimalizować pobór prądu przez mikrokontroler. Na trybach oszczędzania energii CPU nie kończy się optymalizacja mikrokontrolerów STM32L0 do stosowania w aplikacjach wymagających podzespołów energooszczędnych: producent zastosował w nich ponadto bloki peryferyjne o zminimalizowanym poborze mocy: przetwornik A/C pobierający zaledwie ok. 200 ma przy częstotliwości próbkowania 1,14 MHz, interfejs komunikacyjny LPUART, który może realizować dupleksową transmisję danych z prędkością od 300 do 9600 b/s z wykorzystaniem wewnętrznego generatora taktującego 32,768 khz (wyższe prędkości są możliwe przy zastosowaniu generatora taktującego o większej częstotliwości) i którego wyposażenie umożliwia szybkie wybudzenie CPU z trybu STOP, 16-bitowy timer LPTIM przystosowany do realizacji funkcji odmierzania timeoutów podczas uśpienia CPU, a także realizacji innych funkcji licznikowych bez ingerencji CPU i aktywnego wewnętrznego generatora taktującego, zegar RTC przystosowany do konfigurowanego przez aplikacje użytkownika wybudzania CPU z trybów uśpienia STOP, STANDBY i SLEEP. Wspólnymi elementami wyposażenia wszystkich mikrokontrolerów STM32L0 Rys. 2. Schemat blokowy ilustrujący budowę mikrokontrolerów z rodziny STM32L0 ELEKTRONIKA PRAKTYCZNA 4/2014 81

Przypominamy o ujednoliceniu sposobu oznaczania mikrokontrolerów STM32, który pozwoli określić wewnętrzne wyposażenie układów. Nowy schemat oznaczania przedstawiono na rysunku powyżej. są także m.in. (rysunek 2): wbudowana pamięć EEPROM (fizycznie zaimplementowana, a nie emulowana w pamięci Flash), kontroler DMA, komparatory analogowe oraz interfejsy komunikacyjne SPI (z obsługą trybu I 2 S), I 2 C z FM+ i nie wymagający stosowania specjalnego rezonatora kwarcowego interfejs USB (z obsługą trybów BCD i LPM), a także 96-bitowy sprzętowy numer seryjny struktury, pozwalający zidentyfikować urządzenie z wbudowanym mikrokontrolerem. Przetwornik A/C wbudowany w mikrokontrolery STM32L0 jest przez producenta reklamowany jako 12-/16-bitowy, co wynika z faktu wyposażenia go w sprzętowy oversampling, który umożliwia zwiększenie jego rozdzielczości do 16 bitów (co się wiąże ze zwiększeniem ilości energii potrzebnej do wykonania konwersji). W zależności od potrzeb liczbę nadpróbkowań użytkownik może samodzielnie ustalić w zakresie od 2 do 256 (z krokiem 2 n ). Rys. 3. Elementem wyposażenia mikrokontrolerów STM32L0 jest sprzętowy firewall, chroniący zadane przez użytkownika obszary pamięci Nowością w wyposażeniu mikrokontrolerów STM32L0 jest sprzętowy firewall (rysunek 3), którego zadaniem jest ochrona zawartości zadanych obszarów pamięci nieulotnej oraz RAM przed odczytem przez program uruchamiany z pamięci Flash lub RAM ulokowanych w obszarze niechronionym. Działaniem tego bloku użytkownik może sterować z poziomu swojego programu, włączając i wyłączając ochronę w zależności od bieżących potrzeb. Obszary chronione w zależności od wybranego segmentu pamięci mogą mieć rozmiary od 256 B do 64 kb z krokiem 256 B (segment programu i pamięć nieulotna) lub 64 B do 8 kb z krokiem 64 B (pamięć RAM). Firewall jest dostępny w mikrokontrolerach z podrodzin STM32L0x2 oraz STM32L0x3. Część wewnętrznego wyposażenia jest dostępna wyłącznie w niektórych typach mikrokontrolerów, jak na przykład: koprocesor kryptograficzny AES128, który jest wbudowywany w układy STM32L063x8, kontroler LCD o organizacji 8x48 wbudowany w mikrokontrolery STM32L0x3, interfejsy USB 2.0FS wbudowane w mikrokontrolery STM32L0x2 i STM32L0x3. Na rysunku 4 pokazano produkowane już modele mikrokontrolerów STM32L0, a także planowane ich wdrożenia z podziałem na fazy. Mikrokontrolery wyposażone w pamięć Flash o pojemności powyżej 128 kb będą miały dzieloną ja na dwa segmenty, co ułatwi m.in. wymianę firmware u. Rys. 4. Produkowane modele mikrokontrolerów STM32L0 oraz wdrożenia planowane w najbliższym czasie 82 ELEKTRONIKA PRAKTYCZNA 4/2014

STM32L0: Cortex-M0+ w rodzinie STM32 Fot. 8. Wygląd zestawu DISCOVERY dla mikrokontrolerów STM32L0 Fot. 5. Wygląd zestawu STM32Nucleo z mikrokontrolerem STM32L053 Swoim zwyczajem, firma STMicroelectronics wraz z nowymi mikrokontrolerami wprowadziła do sprzedaży tanie zestawy startowe, przy czym tym razem jako pierwsze na rynku znalazły się zestawy z serii istm32nucleo (fotografia 5). Jest to nowa rodzina zestawów ewaluacyjnych z mikrokontrolerami STM32, które od niezwykle popularnych Discovery różni m.in.: sprzętowa zgodność z płytkami systemu Arduino (rysunek 6), wyposażenie w złącza nowego systemu połączeniowego ST Morpho (rysunek 7), współpraca z bezpłatnym, internetowym pakietem narzędziowym mbed. Zestaw STM32Nucleo jest wyposażono w zintegrowany programator/debuger ST- -LINK/V2-1 (ze zmodyfikowanym firmware, który współpracuje z pakietem mbed), podsystem 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), dwa przyciski (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). Rys. 6. Zestawy STM32Nucelo są sprzętowo zgodne z systemem Arduino Rys. 7. Zestawy STM32Nucleo wyposażono w alternatywny system złącz o nazwie ST Morpho ELEKTRONIKA PRAKTYCZNA 4/2014 83

Rdzeń Cortex-M0+......jest poprawioną wersją rdzenia Cortex-M0, który powstał z kolei jako okrojona wersja Cortex-M3. Celem tego okrojenia było zminimalizowanie powierzchni zajmowanej przez rdzeń na płytce krzemowej, ale dość szybko okazało się, że zabieg chirurgiczny wykonany przez ARM nie był sukcesem, a próbą naprawienia błędu jest wprowadzenie mniej okaleczonej wersji rdzenia Cortex-M0+. Tak więc, rdzeń Cortex-M0+ma do dyspozycji rozdzielone magistrale peryferyjne (I/O oraz AHB), opóźnienie wykonania przerwania wynosi 15 (a nie 16 jak w Cortex-M0) cykli zegarowych, dostęp do GPIO odbywa się w jednym takcie (a nie w dwóch), a system pipelinening u ma dwa stopnie zamiast 3 (co zmniejsza opóźnienia w wykonywaniu programu po skokach). Rdzeń Cortex-M0+ pobiera nieco mniej energii (statycznie i dynamicznie) od pierwowzoru, charakteryzuje się ponadto większą od niego wydajnością, która dochodzi do 2,42 CoreMark/MHz (vs 2,33 CoreMark/MHz w Cortex-M0) lub 1,31 DMIPS/MHz (vs 1,21 DMIPS/MHz). Mikrokontrolery w prezentowanych zestawach wykorzystują wewnętrzne generatory taktujące, ale producent przewidział 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ę, 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. Wspomnianym atutem płytek Nucelo jest ich zgodność z internetowym pakietem narzędziowym mbed (www.mbed.org), dla którego są one natywnymi platformami sprzętowymi. 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. Producent zapowiada także wprowadzenie do sprzedaży zestawu DISCOVERY z wyświetlaczem e-paper (fotografia 8) oraz klasycznego evala z wyświetlaczem LCD- -TFT i monochromatycznym wyświetlaczem segmentowym, sterowanym bezpośrednio przez wewnętrzny kontroler mikrokontrolera STM32L0. Przedstawimy je w EP już wkrótce! Andrzej Gawryluk REKLAMA 84 ELEKTRONIKA PRAKTYCZNA 4/2014