Part Number:TDA4VL-Q1
在bootload开发中,采用CANFD通讯方式对A72核的程序进行刷新,波特率为2M,采用mcal中默认的中断接收方式进行接收报文,pdk版本为8.05。
在多次连续刷新测试中,1ms接收三条64bytes报文,10万条偶发会丢失一条报文,导致刷新失败。
排查发现,在Can_Mcan.c::Can_mcanReadRxFIFO中,Os_Isr_HSCANRxFullInt1就已经没有存储该条报文,
我们认为在中断进入Can_mcanProcessISR时,该条报文可能已经丢失或在此函数中intrStatus标志而新报文被丢弃。
问题较为紧急,烦请尽快帮忙分析一下问题原因及可能的解决办法,谢谢。
Gary Lu:
guibing liang 说:
该条报文可能已经丢失或在此函数中intrStatus标志而新报文被丢弃。
我怀疑是您的CAN FD接收中断优先级设置太低,应该可能是被其他更高优先级的中断所覆盖,从而导致丢失新的报文