|
 |
Procedure Seriali |
SetInt0C - Fasi preliminari 5/6
[195 di 403] |
- Gestione degli eventi seriali con la Tecnica dell'Interruzione |
|
5.2
Procedura SetInt0C:
inizializzazione del
Controller PIC8259 [5 di
6] |
 | La procedura di predisposizione per un progetto chiamato a
garantire servizio ad una richiesta d'interruzione IRQ da parte di un
qualunque dispositivo hardware deve sempre terminare con un intervento sul
Registro di Abilitazione Interruzioni HW [0021H] del
controller delle
interruzioni (PIC 8259A);
ciascuno dei suoi 8 bit è associato ad uno dei dispositivi potenzialmente in
grado di interrompere il processore, autorizzandoli se il bit corrispondente è
posto a 0. |
 | Nella norma
i livelli IRQ0 e
IRQ1, generati rispettivamente dal
Timer di Sistema e
dalla
Tastiera, sono sempre abilitati per cui troveremo bit0=0
e bit1=0;
il codice necessario per abilitare il PIC 8259A
a riconoscere anche IRQ4, generata da COM1 o COM3,
è mostrato qui di seguito; |
 | Naturalmente per servire la richiesta
IRQ3 generata da
COM2
o COM4, l'istruzione
AND
dovrà portare a 0 il bit3
invece del bit4. |
 | In ogni caso, per le
ragioni di buona programmazione, è saggio salvare lo stato originale di questo
Registro in una variabile locale, per per
poter ripristinare in uscita le stesse condizioni trovate in ingresso; nei nostri
progetti la variabile è un byte, [Dep8259],
aggiunto nella zona delle variabili, all'inizio del sorgente ASM: |
©
2001-2010 - Studio Tecnico
ing. Giorgio OBER
Tutti i diritti sono riservati
|