尊敬的 Champs:
我是为我们的客户提出这个问题的。
现在、客户发现使用 MCAN 时出现奇怪的现象。 与客户确认后、仍然无法找到问题的原因。 您能帮助分析一下吗? 以下是对该问题的说明:
仅在独立模式下才会出现问题。 当连接到仿真器并使用 CCS 进行调试时、一切都是正常的。 在引导至应用程序的过程中将发生 MCAN 通信失败问题。 如果您只运行引导或应用程序、则不会出现此问题。
当通信失败时、波形如下所示。 客户可以确认 Rx 的内容正确、但没有来自 Tx 的响应消息。 (粉色:CAN 总线的差分信号;绿色:C2000 RX 信号;黄色:C2000 TX 信号)
由于客户仅在独立模式下发现此问题、因此难以观察寄存器。 我让客户通过一些方法读取以下寄存器、但未发现任何问题:
MCAN_ECR[REC]为0、MCAN_ECR[TEC]为0、MCAN_PSR[LEC]为0、MCAN_CCCR[INIT] 为0。
此外、当发生该问题时、无法进入 MCAN 中断。 当检测到此问题时、如果我们清除 MCAN 中断位、则可以恢复 MCAN 通信。 虽然这可以暂时解决通信问题、但这不是客户想要的。 他们希望找到 MCAN 通信故障的原因、然后进行修复。 但通过检查一些 MCAN 寄存器、我没有发现任何问题。 这真的很难解释、您能帮助分析一下吗? 我是否需要检查其他一些寄存器以确定 MCAN 通信失败的原因?
此致、
朱莉娅