LOW ENERGY TIMER, BURTC

Podobne dokumenty
1 Badanie aplikacji timera 555

Instytut Teleinformatyki

Mikrokontroler w roli generatora PWM. Wpisany przez Administrator piątek, 06 lipca :51 -

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

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

Wprowadzenie do programu MultiSIM

SERIA D STABILIZATOR PRĄDU DEDYKOWANY DO UKŁADÓW LED

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej

Instytut Teleinformatyki

Spis treści. Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego

Laboratorium Analogowych Układów Elektronicznych Laboratorium 6

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

Ćw. 0 Wprowadzenie do programu MultiSIM

Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści

Instrukcja do ćwiczenia laboratoryjnego

Edukacyjny sterownik silnika krokowego z mikrokontrolerem AT90S1200 na płycie E100. Zestaw do samodzielnego montażu.

Zworka amp. C 1 470uF. C2 100pF. Masa. R pom Rysunek 1. Schemat połączenia diod LED. Rysunek 2. Widok płytki drukowanej z diodami LED.

LABORATORIUM TECHNIKI IMPULSOWEJ I CYFROWEJ (studia zaoczne) Układy uzależnień czasowych 74121, 74123

Ćwiczenie 2 Mostek pojemnościowy Ćwiczenie wraz z instrukcją i konspektem opracowali P.Wisniowski, M.Dąbek

MCAR Robot mobilny z procesorem AVR Atmega32

rh-pwm3 Trzykanałowy sterownik PWM niskiego napięcia systemu F&Home RADIO.

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

UKŁADY SEKWENCYJNO CZASOWE I SPECJALNE

Generatory sinusoidalne LC

Pomiar odległości z Arduino czujniki, schematy, przykładowe kody

Płytka laboratoryjna do współpracy z mikrokontrolerem MC68332

Sterownik czasowy Müller 23321;10 A, Program tygodniowy, IP20, (SxWxG) 84 x 84 x 40 mm

Państwowa Wyższa Szkoła Zawodowa

BADANIE ELEMENTÓW RLC

dokument DOK wersja 1.0

LABORATORIUM. TIMERY w mikrokontrolerach Atmega16-32

Immobilizer samochodowy otwierający dostęp poprzez kod czteroznakowy.

Ćw. 6 Generatory. ( ) n. 1. Cel ćwiczenia. 2. Wymagane informacje. 3. Wprowadzenie teoretyczne PODSTAWY ELEKTRONIKI MSIB

1. Nadajnik światłowodowy

LABORATORIUM. TIMERY w mikrokontrolerach Atmega16-32

Uwaga: dioda na wyjściu 13 świeci gdy na wyjście podamy 0.

LABORATORIUM Sygnałów, Modulacji i Systemów ĆWICZENIE 2: Modulacje analogowe

Instytut Teleinformatyki

Politechnika Wrocławska

Ćw. 8 Bramki logiczne

Laboratorium Przyrządów Półprzewodnikowych Laboratorium 1

Ćw. 7 Przetworniki A/C i C/A

Programowanie mikrokontrolerów AVR z rodziny ATmega.

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

LABORATORIUM - ELEKTRONIKA Układy mikroprocesorowe cz.2

CW-HC08 Programowanie mikrokontrolera MC9S08QD4 [2]

Państwowa Wyższa Szkoła Zawodowa

Sprzęt i architektura komputerów

Cwiczenie nr 1 Pierwszy program w języku C na mikrokontroler AVR

Wymiary: 90mm/60mm/25mm

2.1 Porównanie procesorów

Ćwiczenie 1. Symulacja układu napędowego z silnikiem DC i przekształtnikiem obniżającym.

Ćwiczenie - 9. Wzmacniacz operacyjny - zastosowanie nieliniowe

Sterownik procesorowy S-2 Komunikacja RS485 MODBUS

Instytut Teleinformatyki

Część 6. Mieszane analogowo-cyfrowe układy sterowania. Łukasz Starzak, Sterowanie przekształtników elektronicznych, zima 2011/12

CENTRALA STERUJĄCA SMART CONTROL

Sterownik momentu obrotowego silnika prądu stałego

Rafał Staszewski Maciej Trzebiński, Dominik Derendarz

LABORATORIUM PRZEMYSŁOWYCH SYSTEMÓW STEROWANIA

Pracownia pomiarów i sterowania Ćwiczenie 4 Badanie ładowania i rozładowywania kondensatora

SCL > Pin 21 SDA > Pin 20 VCC > 5V GND > GND

PROCEDURA USTAWIANIA CZUJNIKÓW

SPECYFIKACJA PRZETWORNIK RÓŻNICY CIŚNIEŃ DPC250; DPC250-D; DPC4000; DPC4000-D

Podstawy Elektroniki dla Informatyki. Pętla fazowa

Ćwiczenie 1. Parametry statyczne diod LED

Katedra Elektrotechniki Teoretycznej i Informatyki

Instrukcja do ćwiczenia laboratoryjnego nr 11

