Instytut Teleinformatyki

Podobne dokumenty
Instytut Teleinformatyki

Instytut Teleinformatyki

Instytut Teleinformatyki

Instytut Teleinformatyki

Instytut Teleinformatyki

Instytut Teleinformatyki

Instytut Teleinformatyki

Instytut Teleinformatyki

Instytut Teleinformatyki

Instytut Teleinformatyki

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski

Instytut Teleinformatyki

Metody obsługi zdarzeń

LOW ENERGY TIMER, BURTC

Instytut Teleinformatyki

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Programowanie mikrokontrolerów 2.0

Timery w mikrokontrolerach STM32F3

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

Instytut Teleinformatyki

Instytut Teleinformatyki

Przerwania, polling, timery - wykład 9

Systemy Czasu Rzeczywistego FPGA

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

ad a) Konfiguracja licznika T1 Niech nasz program składa się z dwóch fragmentów kodu: inicjacja licznika T1 pętla główna

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski

Instytut Teleinformatyki

Instytut Teleinformatyki

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

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski

CW-HC08 Programowanie mikrokontrolera MC9S08QD4 [2]

Układy czasowo-licznikowe w systemach mikroprocesorowych

Budowa mikrokontrolera UC3C. - 3 rodzaje obudów

Układy czasowo-licznikowe w systemach mikroprocesorowych

Mikrokontrolery STM32

1 Badanie aplikacji timera 555

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Mechanizm przerwań i menadżer zdarzeń procesora sygnałowego F/C240

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

Technika mikroprocesorowa. Konsola do gier

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

Politechnika Poznańska Wydział Budowy Maszyn i Zarządzania. Sterowniki Urządzeń Mechatronicznych laboratorium. Ćw. 3: Timer v1.0

Ćwiczenie 7 Matryca RGB

Architektura Systemów Komputerowych. Bezpośredni dostęp do pamięci Realizacja zależności czasowych

Sterowniki robotów. Laboratorium ADC, DAC i DMA

Hardware mikrokontrolera X51

Technika Mikroprocesorowa Laboratorium 5 Obsługa klawiatury

Mikroprocesory i Mikrosterowniki Liczniki Timer Counter T/C0, T/C1, T/C2

Ćwiczenie 5 Zegar czasu rzeczywistego na mikrokontrolerze AT90S8515

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: SYSTEMY CYFROWE 1

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

XMEGA. Warsztaty CHIP Rok akademicki 2014/2015

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

Systemy Czasu Rzeczywistego FPGA

Parametryzacja przetworników analogowocyfrowych

uniwersalnych 1. Klasyfikacja liczników w układach STM32F10x 2. Konfiguracja liczników do realizacji wybranych zadań 2.

LABORATORIUM. TIMERY w mikrokontrolerach Atmega16-32

Architektura mikrokontrolera MCS51

Laboratorium 2 Sterowanie urządzeniami z wykorzystaniem systemu plików Intel Galileo

LABORATORIUM. TIMERY w mikrokontrolerach Atmega16-32

Architektura mikrokontrolera MCS51

Laboratorium Procesorów Sygnałowych

Programowanie mikrokontrolerów 2.0

UNO R3 Starter Kit do nauki programowania mikroprocesorów AVR

TECHNIKA MIKROPROCESOROWA II

1.Wstęp. 2.Generowanie systemu w EDK

Programowanie mikrokontrolerów 2.0

STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

Programowanie mikrokontrolerów AVR z rodziny ATmega.

Politechnika Wrocławska

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej. Instrukcja do zajęć laboratoryjnych z przedmiotu:

Wydział Elektroniki. Wykrywacz przewodów ściennych. Wizualizacja danych sensorycznych - projekt. Prowadzący: dr inż.

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

Konfiguracja i programowanie Gamepad'a PlayStation2 na mikrokontrolerze STM32

POLITECHNIKA WARSZAWSKA. Wydział Elektroniki i Technik Informacyjnych. Mikrokontrolery ARM

Wprowadzenie do podstaw programowania AVR (na przykładzie mikrokontrolera ATmega 16 / 32)

Komunikacja w mikrokontrolerach Laboratorium

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

Firma DAGON Leszno ul. Jackowskiego 24 tel Produkt serii DAGON Lighting

