ST意法半导体
直播中

王飞

7年用户 1137经验值
私信 关注
[问答]

CAN_Error_Code的作用是什么?

您好,我正在尝试在我的 canbus 驱动程序中开发一些错误管理。
我注意到 canbus 结构中有一个 ErrorCode。

该错误代码可能具有以下任何值:


但事实证明 hcan.ErrorCode 总是 HAL_CAN_ERROR_NONE,即使 canbus没有插入任何应该给出以下任何一个的东西:
  • //#define HAL_CAN_ERROR_EPV            (0x00000002U) /*!< Error Passive   */
  • //#define HAL_CAN_ERROR_BOF            (0x00000004U) /*!< Bus-off error  */
  • //#define HAL_CAN_ERROR_ACK            (0x00000020U) /*!< Acknowledgment error   */
我在这里错过了什么吗?也许需要在 HAL 的某个地方启用某些东西才能得到错误?







回帖(1)

陈超

2022-12-8 15:17:36

  • HAL_CAN_DeInit(_hcan);
  •                 HAL_CAN_Init(_hcan);
  •                 CanSETUPnoFilter(_hcan);

因为即使我“中止”邮箱,canbus TX 仍然以某种方式堵塞。


  • HAL_CAN_AbortTxRequest(hcan_object_reference, CAN_TX_MAILBOX0+CAN_TX_MAILBOX1+CAN_TX_MAILBOX2);//empty all mailboxes
举报

更多回帖

发帖
×
20
完善资料,
赚取积分