另外,接收中断回调函数如下所示:
- void HAL_CAN_RxCpltCallback(CAN_HandleTypeDef* hcan)
- {
- if(hcan->pRxMsg->StdId ==0x321)
- {
- //handle the CAN message
- HandleCANMessage(hcan->pRxMsg); //处理接收到的CAN报文
- }
- if(hcan->pRxMsg->ExtId ==0x1800f001)
- {
- HandleCANMessage(hcan->pRxMsg); //处理接收到的CAN报文
- }
- HAL_GPIO_WritePin(LED4_GPIO_Port,LED4_Pin,GPIO_PIN_SET); //若收到消息则闪烁下LED4
- HAL_Delay(200);
- HAL_GPIO_WritePin(LED4_GPIO_Port,LED4_Pin,GPIO_PIN_RESET);
- HAL_CAN_Receive_IT(&hcan1,CAN_FIFO0);
- }
|