Cortex-M3 ST Microelectronics core processor capabilities. Możliwości procesorów z rdzeniem Cortex-M3 firmy ST Microelectronics

Podobne dokumenty
Wykład 2. Mikrokontrolery z rdzeniami ARM

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

STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

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

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

Wykład 6. Mikrokontrolery z rdzeniem ARM

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

STM32 Butterfly. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

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

Kurs programowania mikrokontrolerów ARM z rodziny Cortex-M3

MIKROKONTROLERY I MIKROPROCESORY

Układy zegarowe w systemie mikroprocesorowym

Szkolenia specjalistyczne

IMPLEMENTATION OF THE SPECTRUM ANALYZER ON MICROCONTROLLER WITH ARM7 CORE IMPLEMENTACJA ANALIZATORA WIDMA NA MIKROKONTROLERZE Z RDZENIEM ARM7

WPROWADZENIE Mikrosterownik mikrokontrolery

Systemy wbudowane. Paweł Pełczyński

ZL29ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

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

2. PORTY WEJŚCIA/WYJŚCIA (I/O)

Wykład 5. Architektura ARM

Technika mikroprocesorowa. W. Daca, Politechnika Szczecińska, Wydział Elektryczny, 2007/08

Technika mikroprocesorowa. W. Daca, Politechnika Szczecińska, Wydział Elektryczny, 2007/08

Wykład 2. Mikrokontrolery z rdzeniami ARM

ZL28ARM. Zestaw uruchomieniowy dla mikrokontrolerów AT91SAM7XC

Spis treści. Wykaz ważniejszych skrótów Wprowadzenie Rdzeń Cortex-M Rodzina mikrokontrolerów XMC

Charakterystyka mikrokontrolerów. Przygotowali: Łukasz Glapiński, Mateusz Kocur, Adam Kokot,

Systemy wbudowane Mikrokontrolery

MCAR Robot mobilny z procesorem AVR Atmega32

projekt przetwornika inteligentnego do pomiaru wysokości i prędkości pionowej BSP podczas fazy lądowania;

Mechatronika i inteligentne systemy produkcyjne. Modelowanie systemów mechatronicznych Platformy przetwarzania danych

LABORATORIUM - ELEKTRONIKA Układy mikroprocesorowe cz.2

Programowanie mikrokontrolerów 2.0

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

Technika Mikroprocesorowa

WYDZIAŁ ELEKTRYCZNY KATEDRA TELEKOMUNIKACJI I APARATURY ELEKTRONICZNEJ. Instrukcja do zajęć laboratoryjnych. Numer ćwiczenia: 4

Timery w mikrokontrolerach STM32F3

USB interface in 8-bit microcontrollers PIC18F family manufactured by Microchip.

Wstęp Architektura... 13

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)

ZL10PLD. Moduł dippld z układem XC3S200

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

2. Architektura mikrokontrolerów PIC16F8x... 13

Wykład Mikroprocesory i kontrolery

Instytut Teleinformatyki

Porty wejścia/wyjścia w układach mikroprocesorowych i w mikrokontrolerach

Mikrokontroler ATmega32. System przerwań Porty wejścia-wyjścia Układy czasowo-licznikowe

XXXII Olimpiada Wiedzy Elektrycznej i Elektronicznej. XXXII Olimpiada Wiedzy Elektrycznej i Elektronicznej

System mikroprocesorowy i peryferia. Dariusz Chaberski

RDZEŃ x86 x86 rodzina architektur (modeli programowych) procesorów firmy Intel, należących do kategorii CISC, stosowana w komputerach PC,

Mikroprocesor Operacje wejścia / wyjścia

ZL27ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F103

Układy czasowo-licznikowe w systemach mikroprocesorowych

Pulse width modulation control of three-phase three-level inverter Sterowanie modulacji szerokości impulsów trójpoziomowego trójfazowego falownika.

XMEGA. Warsztaty CHIP Rok akademicki 2014/2015

Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne

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

THE ANALIZER EXCEEDED PERMISSIBLE LEVELS OF HARMONICS IN THE SUPPLY CURRENT TRACTION VEHICLE

