Czym się różnią te dwa scenariusze wywoływania przerwania z linii zewnętrznej? Rozumiem że wyzwalanie zboczem dotyczy opadającego zbocza, a poziom - poziomu niskiego. Jaka jest zatem różnica? Czy możliwe jest wywołanie przerwania przy zboczach opadających i rosnących bez dodatkowych układów logicznych?
najlepiej sprawdz na emulatorze, przy wyzwalaniu poziomem moze nastapic sytuacja taka: program w petli glownej cos tam sobie dlubie... pojawia sie zadanie przerwania, proc wykonuje procedurke koniec procedury, wykonywane jest kolejne polecenie po tym na ktorym wystapilo zadanie przerwania ale ale.... na linii INTx nadal jest L czyli mamy zadanie przerwania i tak do czasu az ktos laskawie raczy zdjac zapomniany sygnal
Przerwanie zostanie wywolanie przez ujemne zbocze jezeli w poprzednim cyklu zegarowym stan na nozce bym wysoki, a w aktualnym jest niski. Potem stan niski moze pozostac bez zmian, ale przerwanie nie zostanie wywolane powtornie.
Przy wyzwalaniu zboczem jak przyjdzie jeden "ujemny impuls" to przerwanie wywołane zostanie tylko raz, niezależnie od długości impulsu.
Przy wyzwalaniu poziomem niskim, jeśli impuls niski będzie trwał dłużej niż czas wykonania obsługi przerwania, to zaraz po wyjściu z procedurki przerwania (kiedy przerwanie jest odblokowywane) wywołane zostanie następne przerwanie... a potem następne ... i następne.
W praktyce powoduje to zupełne zablokowanie pracy programu głównego na czas trwania tego niskiego poziomu - procek "kręci się w kółko" w procedurze obsługi przerwania. Jak używasz też innych przerwań, to zablokuje ci też obsługę tych innych o niższym priorytecie.
niezupelnie proc wykona jedno polecenie po wyjsciu z obslugi przerwania, dopiero wtedy ponownie wejdzie w przerwanie, w praktyce petla glowna zostanie spowolniona niemal do zerowej predkosci ale dzialac bedzie
Bo impuls ma trwac az/tylko tak dlugo az przerwanie jest nieobsluzone! W procedurze obslugi przerwania robisz cos co impuls kasuje.
Ale dzieku temu mozna podlaczyc kilka zrodel przerwan do jednego pina i sie nie zastanawiac czy przy jakiejs okazji nie zostanie przerwanie zgubione - np drugi impuls nadejdzie w trakcie obslugi przerwania ...
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.