void setupIRQEnv() { //mask all interrupt ClrIntStatus(); //create interrupt handler table creatIntHandlerTable(); //register interrupt setIRQHandler(nTIMER0_INT, Timer0_ISR); setIRQHandler(UART0_INT, UARTIrq); //setIRQHandler(nDMA0_INT, Dma0Done); //setIRQHandler(nDMA1_INT, Dma1Done); setIRQHandler(nDMA2_INT, IsrForUSBDma2); //setIRQHandler(nDMA3_INT, Dma3Done); setIRQHandler(nIIC_INT, IICInt); setIRQHandler(nEXT8_23_INT,ExternIntDevice); setIRQHandler(nUSBD_INT,usbIRQ); //enable IRQ enable_IRQ(); //enable device interrupt Enable_EInt(IRQ_LAN); Enable_Int(nTIMER0_INT); Enable_Int(UART0_INT); //Enable_Int(nDMA0_INT); //Enable_Int(nDMA1_INT); Enable_Int(nDMA2_INT); //Enable_Int(nDMA3_INT); Enable_Int(nIIC_INT); Enable_Int(nEXT8_23_INT); Enable_Int(nUSBD_INT); }
int STM32HardwareUsart::setup(UartParams *params) { setIRQHandler(m_irqno, (IRQHandler) STM32HardwareUsart_interruptHandler, this); }