ZL30ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F103

ISBN Copyright by Wydawnictwo BTC Warszawa Redaktor techniczny: Delfina Korabiewska Redaktor merytoryczny: mgr Anna Kubacka

PRZERWANIA. 1. Obsługa zdarzeń, odpytywanie i przerwania Obsługa zdarzeń jest jedną z kluczowych funkcji w prawie każdym systemie czasu rzeczywistego.

Opis przedmiotu zamówienia

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Mikroprocesory i Mikrosterowniki

System czasu rzeczywistego

Zastosowanie procesorów AVR firmy ATMEL w cyfrowych pomiarach częstotliwości

Wykład 7. Architektura mikroprocesorów powtórka

Systemy na Chipie. Robert Czerwiński

Zestaw uruchomieniowy z mikrokontrolerem LPC1114 i wbudowanym programatorem ISP

Hardware mikrokontrolera X51

Programowanie mikrokontrolerów. 8 listopada 2007

Technika mikroprocesorowa. Linia rozwojowa procesorów firmy Intel w latach

PROGRAMOWANIE WSPÓŁCZESNYCH ARCHITEKTUR KOMPUTEROWYCH DR INŻ. KRZYSZTOF ROJEK

2. Code Composer Studio v4 zintegrowane środowisko projektowe... 41

Procesory Blackfin. Część 1

PROJECT OF FM TUNER WITH GESTURE CONTROL PROJEKT TUNERA FM STEROWANEGO GESTAMI

Mikrokontrolery w mechatronice. Wstępne uwagi

1.1. Firma ARM i jej wyroby

UNO R3 Starter Kit do nauki programowania mikroprocesorów AVR

PROJEKT I OPTYMALIZACJA STRUKTURY LOGICZNEJ DYDAKTYCZNEGO SYSTEMU MIKROPROCESOROWEGO DLA LABORATORIUM PROJEKTOWANIA ZINTEGROWANEGO

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Przerwania, polling, timery - wykład 9

Technika mikroprocesorowa. W. Daca, Politechnika Szczecińska, Wydział Elektryczny, 2007/08

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

Zgrana para - NerO i CleO

Część 5. Mieszane analogowo-cyfrowe układy sterowania

Metody obsługi zdarzeń

1. Wprowadzenie Wstęp

Vinculum scalony host USB

1.1. Firma ARM i jej wyroby

SPECYFIKACJA ELEMENTÓW ELEKTRONICZNYCH

Instytut Teleinformatyki

Popularne pamięci FLASH firmy GigaDevice

Architektura komputerów. Układy wejścia-wyjścia komputera

Porty wejścia/wyjścia w układach mikroprocesorowych i w mikrokontrolerach

Funkcje sterowania cyfrowego przekształtników (lista nie wyczerpująca)

Wykład 3. Przegląd mikrokontrolerów 8-bit: STM8

KAmduino UNO. Rev Źródło:

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

Architektura komputerów

2. Budowa układów procesorowych rodziny TMS320C

Transkrypt:

