Mikroprocesorowa Ośla łączka M1
Mikroprocesorowa Ośla łączka M1
programowe zerowanie licznika
Reset Watchdog
do obwodu zerowania mikroprocesora
/U
Ćwiczenie 21 Centralka alarmowa, czyli
watchdog w swej klasycznej roli
Watchdog przewidziany jest głównie do kontroli, czy aby program nie wpadł w martwą pętlę i przestał pracować poprawnie. Jeśli tak się stanie, watchdog po prostu zre-setuje procesor i program zacznie poprawną pracę od początku. Watchdog bywa też wykorzystywany do obniżania poboru prądu - procesor jest okresowo „budzony” przez watchdoga do pracy, a po każdorazowym wykonaniu zadania procesor przecho-| dzi w stan PowerDown i „śpi” aż do następnego resetu spowodowanego przez watchdoga.
Podstawowe zastosowanie oraz działanie watchdoga zostało opisane w EdW 11/2002 na stronie 45. Watchdog to w istocie licznik o dużej pojemności taktowany wewnętrznym oscylatorem RC, zupełnie niezależnym od rezonatora kwarcowego - patrz rysunek poniżej.
Przepełnienie licznika powoduje wyzerowanie (reset) mikroprocesora i rozpoczęcie pracy programu od początku. Gdy program pracuje poprawnie, okresowo zeruje licznik i reset nie następuje.
Po włączeniu zasilania oraz po resecie procesora watchdog jest wyłączony, więc aby z niego skorzystać, należy przede wszystkim skonfigurować go i włączyć. Długość cyklu zliczania można wybrać spośród kilku dostępnych wartości (czasów). Co istotne, : częstotliwość wewnętrznego oscylatora watchdoga nie jest precyzyjnie ustalona. Silnie zależy od napięcia zasilania i może ; zawierać się w granicach 300kHz..,1,6MHz. Występują też znaczne rozrzuty między
W dwóch najbliższych ćwiczeniach zajmiemy się centralką alarmową, a przy jej opracowaniu przyjrzymy się bliżej działaniu watchdoga i obwodów resetu. Naszym celem jest wykonanie na bazie naszej płytki testowej prawdziwej centralki alarmowej. Będzie ona miała dwie linie dozorowe LI, dołączoną do końcówki PD.5 oraz L2 - natychmiastową, dołączoną do końcówki PD.6. Do sterowania pracą centralki będzie służył ukryty wyłącznik, dołączony do końcówki PD. I (równolegle do przycisku S2). Przycisk S l wykorzystamy do kasowania pamięci alarmu. Podczas ćwiczeń układ będzie stale dołączony do komputera i z niego zasilany przez kabel programujący. Przykładowy sposób wykorzystania pokazany jest na rysunku 107.
Alarm wywołany przez którąkolwiek z linii na wyznaczony czas uruchomi syrenę, dołączoną do wyjścia Q2. Linie dozorowe pracują
UWAGA! Jeśli zgodnie z rysunkiem 107 dołączysz do zacisków PD.5, PD.6 linie dozorowe z czujnikami normalnie zwartymi, włączysz na stałe tranzystory T5, T6 i wyświetlacz W2. Przewodzące tranzystory T5, T6 mogą uniemożliwić zaprogramowanie procesora. Dlatego wyjątkowo w tym i następnym ćwiczeniu:
w prostym trybie i mogą zawierać różnorodne czujniki normalnie zwarte (NC) - podczas czuwania przez te linie płynie niewielki prąd, a przerwanie obwodu powoduje reakcję centralki. Aby linie działały w taki sposób, końcówki PD.5 i PD.6 procesora muszą pracować jako wejścia i to wejścia podciągnięte do plusa zasilania. Do „silnego” podciągnięcia można wykorzystać obecność na płytce
L2 - natychmiastowa
Rys. 107.
jednak bliższej informacji na te tematy. W każdym razie trzeba pamiętać, że jest to kiepskiej jakości oscylator RC.
Przebieg z tego oscylatora podawany jest na licznik o programowalnej długości cyklu. Wszystkie bity sterujące pracą watchdoga zawarte są w rejestrze o nazwie WDTCR (Watchdog Timer Control Register). Bity WDP2...WDP0 wyznaczają pojemność licznika (długość cyklu) zgodnie z tabelą 1:
Ustawienie bitu o nazwie WDE (Watchdog Enable) zezwala na pracę watchdoga - w BASCOM-ie wykonuje to
Schemat wewnętrznych obwodów watchdoga pokazany jest na rysunku A, a na rysunku B wyróżnionych jest pięć bitów rejestrów I/O odpowiedzialnych za jego pracę.
Watchdog w żadnym wypadku nie może służyć do precyzyjnego odmierzania czasu, ponieważ częstotliwość wewnętrznego oscylatora RC silnie zależy od napięcia zasilania i temperatury struktury procesora. Rysunek C pokazuje typowe zależności w tym zakresie. Do tego dochodzą nieuniknione rozrzuty między egzemplarzami oraz słaba stabilność długoczasowa - w karcie katalogowej brak
32 Grudzień 2003 Elektronika dla Wszystkich