Mikroprocesor 8085: przerwania, funkcje i 7 faktów

Definicja przerwania:

„Przerwanie jest procesem generowania chwilowego zatrzymania podczas wykonywania programu i umożliwia urządzeniom peryferyjnym dostęp do mikroprocesora”

8085 architektura

Rodzaje przerwań:

Rodzaje przerwań w zależności od opóźnienia:

  • Maskowalne
  • Niemaskowalny

Rodzaje przerwań według grupowania:

  • wektor
  • Nie-wektorowe

Rodzaje przerwań według priorytetu:

  • PUŁAPKA
  • RST 7.5
  • RST 6.5
  • RST 5.5

Schemat blokowy przerwań 8085:

8085 Przerwanie
8085 przerwań

Co to jest maskowanie?

Maskowanie można zaimplementować dla 4 przerwań sprzętowych - RST 7.5, RST 6.5, RST 5.5 i INTR. Na tej figurze TRAP to NMI (niemaskowalne przerwanie).

Sam RST 7.5 ma F / F do rozpoznawania transmisji na krawędzi. Maskowanie przerwania można wykonać za pomocą instrukcji SIM. Dodatkowo oddzielne przerwanie umożliwia F / F jest dostępne do maskowania lub zezwalania na przerwania.

  • Przerwania maskowalne są domyślnie maskowane za pomocą sygnału resetowania.
  • Przerwanie można włączyć wykonując instrukcję EI. Tak więc, aby umożliwić przerwania, po uzyskaniu mikroprocesora instrukcja EI musi być zastosowana w mikroprocesorze 8085.
  • 3 przerwania RST mogą być zamaskowane przez załadowanie odpowiedniej odmiany słów w akumulacji i implementacji instrukcji SIM. Jest to znane jako maskowanie oprogramowania.
  • Wszystkie maskowalne przerwania są wyłączane po każdym rozpoznaniu przerwania. Dlatego konieczne jest każdorazowe wykonywanie instrukcji EI.
  • W sumie przerwania maskowalne można wyłączyć wykonując instrukcje DI. Instrukcja resetuje przerwanie włączające F / F w mikroprocesorze. W celu umożliwienia wykorzystywana jest instrukcja EI.

PUŁAPKA:

  • Jest to przerwanie niemaskowalne, więc nie trzeba go włączać i nie można go włączać ani wyłączać.
  • Jest dostępny dla użytkownika
  • Służy do sytuacji awaryjnych, takich jak awaria zasilania lub odcięcie zasilania itp.
  • Jest wyzwalany na krawędziach, a także wyzwalany poziomem, to znaczy i / p powinien iść wysoko i pozostać w tym stanie do potwierdzenia.
  • Pułapka ma wśród wszystkich najwyższy priorytet.

RST 7.5:

  • Jego priorytet jest tuż po TRAP.
  • Jest maskowalny w taki sposób, że możliwe jest zarówno działanie EI, jak i DI.
  • Jest pozwany za sytuację, której priorytetem jest tuż po sytuacji awaryjnej.
  • Jest to przerwanie wyzwalane zboczem dodatnim.
  • Może zostać wyzwolony bardzo krótkim impulsem.

RST 6.5:

  • Jego priorytet jest tuż po RST 7.5.
  • Inne specyfikacje są takie same jak w RST 7.5.

RST 5.5:

  • Jego priorytet jest tuż po RST 6.5.
  • Inne specyfikacje są takie same jak w RST 7.5.

WEWN:

  • INTR jest przerwaniem o najniższym priorytecie.
  • Jest to wyzwalane zarówno krawędzią, jak i poziomem.
  • Typ maskowalny i niewektorowany.
  • W tej sytuacji możliwe są zarówno EI, jak i DI.

Działanie INTR:

Sekwencja przepływu sygnału jest następująca, aby INTR osiągnął stan wysoki.

  1. 8085 uprawnia status INTR do realizacji dyspozycji.
  2. Jeśli sygnał INTR ma wartość 1, to 8085 zakończy swoją obecną instrukcję, a przerwanie w stanie aktywnym zostanie potwierdzone przez ACK przerwania.
  3. Następnie adres następnej instrukcji zostanie załadowany na stos i wykona otrzymaną instrukcję.

INTA:

  • Nie jest to przerwanie, które zostało właśnie użyte przez mikroprocesor wysłał potwierdzenie. Proces należy włączyć instrukcją.
  • W czasie t3 warunek pobrania kodu operacji, 8085 sprawdza wielokrotnie każdą instrukcję. Jeśli przerwanie stwierdzi, że mikroprocesor zakończy instrukcję wykonania i będzie gotowy do sekwencji restartu.
  • Sekwencja restartu resetuje przerwanie F / F i aktywną INTA po otrzymaniu sygnału.

Lokalizacje przerwania połączeń:

Lokalizacje połączeń pod numer 8085 to

PUŁAPKA- 0024

RST 7.5- 003C

RST 6.5- 0034

RST 5.5- 002C

Obsługa karty SIM (ustawienie maski przerwania):

2

SIM (Set Interrupt Mask) dla 8085 jest wyjaśnione w następujący sposób

M 5.5 - w zasadzie jest ustawiony na 1, aby zresetować maskę 5.5

M 6.5 - jest również ustawiony na 1, aby zresetować maskę 6.5

M 7.5 - jest również ustawiony na 1, aby zresetować maskę 7.5

MSE - zamaskować przerwanie

R 7.5 - resetuje RST 7.5 F / F

SDE - transmisja danych szeregowych ustawiona na 1

DARŃ - dane do wyjścia szeregowego do wysłania

