Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
PubblicatoBonfilio Cavaliere Modificato 11 anni fa
1
1 Gestione del mouse via interrupt
2
2 Connessioni 8259 master CPU 80x86 IR4 INT INTA A0 1.8432 MHz 8250 o 16550 INTR mouse OUT2 SIN DTR RTS
3
3 Interrupt porta seriale La porta seriale COM1 genera interrupt sulla linea IR4 dell8259A master (di tipo INT 0Ch). La porta seriale COM2 usa invece la linea IR3 (INT 0Bh). Le interruzioni possono derivare da diverse cause (vedi registro IER). Nel caso del mouse, è importante abilitare almeno le interruzioni per Received Data Ready (RDR). Inoltre, la linea IR4 (IR3 per COM2) è filtrata da una porta AND pilotata dalluscita OUT2 dell8250, che deve pertanto essere posta ad 1.
4
4 Programmazione 8250 Per abilitare le interruzioni dal mouse occorre: aggiornare la Interrupt Vector Table programmare l8250 come per il polling abilitare la generazione di interrupt RDR (mediante parola di controllo su IER) abilitare la porta AND (ponendo OUT2=1 con la parola di controllo su MCR). Nello stesso tempo conviene porre anche DTR e RTS ad 1. abilitare linterrupt (IR4 o IR3) nell8259A master aggiornando lInterrupt Mask Register.
5
5 ISR del mouse Ogni volta che un pacchetto dati viene inviato dal mouse, vengono generate 3 richieste di interruzione, una per ciascun byte. La ISR verrà pertanto richiamata 3 volte, ma solo alla terza potrà esaminare i dati. Pertanto la ISR dovrà memorizzare in alcune variabili globali i byte via via pervenuti, e disporrà di un contatore che indichi quanti byte (0, 1, 2) sono già stati ricevuti.
6
6 Esercizio Si ripeta lesercizio di programmazione del mouse, utilizzando questa volta la gestione mediante interrupt anziché la gestione mediante polling.
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.