This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMS570LS3137:TMS570LS3137 CAN Tx 驱动器故障

Guru**** 2032800 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/846674/tms570ls3137-tms570ls3137-can-tx-driver-failures

器件型号:TMS570LS3137

您好、QJ Wang

我看到的问题与 https://e2e.ti.com/support/microcontrollers/hercules/f/312/p/817197/3028237#3028237中的问题相同 

接收到上一个数据包的 Tx DONE 中断后,我会检查(canIsTxMessagePending (node_、kTiCanMailboxStartIndex)!= true)并等待消息框有效:

while (!canIsMessageBoxValid (node_、kTiCanMailboxStartIndex));

然后我调用 canTransmit(),因为此检查失败而失败:if ((node->TXRQx[regIndex]& bitIndex)!= 0U)
Tx 消息等待检查通过但上述检查失败的原因是什么?  
此致
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    请尝试 QJ 的建议。 在 canTransmit()之前添加断点 并检查寄存器值。