Marcin Gąsiorek V rok Koło Naukowe Techniki Cyfrowej dr inż. Wojciech Mysiński opiekun naukowy Cortex-M3 ST Microelectronics core processor capabilities The paper presents the capabilities of the ARM Cortex-M3 as compared to other popular architectures, 8 - and 32 - bit. In addition, microcontrollers are also presented ST Microelectronics companies and their extended capabilities. This device sets new standards of performance and cost, as well as being capable of low power operation and hard real-time control. Możliwości procesorów z rdzeniem Cortex-M3 firmy ST Microelectronics W artykule przedstawiono możliwości procesorów ARM Cortex-M3 na tle innych popularnych architektur 8- i 32- bitowych. Oprócz tego zaprezentowane są również mikrokontrolery firmy ST Microelectronics oraz ich rozbudowane możliwości. Mikrokontrolery firmy ST Microelectronics wyznaczają nowe standardy uzyskiwania wysokiej wydajności w stosunku do kosztów, pracy przy niskim poborze mocy i wszędzie tam gdzie stawia sie wysokie wymagania dla systemów czasu rzeczywistego. Keywords: Cortex-M3, STM32, interrupt, Thumb-2, ADC, Timery Słowa kluczowe: Cortex-M3, STM32, przerwania, Thumb-2, ADC 1. Wprowadzenie O tym, że mikrokontrolery już na stałe zagościły w naszym życiu nie trzeba chyba nikogo przekonywać. Ich ciągły rozwój pozwala konstruktorom na stawianie sobie większych wyzwań jak również ograniczenie kosztów projektu dzięki bogatemu wyposażeniu w urządzenia peryferyjne i coraz lepiej zaprojektowane jednostki arytmetyczne. Do najliczniejszej i najpopularniejszej grupy mikrokontrolerów należą na dzień dzisiejszy jeszcze 8-bitowe AVR-y. Jednak są one wypierane przez ARM-y z 32-bitowym rdzeniem, a dokładniej ARM7, ARM9 i Cortex-y. Głównym powodem zmiany mikrokontrolera z AVR na ARM jest cena i możliwości: przykładowo popularna Atmega128 kosztuje ok 25zł 1, natomiast STM32F100 (Cortex-M3) to koszt ok. 19zł 1 1 Ceny z dnia 05.06.2010r

Tab.1 Porównanie przykładowych mikrokontrolerów AVR i ARM Wyposażenie Atmega128 STM32F100 Timery 2x8-bit 2x16-bit 8-bit PWM do 12 timerów, 16-bit (konfigurowalne) 16-bit PWM Interfejsy SPI, USART, I2C 2xSPI, 2xI2C, 3xUSART ADC 8-kanałowy, 10-cio bitowy 16-kanałowy, 12-bitowy W powyższej tabeli przedstawiona jest tylko część atutów przykładowego mikrokontrolera z rodziny ARM. 1.1 Dlaczego Cortex? Cortex to następca popularnej architektury ARM7 i pochodnych ARM7. Rdzenie Cortex charakteryzują się szybszym wykonywaniem programów przy takiej samej częstotliwości taktowania jak starsze rdzenie, większą gęstością upakowania poleceń (Thumb-2) oraz mniejszym poborem energii[5]. Cortex-y dzielą się na: Cortex-A series przeznaczony dla wymagających aplikacji z systemami operacyjnymi (Symbian, Linux i Windows), które wymagają dużych mocy obliczeniowych, obsługi pamięci wirtualnej z MMU lub implementacji interpreterów Javy. Cortex-R series implementowane w systemach, gdzie krytyczny jest czas reakcji (RTOS, ABS). Cortex-M series zastosowanie konsumenckie i przemysłowe ze względu na cenę i dużą wydajność. Na rys. 1 przedstawione są wersje rdzeni pod kątem funkcjonalności i możliwości. Można również zauważyć, że każda seria dzieli się na kolejne, z oznaczeniami cyfrowymi. Warto tutaj wspomnieć że od 2010 roku rdzenie A9 zostały wzbogacone o wersje core duo.

Rys. 1 Porównanie wersji rdzeni Cortex i ARM Ponieważ artykuł dotyczy rodziny M3, przybliżę nieco całą serię M i następnie skupię sie już tylko i wyłącznie na Cortex-ach M3. W skład serii M wchodzą obecnie cztery rdzenie: M0 rdzeń o bardzo małych rozmiarach i najbardziej energooszczędny. M1 zaprojektowany z myślą o implementacji w układach FPGA (rdzeń miękki). M3 do stosowania w mikrokontrolerach (główny bohater). M4 32-bit DSC kontrola i przetwarzanie sygnałów cyfrowych, sterowanie silnikami, wbudowane systemy audio. Rys. 2 Kompatybilność kodu dla różnych rdzeni Cortex

