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.

[参考译文] TMS320F2800157-Q1:CAN 持续传输问题

Guru**** 2540720 points
Other Parts Discussed in Thread: C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1383360/tms320f2800157-q1-continuous-can-transmission-issue

器件型号:TMS320F2800157-Q1
Thread 中讨论的其他器件:C2000WARE

工具与软件:

我将通过分块和发送、使用单个 CAN 消息 ID 传输大量数据。 当我尝试使用 C2000x 库函数"can_sendMessage"以单个消息 ID 连续传输数据时、缺少多条消息(例如、如果我连续传输100条消息、在 Peak-CAN 中只接收3条消息)。 当我在每次传输之间引入500us 的延迟时、我接收到90个数据包。 当我将延迟增加到1000 μ s 时、我会接收所有数据包。 我已经看到了 C2000x 示例代码、它的延迟为250ms、500ms 等。 由于我的项目时间严格、因此我无法承受仅仅轮询和发送 CAN 消息所花费的时间。  

请让您的支持人员尽快解决此问题。

示例代码如下所示

用于(int i = 0;i < 100;i++)

   /*使用 C2000x 库版本函数*/

   can_sendMessage(.......... 参数 );

   /*添加了延迟*/

   DEVICE_DELAY_US (1000);

}

使用的微控制器: F2800157QPHPRQ1

使用的 CAN 收发器: TCAN1044AVDRBRQ1

使用的库版本: C2000Ware_v5.00.00.00

使用的 IDE: Code Composer Studio (版本:12.3.0.00005)

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

    尊敬的 Ruthrapathy:

    您能否检查 CAN_ES 寄存器的状态并查看在背靠背发送帧时标记了哪些错误?

    此致、

    Joseph