static void uart_handler(void) { // System interrupt handler int mask = 0; // No events static int last_txevt; if (sysu_error()) { sysu_rxpurge() ; mask |= EV_ERR; } else if (sysu_rxcount()) mask |= EV_RXCHAR; if (last_txevt != sysu_txevt()) { last_txevt = sysu_txevt(); mask |= EV_TXEMPTY; } if (mask) tn_event_iset(uart_event, mask); }
//------------------------------------------------------------------------------ // эта функция используеться в прерывании ds1390.c void Light_set_event(void) { tn_event_iset(&g_light_evt,EVENT_SINHRO_TIME); DS_INTS_COUNT++; }
/*----------------------------------------------------------------------------*/ void hw_timer1a_int_handler() { MAP_TimerIntClear(TIMER1_BASE, TIMER_TIMA_TIMEOUT); tn_event_iset(g_timer1a_evt, g_timer1a_evt_pattern); tn_int_exit(); }