2. Rdzeń Cortex-M3 Zaskakująco dobry stosunek możliwości do ceny uzyskano w rdzeniach Cortex-M3 dzięki wielu zaawansowanym narzędziom, np. 3-poziomowe kolejkowanie instrukcji ze spekulacyjnym mechanizmem przewidywania rozgałęzień, skrócony czas wykonywania większości operacji do jednego cyklu, nowy zestaw instrukcji Thumb-2 (rys. 5). Pozostałe właściwości rdzenia to[1][4][5]: Architektura Harvardzka - takie podejście pozwala na dostęp do pamięci programu i danych w tym samym czasie. Nested vectored interrupt controller NVIC poprawiony, prostszy w obsłudze sprzętowy kontroler przerwań (poprawiony na życzenie programistów) Do 240 programowanych przerwań + do 256 poziomów priorytetów (zmiennych) Małe opóźnienia obsługi przerwań dzięki zastosowanym mechanizmom Tail-Chaining (rys. 3), Late Arrival (rys. 4) oraz przerwaniu operacji POP (rys. 5). Wywłaszczenie przerwań o niższym priorytecie Obsługa przerwań zagnieżdżonych Mnożenie w jednym cyklu i sprzętowe dzielenie Do 4GB przestrzeni adresowej Możliwość operowania na pojedynczych bitach dzięki technice bit-banding 2 Dostęp do pamięci programu w jednym cyklu Zintegrowane tryby obniżonego poboru energii. 2 W technice tej nie ma konieczności odczytu całego słowa, przepisywania go do rejestru, zamieniania interesującego nas bitu i ponownego zapisania do pamięci jak to przebiegało w innych mikrokontrolerach. Jeśli potrzebujemy zamienid (lub odczytad) jeden bit, zamieniamy go bezpośrednio w pamięci, dlatego technika ta została również nazwana "pamięcią o dostępie atomowym".

Rys. 3 a) klasyczna obsługa późniejszego przerwania, b) Tail-chaining (kolejkowanie przerwań), po obsłudze wcześniejszego przerwania omijana jest operacja ściągana ze stosu i ponownego wkładania na stos bieżącego procesu. Rys. 4 a) standardowa obsługa przerwania, b) Late arrival (obsługa późniejszego przerwania), kiedy podczas obsługi przerwania o niższym priorytecie nadejdzie przerwanie o wyższym priorytecie, eliminowana jest jedna zbędna operacja odkładania ponownie na stos bieżącego procesu, a co za tym idzie omijana jest jedna zbędna operacja zdejmowania ze stosu.

Rys. 5 a) standardowa obsługa przerwania, b) jeśli podczas zdejmowania ze stosu zostanie zgłoszone przerwanie, operacja ta zostanie przerwana w ciagu 1-12 cykli, następnie po wykonaniu mechanizmu Tail-chaining zostanie obsłużone przerwanie, bez zbędnej procedury zdejmowania ze stosu. Najważniejszą zaletą rdzeni Cortex-M3 jest zdolność do obsługi instrukcji na danych 16- i 32-bitowych bez konieczności stosowania jakichkolwiek zabiegów. Takie rozwiązanie pozwoliło na zmniejszenie objętości kodu wynikowego oraz zwiększenie wypadkowej prędkości wykonywania programu, a wszystko to zostało osiągnięte dzięki nowemu zestawowi instrukcji Thumb-2. Rys. 6 Porównanie wydajności i objętości kodu wynikowego dla zestawu instrukcji ARM (32-bit), Thumb (16-bit) oraz Thumb-2 (16-, 32-bit)

Tab. 2 Porównanie mikrokontrolerów ARM z Cortex-ami Cortex-M3 ARM7 Architektura Harvard von Neumann Lista instrukcji Thumb/Thumb-2 ARM/Thumb Prędkość wykonywania poleceń 1.25 DMIPS/MHz Max. 0.95 DMIPS/MHz (ARM) Przerwania NMI+1-240 FIQ/IRQ Opóźnienie obsługi przerwania 12 cykli 24-42 cykli Minimalny odstęp pomiędzy obsługą kolejnych przerwań 6 cykli 24 cykle Tryb oszczędzania energii wbudowany brak Ochrona pamięci do 8 obszarów (MPU) brak Pipeline 3-stopniowy + przewidywanie rozgałęzień 3-stopniowy Pobór mocy 0.19 mw/mhz 0.28 mw/mhz

