F29H859TU-Q1: F29 Can发送和Busoff中断处理问题

Part Number: F29H859TU-Q1

Hi,

     问题一:F29H85x,Busoff中断里只判断Mcan_IR寄存器,Busoff状态发生变化都会进中断,一次Busoff会进2次中断且都会报告给上层(即使第二次中断,Busoff的状态以及恢复,即MCan_PSR_BO为0),这不符合规范;但是Busff轮询处理的时候,会先判断MCan_PSR_BO寄存器,确认MCan_PSR_BO为1后再报告上层;中断静态代码是缺少MCan_PSR_BO状态判断的。

    image.png

     问题二:F29H85x,Mcal Can配置Tx邮箱类型为BASIC_CAN,CanHwObjectCount不为1,压测发送报文周期时,发现存在漏帧,是因为报文请求发送时,读取空闲object的索引,跟最终发送时使用的索引不一致,导致发出的报文不对;把CanHwObjectCount改为1,问题解决了,但是为什么CanHwObjectCount大于1时,有漏帧的问题。

     image.png

     image.png

     image.png