Sw3.6-m8-1.2-Slajd22

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania

System przerwań

System przerwań


Mikrokontroler współpracuje z wieloma urządzeniami zewnętrznymi, które wymagają obsługi ze strony mikrokontrolera. W systemach pracujących w czasie rzeczywistym definiuje się maksymalny dopuszczalny czas oczekiwania urządzenia na obsługę. Dzięki mechanizmowi przerwań mikrokontroler jest wstanie zapewnić obsługę żądań zgłaszanych przez urządzenia zewnętrzne.

Na sygnał przerwania pochodzący od urządzenia zewnętrznego mikrokontroler przerywa aktualnie wykonywany program i przechodzi do procedury obsługi przerwania. Po jej zakończeniu mikrokontroler wraca do poprzednio realizowanego programu. Oprócz przerwań wywoływanych przez urządzenia zewnętrzne, mikrokontrolery obsługują sytuacje nadzwyczajne powstające w wyniku realizacji programu lub wynikające ze specyficznych warunków pracy bloków funkcjonalnych układu.

Sytuacje wyjątkowe to zdarzenia o największym znaczeniu dla poprawnego działania systemu, których obsługi nie można odkładać (np. wystąpienie dzielenia przez zero lub żądanie obsługi przerwania przez urządzenie zewnętrzne przyłączone do wejścia przerwań niemaskowalnych).

Przerwania maskowalne są generowane przez urządzenia peryferyjne wbudowane w układ scalony mikrokontrolera lub przez urządzenia przyłączone do mikrokontrolera z zewnętrz. Mogą być blokowane (maskowane) przez ustawienie specjalnego bitu lub bitów nazywanych maską przerwań. Maski te są zwykle ustawiane w wydzielonym rejestrze specjalnym SFR. Przerwania programowe są wywoływane przez umieszczenie w programie rozkazu przerwania. Są zatem przerwaniami zaplanowanymi przez programistę. Pułapki tak jak przerwania programowe są rezultatem umieszczenia w programie rozkazu TRAP. Od przerwań programowych różnią się przeznaczeniem. Pułapki używane są bowiem najczęściej do śledzenia wykonywania programu w trakcie jego testowania.


<< Poprzedni slajd | Spis treści | Następny slajd >>