3. STM32Fx Producent mikrokontrolerów STM32, przygotował odpowiednie podrodziny, z których możemy dobrać odpowiedni mikrokontroler dla naszych potrzeb[3]: Value Line (STM32F100) najtańsze w rodzinie STM32 mikrokontrolery oferowane w czterech wersjach obudów, wyposażone w pamięci programu Flash o pojemności do 128 kb, SRAM do 8 kb taktowane sygnałem zegarowym o maksymalnej częstotliwości 24 MHz, wyposażone we wszystkie standardowe interfejsy komunikacyjne oraz bogaty zestaw bloków peryferyjnych, w tym przetwornik A/C, dwukanałowy C/A oraz - jako pierwszy mikrokontroler z rdzeniem Cortex-M3 - interfejs HDMI-CEC, Access Line (STM32F101) popularne mikrokontrolery oferowane w szerokiej gamie obudów, wyposażone w pamięci programu Flash o pojemności do 512 kb, taktowane sygnałem zegarowym o maksymalnej częstotliwości 36 MHz, wyposażone we wszystkie standardowe interfejsy komunikacyjne oraz bogaty zestaw bloków peryferyjnych, w tym przetwornik A/C, USB Access Line (STM32F102) mikrokontrolery oferowane w obudowach o liczbie wyprowadzeń 48 lub 64, o funkcjonalności i wyposażeniu zbliżonym do podrodziny STM32F101 (maksymalna częstotliwość taktowania wynosi 48 MHz), pamięci Flash o pojemności do 128 kb, dodatkowo wyposażone w interfejs USB device (Full Speed), Performance Line (STM32F103) mikrokontrolery o bogatszym wyposażeniu niż wersje F101 i F102, przystosowane do taktowania sygnałem o częstotliwości do 72 MHz, mają wbudowane m.in. interfejsy SDIO, CAN, I2S oraz timery PWM (mogą sterować pracą silników elektrycznych), dostępne we wszystkich wariantach obudów z pamięciami programu o pojemności do 512 kb, Connectivity Line (STM32F105/107) najnowsza grupa mikrokontrolerów w rodzinie STM32, wyposażona w interfejs USB-OTG oraz (wyłącznie wersje F107) ethernetowy MAC z możliwością obsługi standardu IEEE1588 (patrz ramka). Mikrokontrolery z tej grupy wyposażono w CPU identyczne z zastosowanym w F103 (taktowanie do 72 MHz), dwa interfejsy I2S, dwa interfejsy CAN oraz wiele standardowych interfejsów komunikacyjnych.

Rys. 7 Uproszczone schematy blokowe podrodzin mikrokontrolerów. Rys. 8 Uproszczona architektura mikrokontrolera z rodziny STM32 Na rys. 8 została przedstawiona podstawowa architektura wewnętrzna mikrokontrolera z rodziny STM32[6]. Można tutaj zauważyć 2 szyny danych APB1 i APB2 gdzie szyna APB1 jest taktowana z częstotliwością 36MHz a APB2 z maksymalną częstotliwością rdzenia (na ogół 72MHz). Dodatkowo w STM32 zastosowano szynę danych BusMatrix, do której podłączony jest rdzeń, kontroler DMA, pamięci SRMA i FLASH, oraz wymienione wyżej szyny danych. Kontroler DMA umożliwia transmisję danych z urządzeń peryferyjnych do pamięci, z pamięci do urządzeń peryferyjnych i z pamięci do pamięci bez zbędnego obciążenia rdzenia. Ponieważ rdzeń i

