Skip to main content
BeMercy
Associate
September 15, 2016
Question

Is there a simple and safe way to disable CANbus receive Interrupt or enable CANbus receive Interrupt

  • September 15, 2016
  • 1 reply
  • 1344 views
Posted on September 15, 2016 at 05:03

Hi guys:

I just want to disable the Can receive Interrupt when processing the important datas and after then enable it again. should i config the can baud rate or other registersagain ,or just change the below part:just change this:

NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;

NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 2;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_InitStructure.NVIC_IRQChannel = USB_LP_CAN1_RX0_IRQn;
NVIC_Init(&NVIC_InitStructure);

Thanks
    This topic has been closed for replies.

    1 reply

    Walid FTITI_O
    Visitor II
    September 15, 2016
    Posted on September 15, 2016 at 12:59

    Hi name_is_honglingjin,

    You can use the dedicated Hal macro to Enable/disabe interrupt. For your case use it to enable/disable the used FIFO pending interrupt. For example , if uyou use FIFO1 , put this:

    /* Disable FIFO 1 message pending Interrupt */
    __HAL_CAN_DISABLE_IT(hcan, CAN_IT_FMP1);
    ......
    ......
    /* Disable FIFO 1 message pending Interrupt */
    __HAL_CAN_ENABLE_IT(hcan, CAN_IT_FMP1);

    -Hannibal-