Tastiera
Porta Seriale Porta Parallela Stampanti Timer di Sistema
 Home

  Tecniche di Interruzione

Vai al menu - Tecniche d'Interruzione

  Porta Seriale

TECNICHE D'INTERRUZIONE 1/3 [5 di 9] 

 

****  GESTIONE EVENTI SERIALI: INTERRUPT [1 di 4]

               

bulletFin dalla sua comparsa la comunicazione seriale (asincrona) è stata affidata a 2 porte seriali (UART), per le quali il DOS ha previsto queste assegnazioni:
bullet COM1: Indirizzi da 03F8H a 03FFH, interrupt IRQ 4
bullet COM2: Indirizzi da 03E8H a 03EFH, interrupt IRQ 3

               

bullet La possibilità (a partire dalla versione DOS 3) di avere altre 2 porte seriali  ha richiesto la necessità di nuove risorse: 
bullet COM3: Indirizzi da 02F8H a 02FFH, interrupt IRQ 4
bullet COM4: Indirizzi da 02E8H a 02EFH, interrupt IRQ 3

               

bulletPoichè le linee di interruzione hardware non sono molto numerose a ciascuna delle 2 previste sono associate 2 COM; la condivisione non produrrà conflitti se le 2 porte non chiederanno servizio contemporaneamente, cosa verosimile visto che dipende dal programma di gestione (che si guarderà bene dal farlo...).

               

bulletNaturalmente gli eventi seriali sono gli stessi gestiti, nelle pagine precedenti, con la tecnica del polling; quando uno uno di essi richiede attenzione l'UART stesso provvede a segnalarlo al processore attivando la sua linea d'uscita INTRPT (pin30 dell'UART), a sua volta connessa alla linea IRQ3 o IRQ4 del gestore delle interruzioni.
bulletQuesta tecnica è più complessa della precedente ma anche altamente efficiente.

               

bulletPoichè la richiesta di interruzione può pervenire contemporaneamente anche da più di un evento, per semplificarne il servizio sono stati raggruppati in 4 categorie, associando loro una priorità, cioè un numero che stabilisce quale di esse sarà servita per prima:
bulletmassima priorità per Receiver Line Status: durante la ricezione di dati è stata rilevata la presenza di errori (di sovrapposizionedi parità o di composizione) o la presenza di un segnale di break
bulletseconda priorità per Received Data Available (dato pronto): il numero di bytes ricevuti ha superato quello massimo (trigger  level) previsto per il buffer FIFO in Ricezione (si aspetta che il FIFO sia pieno di dati, per farli leggere in blocco dal processore), oppure quando il FIFO contiene bytes in misura inferiore al massimo ma il tempo concesso a nuovi arrivi è terminato, timeout) oppure quando nel Receive Buffer Register, RBR, è pronto un singolo dato (con UART 8250/16450 o con UART 16550A, se il FIFO è disabilitato)
bulletterza priorità per Transmit Data Empty (trasmettitore vuoto): il Transmit Holding Register, THR, è vuoto (con UART 8250/16450 o con UART 16550A, se il FIFO in Trasmissione è disabilitato) oppure quando il FIFO ha posti liberi per uno o più bytes
bulletpriorità più bassa per Modem Status: durante la comunicazione con il Modem, è stata rilevata la variazione di segnali in arrivo, direzione DCE>DTE, come Data Carrier Detect (CD, rilevato modem remoto/possibile comunicare), Ring Indicator (RI, ricevuto segnale acustico sul canale), Data Set Ready (DSR, DCE connesso e pronto a comunicare) e Clear To Send (CTS, DCE Pronto a ricevere)

    

Pagina Precedente Tecniche INT Pagina Successiva TECNICHE D'INTERRUZIONE 1/3   Torna alla Home della Sezione Vai al menu - Tecniche d'Interruzione Torna al Menu di "Dentro al Computer"
5 di 9
1 2 3 4 5 6 7 8 9

    

Tecniche di Interruzione » Tastiera | Porta Seriale | Porta Parallela | Stampanti
Timer di Sistema | Home
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