kontroler DMA korzystają z tej samej szyny, przewidzianych jest kilka algorytmów arbitrażu, w celu uniknięcia zablokowania szyny, jednym z nich jest algorytm karuzelowy. W zasadzie na wymienionych powyżej częściach składowych architektury mikrokontrolera STM32 można by zakwalifikować ten model do przeciętnych. Jednakże producent, zadbał o dodatkowe atuty, które wyróżniają go z Cortex-ów. 3.1 Porty wejścia/wyjścia Porty wejść/wyjść mogą pracować w jednym z sześciu trybów[4]: -jako linie wejściowe: bez podciągania pływające z podciąganiem do zasilania (pull-up) z podciąganiem do masy (pull-down) analogowe -jako linie wyjściowe z otwartym drenem symetryczne (push-pull) Dodatkowo producent dał możliwość konfiguracji częstotliwości wyjść (50MHz, 10MHz i 2MHz co odpowiada czasom narastania 5ns, 25ns, 125ns). Czynnik ten ma ogromne znaczenie podczas uwzględniania w projekcie kompatybilności elektromagnetycznej. Gdyby tego jeszcze było mało, istnieje możliwość całkowitego lub częściowego remapingu 3 niektórych wyprowadzeń, głównie wyjść timerów. Warto tutaj również wspomnieć, że każde wyprowadzenie mikrokontrolera STM32 może działać jako źródło przerwania (EXTI). 3.2 Przetwornik A/C Mikrokontrolery z rodziny STM32 wyposażono w co najmniej jeden 12-bitowy, 16- kanałowy przetwornik A/C z czasem przetwarzania równym 1us (1MS/s). Przetworniki mogą pracować w wielu trybach, konfigurowanych przez programistę, m.in. można dokonać jednoczesnego pomiaru napięcia na wielu wejściach, lub skonfigurować dwa kanały przetwornika, aby generował przerwanie przy za niskim lub zbyt wysokim poziomie napięcia. 3.3 Wektor przerwań Do 43 maskowanych przerwań programowych o16 poziomach priorytetów Krótkie i przewidywalne czasy obsługi przerwań Wsparcie dla tail-chaining, late arrival Automatyczne zachowywanie i odtwarzanie kontekstu, przy wchodzeniu i wychodzeniu z procedury obsługi przerwania Dużo łatwiejsza programowa implementacja wektora funkcji obsługi przerwań. 3 Dokładne informacje jak przemapowad wyprowadzenia oraz, na które piny można znaleźd w nocie aplikacyjnej dla danej rodziny mikrokontrolerów STM32.

3.4 Układy czasowo-licznikowe W mikrokontrolerach STM32 konstruktor ma do dyspozycji do 10 (16-bitowych) timerów (wliczając w to SysTick 4 ) mogących pracować w różnych konfiguracjach. Odpowiednio skonfigurowane timery i ich kanały umożliwiają m.in. pomiar parametrów sygnału PWM, generowanie sygnałów PWM, odbieranie sygnałów z czujników halla i enkoderów, pomiary czasu trwania impulsów, formowanie pojedynczych impulsów. Dodatkowo niektóre wyjścia timerów posiadają swoje komplementarne odpowiedniki, dzięki czemu można generować sygnały PWM z czasem martwym lub do 8 sygnałów PWM (co jest dość istotne przy sterowaniu np. silnikiem bezszczotkowym prądu stałego[1]). Oprócz wymienionych wyżej, mikrokontrolery z rodziny STM32 posiadają wiele systemów zabezpieczeń takich jak: System nadzoru sygnału zegarowego 5 Rejestry chronione przed utratą danych Watchdog niezależny (IWDG) Watchdog okienkowy (WWDG) Mechanizmy te w znacznym stopniu wspomagają proces projektowania urządzeń, gdzie o pomyłce nie ma mowy, jak również ważna jest stabilność systemu czasu rzeczywistego. 4. Bibliografia [1] K. Paprocki, Mikrokontrolery STM32 w praktyce, Legionowo 2009 [2] http://www.st.com/mcu/inchtml-pages-stm32.html (10.06.2010) [3] http://www.st.com/mcu/familiesdocs-110.html (10.06.2010) [4] User Manual to STM32 [5] http://www.hitex.com (10.06.2010) [6] The Insider's Guide To The STM32 ARM Based Microcontroller, Hitex 2008 4 Timer systemowy - dzięki niemu, można generowad przerwania w ściśle określonych odstępach czasu. Jest to przydatna funkcja np. przy przełączaniu wątków w RTOS. 5 Kiedy uszkodzeniu ulegnie rezonator zewnętrzny, jego zadanie przejmie rezonator wewnętrzny.