Sezione

Indirizzi Base Registri Interni
Area Comunicazione BIOS Funzioni BIOS Funzioni DOS
Prefazione Capitolo 1 Capitolo 2 Schede
Libreria ASM Libreria MAC Palestra Progetti ASM
Info Download INDICE

Registri Interni

Home » Programma il Computer » Tutorial Assembly

Tutorial Assembly - Registri

  Messa a Punto - SERIALE

RICONOSCIMENTO INTERRUPT 1/4 [14 di 46] 

               

***** 03FAH / 02FAH / 03EAH / 02EAH - IN - Registro di Riconoscimento Interruzioni [1 di 4]

               

bulletIl terzo Registro dell'UART della porta seriale è utilizzato in tutte le versioni come Registro di Identificazione delle Interruzioni [i moderni UART 16550A (e successivi) utilizzano lo stesso indirizzo (in scrittura) anche per il controllo del buffer FIFO, ma di questo parleremo nella pagina successiva].
bulletSi tratta di un registro a sola lettura indispensabile per sapere se il processore ha attivato una procedura di servizio, in risposta alla richiesta di interruzione generata dalla porta seriale (UART), specificando contemporaneamente la causa che l'ha causata, certamente una delle 4 già coinvolte nella descrizione del Registro di Abilitazione delle Interruzioni [port_9].
bulletTutte le versioni utilizzano per questo scopo solo i 3 bit meno significativi; gli UART 16550A (e successivi) utilizzano anche i 3 bit più significativi, per il controllo del loro prezioso buffer FIFO.

 

bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 port_A 03FAH  -  02FAH  -  03EAH  -  02EAH
IIR Interrupt Identification Register  (lettura)
              0 0 = interruzione pendente: un evento ha richiesto servizio d'interruzione
1 = nessuna interruzione pendente
          x x   Indica (Interrupt ID) quale degli eventi interrompenti è attualmente in attesa di servizio:
11 = Receiver Line Status Interrupt, priorità 1, massima, errore in linea o break
10 = Received Data Available Interrupt, priorità 2, dato ricevuto pronto
01 = Transmit Holding Register Empty Interrupt, priorità 3, dato trasmesso
00 =
Modem Status Interrupt, priorità 4, minima, variazione segnali CD, RI, DSR o CTS
        0/1       0 = riservato, non utilizzato [8250/16450]
1 = TimeOut Interrupt Pending [16550A e successivi], insieme a bit2/bit1=10=priorità 2
1 = pochi bytes nel buffer FIFO e tempo scaduto per nuovi arrivi (timeout)
      0         riservato, non utilizzato, sempre a 0 logico
    0/1           0 = riservato, non utilizzato [8250/16450/16550A]
0 = buffer FIFO non abilitato = simulazione 8250 [solo 16750]
1 = buffer FIFO (a 64 bit) abilitato al funzionamento [solo 16750]
  0/1             0 = riservato, non utilizzato [8250/16450]
0 = buffer FIFO inutilizzabile, se bit7=1=FIFO abilitato [16550A e successivi]
1 = buffer FIFO utilizzabile, se bit7=1=FIFO abilitato [16550A e successivi]
0/1               0 = riservato, non utilizzato [8250/16450]
0 = buffer FIFO non abilitato = simulazione 8250 [16550A e successivi]
1 = buffer FIFO abilitato al funzionamento [16550A e successivi]

    

Pagina Precedente Registri Pagina Successiva RICONOSCIMENTO INTERRUPT 1/4   Torna alla Home della Sezione Assembler - DownLoad Torna al Menu di "Programma il Computer"
14 di 46
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46

    

Registri Interni » Porta Seriale | Porta Parallela | Stampanti
TUTORIAL » Indirizzi Base | Registri Interni | Area Comunicaz. BIOS | Funzioni BIOS | Funzioni DOS
Prefazione | CAP 1 | CAP 2 | Schede | Palestra
Libreria ASM | Libreria MAC | Progetti ASM | Download | Info | Indice
Home 
Pascal|Manuali|Tabelle|Schede
Tutorial Assembly|Palestra Assembler
Aggiungi Giobe®2000 ai preferiti  
Motore
Ricerca
  Rendi Giobe®2000 pagina di Default
© 2001-2010  -  Studio Tecnico ing. Giorgio OBER
Tutti i diritti sono riservati