1. Cel ćwiczenia. 2. Podłączenia urządzeń zewnętrznych w sterowniku VersaMax Micro

Politechnika Śląska w Gliwicach

CW-HC08 Programowanie mikrokontrolera MC9S08QD4

Laboratorium Analogowych Układów Elektronicznych Laboratorium 6

start Program mikroprocesorowego miernika mocy generowanej $crystal = deklaracja

Szkolenia specjalistyczne

Temat nr 5. System czasu rzeczywistego bazujący na stałopozycyjnym procesorze sygnałowym. LABORATORIUM Procesory i komputery przemysłowe

Rysunek 1 Schemat ideowy sterownika GSM

Metody pracy i praktyczne zastosowanie mikrokontrolera MCF5234

1 Moduł Neuronu Cyfrowego SM

Architektura Komputerów

PRZERWANIA. P1 - Procedura obslugi przerwania. Obsługa zdarzenia Z1 poprzez procedurę obsługi przerwania P1

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

Programowanie mikrokontrolerów AVR

Programowanie mikrokontrolerów 2.0

Przerwania w systemie mikroprocesorowym. Obsługa urządzeo wejścia/wyjścia

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

Mikrokontrolery Xmega (4)

TECHNIKA MIKROPROCESOROWA II

Generator funkcyjny. Spis treści. Działanie. Interfejs. Adam Miarka Maksymilian Szczepanik

Mikrokontrolery ARM. Elektroniczny zegar / budzik / kalendarz z wyświetlaczem NIXIE. Opis projektu

Mikroprocesory i Mikrosterowniki Laboratorium

Transkrypt:

Instytut Teleinformatyki Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska Mikrokontrolery i Mikroprocesory Timery i przerwania laboratorium: 03 autor: mgr inż. Katarzyna Smelcerz Kraków, 2016

03.Mikrokontrolery i Mikroprocesory Timery i przerwania 2 Spis treści Spis treści... 2 1. Wiadomości wstępne... 3 1.1. Niezbędne wiadomości... 3 1.2. Timery... 3 1.3. NVIC (Nested Vector Interrupt Controller)... 4 1.4. Konfiguracja Timerów w środowisku Cube... 4 2. Przebieg laboratorium... 7 2.1. Zadanie 1. Na ocenę 3.0 (dst)... 7 2.2. Zadanie 2. Na ocenę 4.0 (db)... 7 2.3. Zadanie 3. Na ocenę 5.0 (bdb)... 7

03.Mikrokontrolery i Mikroprocesory Timery i przerwania 3 1. Wiadomości wstępne Pierwsza część niniejszej instrukcji zawiera podstawowe wiadomości teoretyczne dotyczące omawianego tematu. Poznanie tych wiadomości umożliwi prawidłowe zrealizowanie praktycznej części laboratorium. 1.1. Niezbędne wiadomości Opis zestawu starter-kit, schemat: http://www.st.com/st-webui/static/active/en/resource/technical/document/user_manual/dm00027954.pdf Kompilator dla rdzenia ARM: https://www.iar.com/iar-embeddedworkbench/arm/ Opis rdzenia ARM STM32L152 RB http://www.st.com/st-webui/static/active/en/resource/technical/document/datasheet/cd00277537.pdf Dokumentacja do środowiska STM32CubeMX: http://www.st.com/st-webui/static/active/en/resource/technical/document/data_brief/dm00103564.pdf 1.2. Timery Rdzeń ARM STM32L152 RB jest wyposażony w 10 timerów. Sześć 16-bitowych, do 4 kanałów IC/OC/PWM oraz dwa 16-bitowe podstawowe timery i 2 do obsługi watchdoga. Poniżej znajduje się proste zestawienie wszystkich Timerów wraz z ich najważniejszymi funkcjami. Timer x-bitowy Typ licznika Prescaler Obsługa DMA Capture/compare Ilość kanałów TIM2, 16-bit Up, down, Int 1-65536 Tak 4 TIM3, TIM4 up/down TIM9 16-bit Up int Nie 2 TIM10, TIM11 TIM6, TIM7 1-65536 16-bit Up int 1-65536 16-bit Up int 1-65536 Nie 1 Tak 0

