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.

[参考译文] TMS320F2800137:CAN 传输大小

Guru**** 2589245 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1399017/tms320f2800137-can-trans-size

器件型号:TMS320F2800137

工具与软件:

您好、专家"

当我初始化 CAN 模块时、传输长度 为 8;而我发送的数据长度为5

发送的数据的最后三位为随机值、、如下所示

发送的数据数量是随机的、初始化设置 TRANS LENGTH 为8。 如何解决该问题(不显示最后三位)?

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

    can_sendMessage API 发送0个或8个字节的数据。  如果消息长度>0、则它发送8个字节。  如果要发送的消息长度介于1到8之间、请改用 API CAN_sendMessage_updateDLC。  数据将仍然以8字节的形式发送、但 DLC (消息的实际长度)将作为消息对象的一部分发送和接收、接收节点可以使用 DLC 值指示有多少字节的数据有效。

    此致、

    Joseph

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

    接收节点可以使用 DLC 值来指示有效的数据字节数量。

    库中使用了哪个函数?

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

    Youjun、

    DLC 信息作为 CAN 帧的一部分进行传输。  在接收节点中、使用函数 CAN_readMessage。  此函数调用 CAN_readDataReg 并使用 DLC 信息来读取与 DLC 值对应的字节数。

    此致、

    Joseph