void dbg_uart_irq_handler(void * data) { u32 IrqEn = DiagGetIsrEnReg(); DiagSetIsrEnReg(0); rt_hw_serial_isr(&ameba_dbg_serial, RT_SERIAL_EVENT_RX_IND); DiagSetIsrEnReg(IrqEn); }
void LOGUARTClass::IrqHandler( void ) { uint8_t data = 0; BOOL PullMode = _FALSE; uint32_t IrqEn = DiagGetIsrEnReg(); DiagSetIsrEnReg(0); data = DiagGetChar(PullMode); if ( data > 0 ) _rx_buffer->store_char(data); DiagSetIsrEnReg(IrqEn); }