Sunteți pe pagina 1din 4

DR. ING. FIZ.

IOAN ALEODOR-DANIEL – BAZELE FUNCȚIONĂRII ȘI PROGRAMĂRII CALCULATOARELOR

17. Întreruperile microprocesorului 8085

141
DR. ING. FIZ. IOAN ALEODOR-DANIEL – BAZELE FUNCȚIONĂRII ȘI PROGRAMĂRII CALCULATOARELOR

Observaţie: – Microprocesorul are un bistabil IE = INTRERRUPT ENABLE de a


cărui stare depinde acceptarea tuturor întreruperilor mascabile:

0 după RESET sau după o instrucţiune


⇒ orice întrerupere mascabilă
IE = DI = DISABLE INTERRUPTS
este ignorată;
1 după o instrucţiune
⇒ întreruperile mascabile se
EI = ENABLE INTERRUPTS
acceptă dacă nu au fost
dezactivate individual.

– Acceptarea întreruperilor:

liniile active inclusiv pe – trebuie menţinute pe ”1” logic până la


PALIER : acceptarea lor de către CPU, altfel nu mai
(TRAP , RST 6.5 , RST 5.5 , sunt considerate;
INTR)

linia activă doar pe FRONT : – comandă intrarea de ceas a unui bistabil


(RST 7.5) de tip D care memorează apariţia sa chiar
dacă a fost dezactivată între timp.

– La acceptare, microprocesorul execută următoarele operaţii:

→ termină de executat instrucţiunea în curs;

→ dezactivează întreruperile mascabile executând o operaţie hardware


echivalentă cu instrucţiunea DI ;
→ salvează în stivă adresa de revenire (valoarea curentă a registrului PC);

→ generează hardware o operaţie echivalentă cu un apel de subrutină la o


adresă fixă (sau preia adresa de la un dispozitiv I/O în cazul INTR).

142
DR. ING. FIZ. IOAN ALEODOR-DANIEL – BAZELE FUNCȚIONĂRII ȘI PROGRAMĂRII CALCULATOARELOR

– Întreruperile mascabile cu adresă fixă pot fi dezactivate individual prin mascare cu


biţi “1” logic copiaţi din acumulator printr-o instrucţiune SIM = SET INTERRUPT MASK :

– Microprocesorul 8085 permite citirea stării sistemului de întreruperi prin


instrucţiunea RIM = READ INTERRUPT MASK , care încarcă în acumulator un octet cu
semnificaţia:

143
DR. ING. FIZ. IOAN ALEODOR-DANIEL – BAZELE FUNCȚIONĂRII ȘI PROGRAMĂRII CALCULATOARELOR

144

S-ar putea să vă placă și