Intel 386 Manuale Utente Pagina 332

  • Scaricare
  • Aggiungi ai miei manuali
  • Stampa
  • Pagina
    / 691
  • Indice
  • SEGNALIBRI
  • Valutato. / 5. Basato su recensioni clienti
Vedere la pagina 331
11-45
ASYNCHRONOUS SERIAL I/O UNIT
None
Assumptions:
None
Syntax:
Not called by user.
Real/Protected Mode:
No changes required.
******************************************************************************/
void Service_TBE(void)
{
if (trans_buffer[Tbuffer_index] != ‘\0’) {
_SetEXRegByte(TBR0, trans_buffer[Tbuffer_index]);
Tbuffer_index++;
}
else {
/* Disable TBE interrupts */
_SetEXRegByte(IER0, 0x00);
}
}/* Service_TBE */
/****************************************************************************
Example code to show how to set up for a Serial Port interrupt.
This example is for an interrupt on SIO_0 sourced by the
Receive Buffer Full Signal. The source code for the functions “SetIRQVector”
and “Disable8259Interrupt” is included in the Interrupt Control Unit chapter.
SetIRQVector(Serial0_ISR, 4, INTERRUPT_ISR); // Set vector for Interrupt
// on Master line 4
Disable8259Interrupt(IR1+IR5+IR6+IR7, IR0+IR1+IR2+IR3+IR4+IR5+IR6+IR7);
Enable8259Interrupt(IR2+IR4,0);// Enable slave interrupt to master(IR2),
// Enable SIO_0 (IR4)
_enable(); // Enable Interrupts
_SetEXRegByte(IER0, 0x01); // Enable interrupt on RBF signal
/****************************************************************************/
Vedere la pagina 331
1 2 ... 327 328 329 330 331 332 333 334 335 336 337 ... 690 691

Commenti su questo manuale

Nessun commento