diff --git a/targets/TARGET_NUVOTON/TARGET_M451/can_api.c b/targets/TARGET_NUVOTON/TARGET_M451/can_api.c index f135575809..d569328675 100644 --- a/targets/TARGET_NUVOTON/TARGET_M451/can_api.c +++ b/targets/TARGET_NUVOTON/TARGET_M451/can_api.c @@ -130,8 +130,6 @@ static void can_irq(CANName name, int id) } } else if (u8IIDRstatus!=0) { - //CAN_MsgInterrupt(can, u8IIDRstatus); - can0_irq_handler(can_irq_ids[id], IRQ_OVERRUN); CAN_CLR_INT_PENDING_BIT(can, ((can->IIDR) -1)); /* Clear Interrupt Pending */ @@ -168,19 +166,18 @@ void can_irq_set(can_t *obj, CanIrqType irq, uint32_t enable) CAN_EnterInitMode((CAN_T*)obj->can, ((enable != 0 )? CAN_CON_IE_Msk :0) ); -// ((CAN_T *)(obj->can))->CON = (((CAN_T *)(obj->can))->CON ) | ((enable != 0 )? CAN_CON_IE_Msk :0); switch (irq) { case IRQ_ERROR: - //case IRQ_PASSIVE: - //case IRQ_ARB: + case IRQ_BUS: + case IRQ_PASSIVE: ((CAN_T *)(obj->can))->CON = (((CAN_T *)(obj->can))->CON) |CAN_CON_EIE_Msk; + ((CAN_T *)(obj->can))->CON = (((CAN_T *)(obj->can))->CON) |CAN_CON_SIE_Msk; break; case IRQ_RX: case IRQ_TX: - case IRQ_BUS: case IRQ_OVERRUN: case IRQ_WAKEUP: ((CAN_T *)(obj->can))->CON = (((CAN_T *)(obj->can))->CON) |CAN_CON_SIE_Msk; diff --git a/targets/TARGET_NUVOTON/TARGET_NUC472/can_api.c b/targets/TARGET_NUVOTON/TARGET_NUC472/can_api.c index 923dcd6243..6d13fe09f8 100644 --- a/targets/TARGET_NUVOTON/TARGET_NUC472/can_api.c +++ b/targets/TARGET_NUVOTON/TARGET_NUC472/can_api.c @@ -149,7 +149,6 @@ static void can_irq(CANName name, int id) } } else if (u8IIDRstatus!=0) { - //CAN_MsgInterrupt(can, u8IIDRstatus); if(id) can1_irq_handler(can_irq_ids[id] , IRQ_OVERRUN); else @@ -211,14 +210,14 @@ void can_irq_set(can_t *obj, CanIrqType irq, uint32_t enable) switch (irq) { case IRQ_ERROR: - //case IRQ_PASSIVE: - //case IRQ_ARB: + case IRQ_BUS: + case IRQ_PASSIVE: ((CAN_T *)(obj->can))->CON = (((CAN_T *)(obj->can))->CON) |CAN_CON_EIE_Msk; + ((CAN_T *)(obj->can))->CON = (((CAN_T *)(obj->can))->CON) |CAN_CON_SIE_Msk; break; case IRQ_RX: case IRQ_TX: - case IRQ_BUS: case IRQ_OVERRUN: case IRQ_WAKEUP: ((CAN_T *)(obj->can))->CON = (((CAN_T *)(obj->can))->CON) |CAN_CON_SIE_Msk;