Ćwiczenie 5 Badanie sensorów piezoelektrycznych

STABILIZATORY NAPIĘCIA I PRĄDU STAŁEGO O DZIAŁANIU CIĄGŁYM Instrukcja do ćwiczeń laboratoryjnych

Politechnika Białostocka

EGZAMIN POTWIERDZAJĄCY KWALIFIKACJE W ZAWODZIE Rok 2019 CZĘŚĆ PRAKTYCZNA

Wstęp. Opis ATMEGA128 MINI MODUŁ VE-APS-1406

Układy czasowo-licznikowe w systemach mikroprocesorowych

Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści

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

Statyczne badanie przerzutników - ćwiczenie 3

Podstawy Elektroniki dla Teleinformatyki. Generator relaksacyjny

Systemy Czasu Rzeczywistego FPGA

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

Statyczne i dynamiczne badanie przerzutników - ćwiczenie 2

Państwowa Wyższa Szkoła Zawodowa

Czym jest sygnał PWM?

Ćwiczenie nr 3. Badanie instalacji fotowoltaicznej DC z akumulatorem

Podstawowe zastosowania wzmacniaczy operacyjnych wzmacniacz odwracający i nieodwracający

Komputerowe projektowanie układów ćwiczenia uzupełniające z wykorzystaniem Multisim/myDAQ. Katedra Mikroelektroniki i Technik Informatycznych PŁ

Układy czasowo-licznikowe w systemach mikroprocesorowych

INSTRUKCJA OBSŁUGI. Przekaźnik czasowy ETM ELEKTROTECH Dzierżoniów. 1. Zastosowanie

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Programowanie mikrokontrolerów 2.0

Programowany układ czasowy

LABORATORIUM TECHNIKA CYFROWA BRAMKI. Rev.1.0

Modulatory PWM CELE ĆWICZEŃ PODSTAWY TEORETYCZNE

Laboratorium: Projektowanie pasywnych i aktywnych filtrów analogowych

1 Źródła i detektory. I. Badanie charakterystyki spektralnej nietermicznych źródeł promieniowania elektromagnetycznego

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

Projekt procesora NIOSII w strukturze programowalnego układu logicznego CYCLONEII EP2C35F672C6 podłączenie i obsługa wyświetlacza LCD.

ORVALDI ATS. Automatic Transfer Switch (ATS)

Scalony analogowy sterownik przekształtników impulsowych MCP1630

ZAPRASZAMY NA NASZE AUKCJE SCIGANY81 (c) Copyright

Transkrypt:

PROJEKTOWANIE ENERGOOSZCZĘDNYCH SYSTEMÓW WBUDOWANYCH ĆWICZENIE 4 LOW ENERGY TIMER, BURTC Katedra Elektroniki AGH

