1. 程式人生 > >STM32F1XX系列 HAL庫 CAN大量收發資料

STM32F1XX系列 HAL庫 CAN大量收發資料

大量收發資料時,會產生收發資料0-3分鐘後不再收發資料的現象,此時是由於庫函式內部將CAN匯流排狀態改為忙碌。

可在While(1)中填寫如下程式碼

  1. if( HAL_BUSY == HAL_CAN_Receive_IT(hcanx, CAN_FIFO0))//開啟中斷接收  
  2. {  
  3.     /* Enable FIFO 0 overrun and message pending Interrupt */  
  4.     __HAL_CAN_ENABLE_IT(&hcan1, CAN_IT_FOV0 | CAN_IT_FMP0);  
  5. }