WYJAŚNIENIE:

  • RST 7.5, 6.5 i 5.5 są przerwaniami maskowalnymi. Instrukcja EI i SIM używana do ich włączania.
  • BIT 0 do 2 służy do ustawiania lub resetowania maski dla RST 6.5, 7.5 i 5.5.
  • Jeśli bit jest ustawiony na 1, to przerwanie jest maskowane, tj. Wyłączone. Jeśli ustawione na 0, odpowiednie przerwanie jest włączone.
  • Jeśli bit 3 jest ustawiony na 1, aby maskować na bitach od 0 do 2.
  • BIT 4 to dodatkowa kontrola dla RST 7.5. Jeśli jest ustawiony na 1, RST 7.5 jest resetowany.
  • Bity 6 i 7 to szeregowe dane wyjściowe, gdzie bit 6 służy do włączania SOD, a bit 7 może być wysoki lub niski. Instrukcja DI wyłącza wszystkie przerwania.

ŻĄDANIE W TRYBIE OCZEKUJĄCYM:

Gdy obsługiwane jest 1 żądanie przerwania, mogą wystąpić inne przerwania powodujące oczekujące żądanie. Gdy jednocześnie występuje więcej niż 1 przerwanie, wówczas obsłużono przerwanie o wyższym priorytecie, a przerwanie o niższym priorytecie pozostaje w stanie oczekiwania.

8085 mikroprocesor ma dodatkową instrukcję zwaną RIM (Read Interrupt Mask), aby wykryć oczekujące przerwanie.

Obsługa RIM (resetowanie maski przerwania):

3

RIM (Read Interrupt Mask) dla 8085 jest wyjaśnione w następujący sposób

M 5.5:  Ten bit jest ustawiony na 1, jeśli zamaskowany jest RST 5.5. Bit 0 do 2 mógłby być użyty do maski przerwań z wykorzystaniem instrukcji RIM

M 6.5: Ten bit jest ustawiany na 1, jeśli zamaskowany jest RST 6.5.

M 7.5: Ten bit jest ustawiany na 1, jeśli zamaskowany jest RST 7.5.

IE:  Jest ustawiony na 1, jeśli wszystkie przerwania są włączone.

I 5.5: Jest ustawiony na 1, gdy RST 5.5 jest w stanie oczekiwania.

I 6.5: Jest ustawiony na 1, gdy RST 6.5 jest w stanie oczekiwania.

I 7.5:  Jest ustawiony na 1, gdy RST 7.5 jest w stanie oczekiwania.

Identyfikator:  Szeregowe dane wejściowe; dla celów wejściowych będzie to 1 lub 0.

Przerwania wektorowe:

TRAP, RST 7.5, RST 6.5, RST 5.5 (lokalizacja wywołania).

4
5
6

PRZERWANIE OPROGRAMOWANIA VS PRZERWANIE SPRZĘTOWE:

         Przerwania oprogramowania    

To są instrukcje oprogramowania, gdy są wykonywane, CPU rozgałęzia się do ISR.

Są wolniejsze niż przerwania sprzętowe.

 
Przykłady - RST 0, RST 1, RST 2 itd.
        Przerwania sprzętowe    

Są to fizyczne dane wejściowe z urządzeń zewnętrznych, które powodują przejście procesora do ISR.

  Są szybsze niż przerwania programowe.  


Przykłady - TRAP, RST 7.5 itp.

Co to jest stos?

Stos

Stos w 8085 mikroprocesor to zbiór lokalizacji pamięci w pamięci do odczytu i zapisu określony przez programistę w programie głównym. Te lokalizacje pamięci są wykorzystywane do chwilowego przechowywania danych binarnych podczas kodowania.

Inicjacja stosu jest definiowana w programie przez wykonanie podstawowej instrukcji ładowania, takiej jak LXI SP. To generalnie ładuje szesnastobitowy adres pamięci do rejestru SP.

Rodzaje stosu:

  1. PUSH
  2. MUZYKA POP

PCHAĆ - W trakcie wykonywania PUSH jest wymagane, aby rozwiązać problem z pewnym rejestrem, ponieważ rejestry są warunkiem wstępnym do dodatkowego wykonania w następnym stanie. Te treści są przenoszone do określonej lokalizacji pamięci przez specjalny rejestr funkcji nazywany PUSH.

Przykład-

                LXI SP, 2099 H.

               LXI H, 42F2 H.      

               PUSH H.

  1. Ładuje zawartość 2099H z rejestrem SP, który jest zarezerwowany w pamięci do odczytu i zapisu jako stan, a lokalizacja zaczyna się od 2098H w ruchu w górę do tymczasowego przechowywania.
  2. LXI H, 42F2H opisuje ładowanie pary HL, tj. (42) jest ładowane w H, a F2 jest ładowane w L.
  3. PUSH H wskazuje, że zawartość H, tj. 42 przechowywana w 2098H, a zawartość L, tj. F2, jest przechowywana w 2097 H.

MUZYKA POP - Po zakończeniu tej operacji zawartość, która jest zapisana w tymczasowym rejestrze, jest przenoszona z powrotem do pamięci głównej za pomocą POP.

 Przykład -

                          LXI SP, 2099 H.

                          LXI H, 42F2 H.

                          PUSH H.

                          LICZNIK OPÓŹNIEŃ

                          POP H

Zawartość pary rejestrów HL nie jest niszczona. W zawartości licznika programu dostępny jest licznik opóźnień. Zawartość najwyższego miejsca na stosie wskazywana przez SP pojawia się w rejestrze L, a SP wzrośnie o 1.

Zawartość szczytu stosu, tj. 2097, jest przesuwana do 2098 i 2099 o 1 wcielenie, a zawartość tymczasowego rejestru przenosi się do rejestru głównego.

Więcej o mikroprocesorze 8085 kliknij tutaj

Zostaw komentarz