158 14. Licznik T2 w 8052 i SAB 80515/535
13. W jaki sposób programowo odczytywać stan pracującego, 16-bitowego licznika, aby odczytana wartość była zawsze właściwa ?
14. Które zbocza sygnałów zewnętrznych, narastające czy opadające, są zboczami aktywnymi w trybie 0 wpisu wartości chwilowej licznika T2 w mikrokontrolerze SAB 80515/535 ?
15. Jakie jest opóźnienie między momentem wystąpienia aktywnego zbocza sygnału zewnętrznego lub instrukcji wpisującej stan licznika T2, a zmianą zawartości rejestru CCx ?
16. Opierając się na rysunku 14-7 przedstaw sposób pomiaru czasu trwania zera logicznego sygnału doprowadzonego do linii portu P1.0 i Pi l.
17. Jak zmienić program pomiaru czasu trwania impulsu (jedynki logicznej) aby w czasie pomiaru możliwe było przepełnienie licznika T2 ?
\
W układach mikroprocesorowych zasilanych z baterii lub akumulatorów dąży się do minimalizacji mocy pobieranej przez układ, by okres po którym należy wymienić lub zregenerować źródło zasilania był jak najdłuższy. Może się również okazać, że w układy mikroprocesorowe nadzorują obiekty, na przykład systemy grzewcze, których parametry zmieniają się wolno w stosunku do szybkości przetwarzania danych przez procesor. W sytuacjach awaryjnych, przy zaniku napięcia w sieci energetycznej, należy przejść na zasilanie rezerwowe, które powinno przynajmniej umożliwić zachowanie podstawowych danych tak, by po ponownym włączeniu zasilania głównego systemy mikroprocesorowe mogły podjąć przerwaną pracę. Podobnych sytuacji jak podane wyżej, wymagających od procesora zmniejszenia mocy zasilania, może być znacznie więcej. Dlatego producenci mikrokontrolerów wprowadzili różne mechanizmy umożliwiające obniżenie mocy pobieranej przez mikrokontroler.
Stosowane metody na obniżanie mocy pobieranej przez procesor mogą być różne, poczynając od zmniejszenia częstotliwości oscylatora - im niższa częstotliwość tym niższy prąd zasilania - poprzez wyłączenia kolejnych układów struktury wewnętrznej procesora, aż po całkowite wyłączenie czynności procesora - pozostaje tylko podtrzymanie zawartości rejestrów i pamięci wewnętrznej. Również różne mogą być systemy zabezpieczeń przed przypadkowym wyłączeniem procesora. Różnice mogą występować między elementami tej samej rodziny lub nawet dla takich samych typów ale wykonanych w różnych technologiach. Opisane poniżej tryby redukcji mocy zasilania mikrokontrolerów dotyczą tylko wersji CMOS - 80C51 i 80C515/535, gdyż są one stosowane znacznie częściej niż wersje HMOS.
W mikrokontrolerach 80C51 i 80C515/535 występują dwa tryby obniżenia poboru mocy:
• tryb „uśpienia" (Idle) polegający na tym, że zostaje wyłączona jednostka centralna procesora - nie są wykonywane rozkazy. Natomiast mogą pracować pozostałe układy struktury wewnętrznej - liczniki, port szeregowy, przetwornik A/C itp., a porty równoległe zachowują swój stan. W mikrokontrolerach 80C515/535 zostaje też zatrzymany Watchdog. Wyprowadzenie procesora ze stanu uśpienia może nastąpić albo przez wywołanie przerwania albo przez zerowanie procesora. Ponieważ w trybie uśpienia pracuje oscylator dlatego na uaktywnienie procesora wystarczą dwa cykle maszynowe.
• tryb wyłączenia (Power Down) polegający na całkowitym zatrzymaniu wszystkich funkcji mikrokontrolera łącznie z oscylatorem. Może być podtrzymana zawartość pamięci wewnętrznej oraz rejestry SFR, w tym również porty równoległe, przy czym napięcie podtrzymujące może mieć niż-