__interrupt void USART1TX_ISR (void) { debugpins_isr_set(); if (uart_isr_tx()==1) { // UART; TX __bic_SR_register_on_exit(CPUOFF); } debugpins_isr_clr(); }
void isr() { unsigned int irqs; cpustats_enter(); irqs = irq_pending() & irq_getmask(); if(irqs & IRQ_UARTRX) uart_isr_rx(); if(irqs & IRQ_UARTTX) uart_isr_tx(); if(irqs & IRQ_TIMER0) time_isr(); if(irqs & IRQ_AC97CRREQUEST) snd_isr_crrequest(); if(irqs & IRQ_AC97CRREPLY) snd_isr_crreply(); if(irqs & IRQ_AC97DMAR) snd_isr_dmar(); if(irqs & IRQ_AC97DMAW) snd_isr_dmaw(); if(irqs & IRQ_PFPU) pfpu_isr(); if(irqs & IRQ_TMU) tmu_isr(); if(irqs & IRQ_USB) usb_isr(); cpustats_leave(); }