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.

[参考译文] C2000系列中的 CAN 通信总线占线检查

Guru**** 2925050 points

Other Parts Discussed in Thread: TMS320F2808

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/729804/can-communication-bus-busy-check-in-c2000-series

主题中讨论的其他器件:TMS320F2808

我想知道检查 C2000系列中 CAN 总线忙状态的方法

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

    您的问题与什么器件型号有关?

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

    您好、Haresh、

    TMS320F2808是我用于项目的 uC、

    我的疑问是、如果超过3个节点(使用具有不同从 ID 的固件运行)尝试访问总线优先级将转至编号最小的 ID、 此时、剩余节点将等待数据链路层中的总线空闲状态、或者我是否需要处理应用层中的情况?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    所有这些都由 CAN 协议自动处理。 一旦您将要传输的数据传输到(发送)邮箱 RAM 并设置相应的 TRSn 位、您就无需执行任何操作。 该节点持续监控总线、解决任何争用并传输数据。 即、如果传输过程中仲裁丢失或错误丢失、则会自动重新传输。 您的代码不必执行任何特殊操作即可处理此情况。 我的 app.note SPRA876在"参考资料"部分中指出了 CAN 的一些优秀材料。 还有大量的在线培训材料解释了该协议。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Haresh、

    感谢您的宝贵意见、

     那么,何时邮箱 RAM 将获得更新?只有在成功的数据传输之后? 数据传输将执行多少次重试?

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

    那么、何时更新邮箱 RAM? 只有在成功传输数据后?

    答->抱歉,我不理解您在这里询问的内容。 您的帖子与传输邮箱有关。 每当您的代码写入它时、它都会被更新。 您是否询问 TA 位的设置? 如果是这样、则是在传输成功后。

     

    数据传输将执行多少次重试?

    answe-->如果仲裁失败、重试次数将永远不变。 如果发生错误、则会更加复杂一些、具体取决于错误的来源。