stm32 can 出错恢复
大家好,我最近在使用stm32f105做双can通信,can驱动芯片使用的TJA1042,发现将canH canL 短路再放开以后,can出错恢复不回来?之前在K40上使用的时候没有这个问题,不知道这个情况大家有什么指导建议啊?谢谢啦自动恢复功能开启没?
开启出错中断,强行将CAN重新初始化看看? 我使用的cube 配置的can,没看到有自动恢复的参数,我再找找看,你按你指的方向找找看,:D
hcan1.Instance = CAN1;
hcan1.Init.Prescaler = 2;
hcan1.Init.Mode = CAN_MODE_NORMAL;
hcan1.Init.SJW = CAN_SJW_1TQ;
hcan1.Init.BS1 = CAN_BS1_8TQ;
hcan1.Init.BS2 = CAN_BS2_7TQ;
hcan1.Init.TTCM = DISABLE;
hcan1.Init.ABOM = DISABLE;
hcan1.Init.AWUM = DISABLE;
hcan1.Init.NART = DISABLE;
hcan1.Init.RFLM = DISABLE;
hcan1.Init.TXFP = DISABLE;
HAL_CAN_Init(&hcan1); 楼主重新初始化一下CAN。 这个我enable了一下hcan2.Init.ABOM = ENABLE; 就可以了,离线管理功能 erpengcui 发表于 2016-4-22 15:09
这个我enable了一下hcan2.Init.ABOM = ENABLE; 就可以了,离线管理功能
这就是自动离线管理功能。
页:
[1]