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.

[参考译文] TMS570LS1227:DCAN 接收缺少帧

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1126789/tms570ls1227-dcan-receive-missing-frames

器件型号:TMS570LS1227
主题中讨论的其他器件:HALCOGEN

您好!

我的 DCAN 模块有问题、当帧间延迟很小时、似乎无法接收 CAN 帧。  如果我缓慢地传输消息、则会可靠地接收到这些消息、但当我以另一个器件的输出速率传输这些消息时、只有三个消息框中的第一个能够可靠地接收帧。

我已经尝试过轮询和基于中断的 CAN 接收函数、两者都遇到了相同的问题

我需要接收来自电流传感器的数据、该传感器每20ms 传输3帧、它们位于顺序 CANID 上、每个帧之间的传输距离为0.2mS。

还有人有类似的问题吗?

Marc

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="528616" URL"~μ C/support/microriors/arm-based microor-group/arm-based microors/f/arm-based microor-forum/1126789/tms570ls1227-dcan-receive-missing-frames"]如果我缓慢地发送消息,则会可靠地收到消息[/quot]

    您是指较低的波特率、还是指帧之间的较大时间段?  

    第2个和第3个邮箱是否配置为具有示例2或3的正确消息 ID?  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [~ userid="45190" url="支持/微控制器/基于 ARM 的微控制器组/基于 ARM 的微控制器/f/基于 ARM 的微控制器-forum/1126789/tms570ls1227-dCAN 接收缺失帧/4179253#4179253"]

    您是指较低的波特率、还是指帧之间的较大时间段?  

    第2个和第3个邮箱是否配置为具有示例2或3的正确消息 ID?  

    [/报价]

    当帧之间有一个较大的时间段时、例如几毫秒、所有3条消息都被接收、newdat 位按预期设置。  但是 、电流传感器在三个帧之间以大约0.2 uS 的速率传输。

    是第二个和第三个邮箱配置了正确的 ID 和绝对屏蔽(0x7ff)

    波特率为500k

    感谢您回来

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="528616" URL"~μ C/support/microriors/arm-based microor-group/arm -based microriors/f/arm based 微控制器-forume/1126789/tms570ls1227-dcan-receive-missing-frames"]我需要从每20ms 传输3帧的电流传感器接收数据,它们在每个帧之间以0.2mcan[引用]。

    具有8字节有效载荷的 CAN 帧大约需要2us*112位=0.224ms。 我认为在20ms 内从邮箱读取接收到的数据没有任何问题。  

    使用 IF3x 和 DMA 更容易将数据从邮箱传输到 SRAM。

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

    我同意、这不应该是问题、但是在我们的测试中、当电流传感器传输三条消息中的第三条消息时、CAN 模块似乎无法接收。

    这是我们尝试接收的消息

    ID:0x521 周期时间:20ms

    ID:0x522 周期时间:20ms

    ID:0x523 周期时间:20ms

    如果如何使用 IF3x 和 DMA、是否有示例? 我们目前正在使用 halcogen 编写的代码。

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

    有关 IF3x 和 DMA、请参阅此主题:

    https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/981103/tms570ls1114-can-function-issue/3626130?tisearch=e2e-sitesearch&keymatch=IF3x%252525252520AND%252525252520DMA#3626130