Serwis Edukacyjny
w I-LO w Tarnowie
obrazek

Materiały dla uczniów liceum

  Wyjście       Spis treści       Wstecz       Dalej  

obrazek

Autor artykułu: mgr Jerzy Wałaszek
Konsultacje: Wojciech Grodowski, mgr inż. Janusz Wałaszek

©2021 mgr Jerzy Wałaszek
I LO w Tarnowie

obrazek

Mikrokontrolery

ATtiny20

Preskaler

obrazek

Educational and Non-Profit Use of Copyrighted Material:

If you use Microchip copyrighted material solely for educational (non-profit) purposes falling under the “fair use” exception of the U.S. Copyright Act of 1976 then you do not need Microchip’s written permission. For example, Microchip’s permission is not required when using copyrighted material in: (1) an academic report, thesis, or dissertation; (2) classroom handouts or textbook; or (3) a presentation or article that is solely educational in nature (e.g., technical article published in a magazine).

https://www.microchip.com/about-us/legal-information/copyright-usage-guidelines

SPIS TREŚCI
Podrozdziały

obrazek

Oba liczniki 0 i 1 używają wspólnie tego samego modułu preskalera, lecz każdy z nich może posiadać indywidualne ustawienia. Poniższy opis odnosi się do obu tajmerów/liczników.

Tn jest używane jako nazwa ogólna, n = 0, 1. Timer/Licznik może być taktowany bezpośrednio przez zegar systemowy (przez ustawienie bitów CSn[2:0] = 1). Daje to najszybsze działanie z maksymalną częstotliwością timera/licznika równą częstotliwości zegara systemowego (fCLK_I/O). Alternatywnie jako źródło zegarowe można wykorzystać jedno z czterech wyjść z preskalera. Preskalowany zegar posiada jedną z częstotliwości fCLK_I/O / 8, fCLK_I/O / 64, fCLK_I/O / 256 lub fCLK_I/O / 1024.

Zerowanie preskalera

Preskaler pracuje niezależnie od modułu wyboru zegara dla timera/licznika i jest współdzielony z timerem/licznikiem Tn. Ponieważ na preskaler nie wpływa wybór zegara dla timera/licznika, stan preskalera może powodować różne implikacje w sytuacjach, gdzie jest używany zegar preskalera. Jeden z przykładów artefaktów preskalera występuje, gdy timer zostaje uaktywniony i taktowany przez przez preskaler (CS2:0 = 2, 3, 4 lub 5). Liczba cykli zegarowych od momentu uaktywnienia timera do pierwszego zliczenia może wynieść od 1 do N + 1 cykli zegara systemowego, gdzie N jest równe dzielnikowi preskalera (8, 64, 256 lub 1024). Możliwe jest użycie zerowania preskalera do synchronizowania timera/licznika z wykonywaniem programu.
Na początek:  podrozdziału   strony 

Zewnętrzne źródło zegarowe

obrazek

Źródło zewnętrznego sygnału zegarowego przyłożonego do końcówki T0 może być używane jako zegar dla timera licznika (clkTn). Stan końcówki T0 jest próbkowany w każdym cyklu zegara systemowego przez układ logiczny synchronizacji końcówki. Zsynchronizowany (próbkowany) sygnał jest następnie przekazywany do detektora zbocza. Poniższy rysunek pokazuje schemat blokowy układu logicznego synchronizacji i detektora zbocza dla końcówki T0. Rejestry są taktowane przy zboczu dodatnim (0 → 1) wewnętrznego zegara systemowego (clkI/O). Przerzutnik latch jest przezroczysty w górnym okresie wewnętrznego zegara systemowego.

Detektor zbocza generuje jeden impuls clkT0 dla każdego dodatniego (CS2:0 = 7) lub ujemnego (CS2:0 = 6) zbocza, które wykrywa.

obrazek

Układ logiczny synchronizacji i detektora zbocza wprowadza opóźnienie od 2,5 do 3,5 cykli zegara systemowego od momentu pojawienia się zbocza na końcówce T0 do aktualizacji licznika. Włączanie i wyłączanie wejścia zegarowego musi być wykonywane, gdy T0 jest stabilne przynajmniej przez jeden cykl zegara systemowego, inaczej istnieje ryzyko generacji fałszywego impulsu zegarowego timera/licznika. Każdy półokres zewnętrznego zegara musi być dłuższy od jednego cyklu zegara systemowego, aby zapewnić poprawne próbkowanie. Należy zagwarantować, aby częstotliwość zegara zewnętrznego była mniejsza od połowy częstotliwości zegara systemowego (fExtClk < fclk_I/O / 2) przy wypełnieniu 50%/50%. Ponieważ detektor zbocza wykorzystuje próbkowanie, to maksymalna częstotliwość zegara zewnętrznego, który może poprawnie wykryć, wynosi połowę częstotliwości próbkowania (częstotliwość Nyquista). Jednakże z powodu wahań częstotliwości zegara systemowego oraz jego wypełnienia spowodowanych przez tolerancje oscylatora (kryształu, rezonatora i kondensatorów), zaleca się, aby maksymalna częstotliwość źródła zegara zewnętrznego była mniejsza od fclk_I/O / 2,5.

Zewnętrzne źródło zegarowe nie może być preskalowane.

obrazek

Na początek:  podrozdziału   strony 

Opis rejestrów

GTCCR – General Timer/Counter Control Register – Ogólny rejestr sterujący timerów/liczników

Bit 7 6 5 4 3 2 1 0  
0x27 TSM - - - - - - PSR GTCCR
Zapis/Odczyt Z/O O O O O O O Z/O  
Wartość początkowa 0 0 0 0 0 0 0 0  

Bit 7 – TSM: Timer/Counter Synchronization Mode – Tryb synchronizacji timera/licznika

Zapis logicznej jedynki do bitu TSM aktywuje tryb synchronizacji timera/licznika. W trybie tym wartość wpisana do bitu PSR zostaje utrzymana, co daje ciągły sygnał resetu preskalera. Zapewnia to, iż timer/licznik zostaje zatrzymany i można go skonfigurować bez ryzyka zwiększania jego zawartości podczas konfiguracji. Gdy bit TSM zostaje zapisany stanem logicznym zera, bit PSR jest zerowany sprzętowo i timer/licznik rozpoczyna zliczanie.

Bit 0 – PSR: Prescaler 0 Reset Timer/Counter 0 – Resetowanie preskalera dla timera/licznika 0

Gdy ten bit ma wartość jeden, resetowany jest preskaler timerów/liczników. Ten bit normalnie zostaje natychmiast wyzerowany sprzętowo z wyjątkiem przypadku, gdy bit TSM jest ustawiony na 1.

Na początek:  podrozdziału   strony 

Zespół Przedmiotowy
Chemii-Fizyki-Informatyki

w I Liceum Ogólnokształcącym
im. Kazimierza Brodzińskiego
w Tarnowie
ul. Piłsudskiego 4
©2021 mgr Jerzy Wałaszek

Materiały tylko do użytku dydaktycznego. Ich kopiowanie i powielanie jest dozwolone
pod warunkiem podania źródła oraz niepobierania za to pieniędzy.

Pytania proszę przesyłać na adres email: i-lo@eduinf.waw.pl

Serwis wykorzystuje pliki cookies. Jeśli nie chcesz ich otrzymywać, zablokuj je w swojej przeglądarce.
Informacje dodatkowe.