Sw3.6-l2-1.2-Slajd4
Algorytm programu
Na samym początku należy dokonać obliczenia czasu trwania pojedynczego cyklu maszynowego mikrokontrolera. Przy założeniu, że mikrokontroler pracuje z częstotliwością x [Hz] wyznaczamy czas trwania cyklu maszynowego z zależności 12/x. Liczniki mikrokontrolera T0 i T1 pracując w trybie czasomierza zliczają wewnętrzne impulsy zegarowe z częstotliwością x/12, co jest odwrotnością obliczonego wcześniej okresu cyklu maszynowego. Aby więc przepełnić licznik T1 co jedną sekundę i generować w tym momencie przerwanie należy zliczyć x/12 impulsów. Jednak licznik pracujący w trybie 16-bitowym przepełnia się częściej niż co sekundę. Należy więc przepełniać licznik częściej niż co sekundę używając dodatkowej zmiennej – rejestru. Rejestr ten będzie inkrementowany wystąpieniem przepełnienia licznika T1. Do uaktywniania lub blokowania wybranych przerwań służy rejestr IE w obszarze SFR-ów. W rejestrze tym na odpowiedniej pozycji ustawia się bit maskujący przerwanie z licznika T1. Po resecie mikrokontrolera rejestr IE jest wyzerowany.
<< Poprzedni slajd | Spis treści | Następny slajd >>