Part Number:IWR1642
你好最近我使用IWR1642时发现CAN在以下条件下会有概率初始化失败(程序卡死在CANFD_init()中,使用的SDK为mmwave_sdk_03_05_00_04)
1.使用SBL程序,SBL程序中有对CAN进行初始化,在跳转到APP程序之前进行了以下操作:
CANFD_transmitDataCancel(txMsgObjHandle,&errCode1);
CANFD_deinit(canHandle,&errCode1);
2.在APP程序对CAN重新进行初始化,但初始化时外部CAN网络的其他节点一直有非常密集的CAN报文在发送(故障模拟时,模拟其他节点每1ms发送一帧,如果其他节点正常发送(如50ms发一次),目前还没有出现该问题)。
在1&2条件下,大约每重新上电10~20次就会发生一次程序卡死在CANFD_init()中的现象。
但时如果把1条件去除(即没有SBL程序只有APP程序),则就不会有什么问题。
另外如果在1&2条件下,在APP在初始化之前把CAN_STB引脚拉成高电平,每次上电后程序一定会卡死在CANFD_init()中。
请问这可能是哪方面引起的呢~?我在使用CAN通信的SBL时还需要注意什么呢?
Katherine Wang:
已为您联系TI资深工程师,一旦得到回复会立刻回复给您