03.Mikrokontrolery i Mikroprocesory Timery i przerwania 4 TIM2, TIM3, TIM4 są oparte o 16-bitowy licznik, który może liczyć do góry, od góry w dół lub w mieszanym trybie. Są wyposażone w 4 niezależne kanały dla wejść, a na wyjściu mogą generować PWM lub jeden impuls. Timery te mogą pracować razem lub z TIM10, TIM11 i TIM9. TIM10, TIM11 i TIM9 mają podobne właściwości jak wyżej omówione TIM2, TIM3 oraz TIM4 z drobnymi różnicami (patrz table). Poza tym mogą być użyte jako podstawowy zegar, niezależny od CPU, sterowny przez LSE. TIM6, TIM7 są głównie używane do wyzwolenia przebiegu DAC. 1.3. NVIC (Nested Vector Interrupt Controller) Rdzenie ARM wyposażone są w NVIC (Nested Vector Interrupt Controller). Jest to rozwiązanie sprzętowe pozwalające na obsługę przerwania o wyższym priorytecie, nawet jeśli w danej chwili jest wykonywane inne przerwanie, bez interwencji CPU. Więcej szczegółów znajduje się w dokumentacji, patrz rozdział 1.1. 1.4. Konfiguracja Timerów w środowisku Cube Poniższe print screeny przedstawiają konfigurację Timera 3 Zrzut 1.1 Ustawienie TIM3 z zegarem wewnętrznym w odpowiednim trybie na kanale 1 (sygnał nie jest wyprowadzony na pin, ale może być wykorzystany, np. do przerwania)

03.Mikrokontrolery i Mikroprocesory Timery i przerwania 5 Zrzut 1.2 Ustawienie odpowiednich parametrów TIM3 Zrzut 1.3 Włączenie przerwania od TIM3

03.Mikrokontrolery i Mikroprocesory Timery i przerwania 6 Aby uruchomić Timer 3 oraz PWM należy dopisać funkcje, w wygenerowanym kodzie w języku C, w kompilatorze IAR przedstawione na Listingu 1 oraz Listingu 2: Listing 1 Uruchomienie Timera 3 HAL_TIM_Base_Start_IT(&htim3); //Start TIM3 Listing 2 Uruchomienie PWM od TIM4, na kanale 2 HAL_TIM_PWM_Start_IT(&htim4, TIM_CHANNEL_2); //Start PWM, kanał2

03.Mikrokontrolery i Mikroprocesory Timery i przerwania 7 2. Przebieg laboratorium Druga część instrukcji zawiera zadania do praktycznej realizacji, które demonstrują zastosowanie technik z omawianego zagadnienia. 2.1. Zadanie 1. Na ocenę 3.0 (dst) Proszę skonfigurować Timer 3 do wygenerowania przerwania o dowolnym okresie. Proszę nagrać program na płytkę i w podglądzie zmiennych w IAR dla rejestrów (Register) sprawdzić działanie Timera. Proszę wskazać rejestr będący licznikiem. 2.2. Zadanie 2. Na ocenę 4.0 (db) Proszę skonfigurować Timer 3 do wygenerowania przerwania o okresie 3000 cykli zegarowych. Proszę w przerwaniu inkrementować dowolną zmienną czas typu short. Proszę nagrać program na płytkę i w podglądzie zmiennych w IAR dla rejestrów (Register) sprawdzić działanie Timera poprzez sprawdzenie, czy jego licznik jest inkrementowany. Następnie proszę sprawdzić, czy program wchodzi w przerwanie, albo przez ustawienie breakpointa, albo przez podgląd zmiennej czas, w podglądzie zmiennych. 2.3. Zadanie 3. Na ocenę 5.0 (bdb) W programie STM32CubeMX proszę skonfigurować PWM, czyli wypełnienie. Proszę je zaimplementować na jednej z diod (patrz schemat płytki Discovery rozdz. 1.1.). Należy sprawdzić do którego pinu jest podpięta dioda, oraz jaki Timer może go obsługiwać. Należy go odpowiednio skonfigurować, podając wypełnienie dla PWM, oraz Prescaler. Wartości dowolne, ale proszę tak wykonać ćwiczenie, aby łatwo dało się zauważyć, że dioda nie świeci pełną mocą. Wygenerowany kod należy przez Cube, należy otworzyć w środowisku IAR, przekompilować i nagrać na płytkę.