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.

[参考译文] TMS320F28377D:TMS320F28379D 引导加载程序 CAN

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

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1570582/tms320f28377d-tms320f28379d-bootloader-can

器件型号:TMS320F28377D
主题:C2000WARE 中讨论的其他器件

工具/软件:

您好:

我是使用的引导加载程序新手、我对此有一些基本问题。 提前,对不起,如果他们是愚蠢的。

我读出需要对微控制器的其中一个 OTP 寄存器 Zx_BOOTCTRL 进行编程。 该寄存器包含用于确定引导模式的 GPIO 选择。 将这些 GPIO 设置为 0b11 可使微控制器在 BMODE 字段指定的模式下引导。

BMODE == 0x07 使微控制器启动 CAN(我想要的内容)、并在 Reference Manuel:

我的问题是

1) 使用这种协议,我可以直接编程闪存或只是将内核传输到 RAM。 如果无法直接对闪存进行编程、在哪里可以找到传输应用程序闪存代码所需的协议?

2) 编程微控制器后,是否有必要在下一次复位时在闪存上引导微控制器,或者我是否需要通过 CAN 引导加载程序传输无效密钥(!=0x08AA) 以跳转到闪存?

感谢你的帮助。

Vincent。

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

    尊敬的 Vincent:

    1) 您可以使用 CAN 引导加载程序通过 CAN 将闪存内核加载到 RAM 内存中。 然后、闪存内核应复位并重新初始化 CAN 外设、以接受传入的应用程序映像编程到闪存存储器中。

    2) 这听起来您希望将闪存内核存储在闪存存储器中、以便在器件打开时、它可以检查 CAN 总线上的信息以执行固件更新(如有必要)、正确吗? 我认为此实现更适合您的需求、因此可通过 GPIO 开关引脚将器件保持在闪存引导模式。

    谢谢。此致、

    Charles

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    听起来好像您希望将闪存内核存储在闪存存储器中、这样在器件打开时、它可以检查 CAN 总线上的信息以执行固件更新(如有必要)、正确吗? 我认为此实现方案更适合您的需求、因此可通过 GPIO 开关引脚将器件保持在闪存引导模式[/报价]

    您好 Charles、

    您完全理解了我的需求。

    这实际上是我在另一个微控制器 (Microchip) 上使用的

    内核是否要加载到 RAM 中进行执行、或者是否有从闪存执行内核并保留其所在的扇区?

    此外、内核是否可配置? 例如、用户能否选择帧 ID?

    谢谢你  

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

    尊敬的 Vincent:

    >内核是否要加载到 RAM 中进行执行、或者是否有从闪存中执行内核并保留它所在的扇区?

    是的、它必须加载到闪存中并从 RAM 运行。

    >此外、内核是否可配置? 例如、用户能否选择帧 ID?

    配置是一种可能性。 C2000ware 中提供的 CAN 内核不存在、但如果您要  为其他器件参考 C2000 微控制器的 CAN 闪存编程应用手册、则说明对于 DCAN 闪存内核、需要默认的消息标识符 (MSGID) 值 1(与 DCAN 闪存主机编程器一起使用)、但如果需要、可以更改此值。  发送应用程序的主机编程器需要发送一个相应的 MSGID 值、以便 CAN 外设可以将该消息理解为可接受。  

    对于消息标识符值或帧 ID、它可以由用户决定。

    谢谢。此致、

    Charles

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

    您好 Charles、

    我认为我误解了一些东西。

    首先、您说得对、我引用了这个文档。

    C2000 微控制器的 CAN 闪存编程

    我没有看到它不适用于我的器件。

    发送应用程序的主机编程器需要发送相应的 MSGID 值、以便 CAN 外设可以将消息理解为可接受

    似乎我必须自行创建内核。 是否正确?

    在你的回答之后,我将关闭这个问题,因为这些是我在这个领域的第一步。 我只需要评估我在这类工作中花费的时间。

    谢谢你

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

    尊敬的 Vincent:

    是的、这是正确的、您还需要对 SCI 主机编程器进行调整。

    谢谢。此致、

    Charles