1. Low Energy Timer tryb PWM Modulacja szerokości impulsu (PWM) jest często stosowana przy sterowaniu silnikami DC, jasnością źródła światła, etc. Do tego celu można użyć liczników z zaimplementowaną funkcją PWM w które wyposażone są mikrokontrolery. Podstawowa zasada działania PWN przedstawiona jest na rysunku 1. Rys. 1. Sposób generowania impulsów o zmiennej szerokości Za pomocą rejestru TOP ustawia się okres impulsu, natomiast rejestrem porównawczym (CC lub COMP) reguluje się szerokość impulsu. W naszym przypadku w mikrokontrolerze EFM32 do wygenerowania impulsów o zmiennej szerokości można użyć licznika Low Energy Timer (LETIMER), który pozwala na znaczną optymalizację zużycia energii podczas pracy w trybie PWM. W celu przetestowania działania licznika należy otworzyć projekt Low Energy Timer dla płytki STK-3700 (AN0026). Kod pętli main jest następujący: 1. /******************************************************************//** 2. * @brief Main function 3. * Main is called from iar_program_start, see assembly startup file 4. *********************************************************************/ 5. int main(void) 6. { 7. /* Align different chip revisions */ 8. CHIP_Init(); 9. 10. /* Initialize LETIMER */ 11. LETIMER_setup(); 12. 13. //---------------------------------------------------------------------- 14. // THE INTERRUPT IS SIMPLY TO DECREASE THE VALUE OF COMP1 TO VARY THE PWM DUTY CYCLE 15. //---------------------------------------------------------------------- 16. /* Enable underflow interrupt */ 17. LETIMER_IntEnable(LETIMER0, LETIMER_IF_UF); Katedra Elektroniki AGH 2/5

18. 19. /* Enable LETIMER0 interrupt vector in NVIC*/ 20. NVIC_EnableIRQ(LETIMER0_IRQn); 21. 22. while while (1) 23. { 24. /* Go to EM2 */ 25. EMU_EnterEM2(false); 26. } 27.} Algorytm działania powyższego kodu jest następujący: konfigurowany jest licznik LETIMER, aktywowane zostaje przerwanie od porównania (underflow) i na końcu układ wchodzi w tryb energetyczny EM2. Licznik LETIMER posiada 2 rejestry porównawcze COMP0 i COMP1. Licznik ten zlicza w dół. Począwszy od COMP0 (#define COMPMAX 500). Rejestr porównawczy COMP1 również ustawiony jest początkowo na COMPMAX 500. Przy każdym przerwaniu od porównania wykonuje się następujący kod: 1. /*********************************************************************//** 2. * @brief LETIMER0_IRQHandler 3. * Interrupt Service Routine for LETIMER 4. ************************************************************************/ 5. void LETIMER0_IRQHandler(void) 6. { 7. /* Clear LETIMER0 underflow interrupt flag */ 8. LETIMER_IntClear(LETIMER0, LETIMER_IF_UF); 9. 10. /* If the value of comp1 is over 0, decrement it 11. or bring comp1 back to COMPMAX (500) */ 12. if(comp1!= 0) 13. comp1--; 14. else 15. comp1 = COMPMAX; 16. 17. /* Write the new compare value to COMP1 */ 18. LETIMER_CompareSet(LETIMER0, 1, comp1); 19.} Zatem przy każdym impulsie następuje dekrementacja rejestru porównawczego COMP1 powodująca płynną zmianę szerokości impulsu. Przy COMP1 równym 0 następuje przepisanie wartości początkowej (COMPMAX). W sprawozdaniu proszę o wyliczenie wartości teoretycznej okresu wysyłania impulsów na podstawie częstotliwości użytego zegara oraz wartości COMPMAX. Sygnał PWM generowany jest na pinie PD6. Za pomocą oscyloskopu proszę zaobserwować i umieścić w sprawozdaniu sygnał PWM. Proszę zmierzyć okres i porównać z obliczeniami teoretycznymi. Lokalizacja pinu PD6 na płytce STK3700 jest zaznaczona na rysunku 2. Katedra Elektroniki AGH 3/5

Rys. 2. Schemat wyprowadzeń płytki STK3700 Istnieje również inna możliwość sprawdzenia poprawności generowania sygnału PWM za pomocą znajdującej się na płytce STK diody LED (LED0 lub LED1). Diody podłączone są pod piny PE1 oraz PE2. Za pomocą kabelka proszę połączyć pin PD6 z jednym z pinów diody. W sprawozdaniu proszę przedstawić swoje obserwacje, nt. jak zmienia się światło emitowane przez diodę sterowaną sygnałem PWM. Dodatkowo w sprawozdaniu proszę przedstawić wykres zużycia prądu przez mikrokontroler podczas pracy (wykorzystać Energy Profiler) oraz zaznaczyć w których momentach znajduje się on w trybie energetycznym EM2 oraz w którym momencie następuje przerwanie z licznika LETIMER. Na oscyloskopie proszę również zaobserwować i umieścić w sprawozdaniu kształt sygnału z pinu PD7. Co to jest za sygnał i jak jest on generowany? Proszę o takie zmodyfikowanie kodu, aby zamiast licznika LETIMER został użyty zwykły licznik TIMER/COUNTER. Przy zachowaniu takiej samej funkcjonalności proszę przedstawić w sprawozdaniu wykres poboru prądu przez mikrokontroler i porównać go z poprzednim wykresem. 2. Backup Real Time Counter (BURTC) Ciekawą funkcjonalnością cechuje się moduł BURTC w mikrokontrolerach serii Giant Gecko. Po ustawieniu odpowiedniego czasu w zegarze możemy aktywować domenę zasilania backup. Może ona byś zasilana przez zapasową baterię (lub inne źródło zasilania) lub nawet zwykły kondensator. Przy zaniku podstawowego zasilania (domena VMCU) do jednego z rejestrów BURTC zostaje zapisany aktualny czas (tzw. timestamp) oraz uruchamiany zostaje licznik, który zasilany jest z domeny backup. W przypadku, gdy powróci zasilanie główne przed wyczerpaniem się zasilania backup można odczytać rejestr z timestamp em oraz aktualną wartość licznika. Znając częstotliwość zegara tego licznika możemy odzyskać aktualny czas. Katedra Elektroniki AGH 4/5

W celu przetestowania działania BURTC proszę skompilować oraz uruchomić na płytce STK3700 projekt Backup Power Domain (AN0041). Po uruchomieniu kodu proszę ustawić aktualny czas za pomocą przycisków PB0 oraz PB1. Następnie za pomocą suwaka znajdującego się w lewym dolnym roku płytki proszę wyłączyć zasilanie domeny VMCU i odczekać chwilę. Następnie za pomocą suwaka proszę powrócić do odpowiedniego zasilenia domeny VMCU i sprawdzić czy zegar wyświetla odpowiednią wartość. Proszę przeanalizować kod programu oraz wykres poboru energii podczas działania programu. Wnioski proszę przedstawić w sprawozdaniu. Dodatkowo, proszę o wyliczenie na jaki czas wystarczy w pełni naładowany kondensator zastosowany na płytce STK w domenie backup, aby można było odtworzyć zegar po utracie zasilania głównego. Katedra Elektroniki AGH 5/5