Mikroprocesorowa Ośla łączka
Rys. 74
Do naszego zegara można dodać obwód z diodami zwykłymi (np. 1N4148, 1N4001) lub lepiej Schottky’ego według rysunku 73. Do kontroli napięcia zasilacza zatrudniliby-
Re-
Przerwania INTO, INT1
Przerwania zostały wstępnie omówione w EdW I 11/2002 na stronie 39 oraz w EdW 4/2003 na| stronach 39, 40 oraz 45...48. Jak już wiesz, procesor ‘2313 ma dwa wejścia przerwań zewnętrznych. Funkcję tę mogą pełnić końcówki PD.2| i PDA, czyli nóżki 6 i 7. Aby skorzystać z przerwań zewnętrznych, trzeba je odblokować, | podobnie jak inne przerwania:
Enable Interrupts 'zezwolenie globalne Enable INTO 'odblokowanie INTO
Enable INT1 'odblokowanie INT1
W programie trzeba też umieścić informację I określającą, jaką procedurę ma wykonać procesor | po zgłoszeniu przerwania, na przykład:
ON INTO Etykietka
Nasz mikroprocesor podczas pracy pobiera około 7mA prądu. Do tego dochodzi dużo większy prąd, rzędu lOOmA, zużywany przez wyświetlacze. Dla zasilacza nawet kilkaset miliamperów to żaden problem. Ale jeśli na naszym mikroprocesorze chcielibyśmy zrealizować naprawdę użyteczny zegar, należałoby przewidzieć możliwość zaniku napięcia sieci i dodać obwód zasilania z baterii rezerwowej. Oczywiście w takim przypadku przy zasilaniu bateryjnym należałoby wygasić wyświetlacz, a jeśli to możliwe, zmniejszyć pobór prądu przez sam procesor. Jest to jak najbardziej możliwe i korzystne. Procesor może zostać wprowadzony w stan jałowy (Idle), gdy pobór prądu jest po-nadtrzykrotnie mniejszy. W niektórych zastosowaniach można i warto wprowadzić go w stan niemal całkowitego wyłączenia (Power Down), gdy pobór prądu jest jeszcze mniejszy, wręcz pomijalny. Więcej informacji na temat tych pożytecznych trybów pracy znajdziesz w ELEMENTARZU i Technikaliach.
śmy niewykorzystaną końcówkę PD.2 zystor Rx jest potrzebny, żeby zegar wykrywał brak napięcia z zasilacza. Zanik napięcia z zasilacza zaowocuje pojawieniem się stanu niskiego na rezystorze Rx i końcówce PD.2. W zasadzie końcówka PD.2 powinna pracować wtedy jako wejście pływające, niepodciągnięte, ale niestety, w naszej płytce na stale dołączony jest doń rezystor R23 wymuszający tam stan wysoki. Nawet gdyby tego rezystora nie było, a wejście to było podciągnięte, po zaniku napięcia zasilacza z końcówki PD.2 wypływałby pewien niezbyt duży prąd, co nie jest zaletą takiego rozwiązania. W każdym razie zanik napięcia z zasilacza oznacza pojawienie się stanu niskiego na końcówce PD.2.
Można też dodać obwód według rysunku rysunku 74. gdzie PD.2 będzie wejściem (bez znaczenia czy pływającym, czy podciągniętym).
Rys. 73
Etykietka:
Return
W przypadku przerwań zewnętrznych, oprócz powyższych standardowych kroków, trzeba też skonfigurować przerwanie(-a) zewnętrzne, czyli określić, na co ma reagować końcówka wejściowa. Mamy tu trzy możliwości:
- reakcja na rosnące zbocze
- reakcja na zbocze opadające
- reakcja na pojawienie się stanu niskiego.
W BASCOM-ie konfiguracja jest niezmiernie | prosta:
CONFIG INTx = reakcja
gdzie x trzeba zastąpić liczbą 0 lub 1, a zamiast | reakcja trzeba wpisać jedno z określeń:
RISING |
' zbocze |
rosnące |
FALLING |
' zbocze |
opadające |
LOW LEVEL |
'poziom |
niski |
Jeśli przerwanie zewnętrzne zostanie odblokowane, ale w programie nie zostanie umieszczone polecenie konfiguracji, procesor będzie reagował na poziom niski - w Technikaliach znajdziesz bliższe wyjaśnienie, dlaczego tak jest.
Na pierwszy rzut oka może się wydawać, że reakcja na zbocze opadające i na poziom niski to to samo. W rzeczywistości różnica w działaniu jest znaczna. Przy reakcji na zbocze opadające pojawienie się na trwale stanu niskiego spowoduje tylko jednorazową reakcję, czyli jednokrotne wykonanie procedury obsługi (analogicznie przy czynnym zboczu rosnącym procedura obsługi
Przerwaniom zewnętrznym INTO, 1NT1 należy poświęcić więcej uwagi niż innym przerwaniom, ze względu na ich najwyższy priorytet (patrz EdW 4/2003 str. 40), możliwości („budzenie” procesora także ze stanu Power Down) oraz konieczność dodatkowej konfiguracji (określenie, na co ma reagować wejście). System przerwań procesora 90S2313 pokazany byl w uproszczeniu w EdW 4/2003 na stronie 39. O sposobie działania obwodów przerwań zewnętrznych decydują po dwa dodatkowe bity w rejestrze MCUCR. Są
to cztery młodsze bity, oznaczone ISC11, ISC10,1SC01, ISC00. W ELEMENTarzu podane było tylko, że można za ich pomocą wybrać, na co ma reagować dany obwód przerwania zewnętrznego. Teraz na rysunku H możesz zapoznać się ze szczegółami. Pokazałem Ci na nim trzy możliwe przypadki. Zwróć uwagę, że przy wyzwalaniu zboczem dodatnim i ujemnym, bit flagi tego przerwania działa tak samo, jak w przypadku innych przerwań: czynne zbocze na końcówce
H
H
O
a
z
*
>
r
Elektronika dla Wszystkich Czerwiec 2003 39