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.

[参考译文] TMS320F28388D:在28388D 中为 CAN 使用 IF1和 IF2

Guru**** 2609955 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1008655/tms320f28388d-use-of-if1-and-if2-for-can-in-28388d

器件型号:TMS320F28388D

尊敬的先生:

我正在学习28388D 的 CAN 部分、 我注意到有两个接口寄存器集、IF1和 IF2、它们用于 在消息 RAM 和 CPU 之间传输数据。

我想知道 IF1和 IF2?之间是否存在任何差异

  如果同时使用 IF1和 IF2、它们之间是否会发生冲突?

请参阅从技术参考手册中捕获的下图、"如果 IFxCMD 寄存器设置为写入、 那么、IFxCMD 寄存器选择的报文对象字段将被其他 IFx 寄存器中的值覆盖"是否意味着"如果 IF1设置为写入、IF1CMD 选择的字段将被 IF2寄存器中的值覆盖"?

期待您的回复、并提前感谢您。

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

    您好、Huijin、

    IFx 寄存 器彼此独立、然而、消息 RAM 中的消息对象可由 IF1或 IF2寄存器访问。   如果 IF1CMD 寄存器将同时写入与 IF2CMD 寄存器写入相同的报文对象、则会导致同一报文对象被覆盖。

    此致、

    Joseph   

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

    谢谢 Joseph,

    因此 、这意味着我可以选择使用这两个选项中的一个。 但 目的是通过制作两个接口集寄存器、DMA 和 CPU 是否可以使用消息 RAM 传输数据?

    再次感谢。

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

    您好、Huijin、

    是的、正如您指出的、如果是 DMA 和 CPU 从消息 RAM 传输数据、则有一个用途。  您还可以实现灵活性、在这种情况下、两个单独的线程可以运行、一个使用 IF1、另一个使用消息 RAM 上的 IF2。

    此致、

    Joseph