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.

[参考译文] TMS320F28069:关于 TMS320F28069 CAN 数据读取

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/594797/tms320f28069-about-tms320f28069-can-data-read

器件型号:TMS320F28069

尊敬的:

  我的应用是 EV 空调、并将使用 TI TMS320F28069。 我的 CAN 收发器是 TJA1051。

  我知道 、CAN 数据将由寄存器自动读取。 我将从寄存器中读取数据。   我们将像往常一样使用中断来读取寄存器,但我不使用它、我使用不确定的周期来读取。 周期可以是10ms、50ms 或其他。  

  在我的应用中、我逐位读取 CAN 数据。  我将回答下面的问题:

    当我不)整个帧(8位读取、可能只有3位或4位时、下一个帧将出现并 擦除当前帧。 因此我无法读取 完整的帧。 它可能会将错误的信息发送到系统。 那么、您能 不能提供一些建议来避免这一问题呢? 很棒的酒店

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

    CAN 消息会定期以特定的间隔接收、具体取决于发送器的结构(软件和硬件)以及您的应用。 您需要使用中断来读取接收到的消息或在预定义的周期中读取 Rx 缓冲器。 如果采用第二种方法、读取间隔应小于发送器间隔、否则会丢失一些数据包。  

    为什么不使用中断? 您可以轻松使用中断并读取接收到的消息并进行存储、然后主例程可以以较慢的间隔访问存储的数据。

    -Kash

    如果我的帖子回答了您的问题、请单击"验证答案"。  

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

    您好!

               您的问题的答案在很大程度上取决于您的系统、特别是在 CAN 总线上传输消息的频率。 但首先、我们需要正确地确定术语:

     

    "CAN 数据将由寄存器自动读取"--> CAN 数据将自动复制到配置为接收该数据的邮箱中。

     

    如果您担心邮箱数据将在您完全读取前被覆盖、您可以激活覆盖保护控制(OPC)机制。 有关更多详细信息、请参阅用户指南。