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.

[参考译文] AM2634:能否使用任何非 uniflash SBL 对外部闪存进行编程?

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1461260/am2634-can-i-program-external-flash-using-any-of-the-non-uniflash-sbls

器件型号:AM2634
主题中讨论的其他器件:UNIFLASH

工具与软件:

我们的最终产品在现场不具有 JTAG 访问权限、产品必须可以现场升级。 我本来打算将 CPU 置于 CAN/UART 引导模式、对外部闪存进行编程、然后切换到 QSPI 模式来完成引导过程。 理想情况下、升级通过 CAN 进行、但 UART 接口是可以接受的。 我有 UART 引导加载程序进程(使用 UART_bootloader.py)用于 将我的应用程序编程到 RAM、但我在这些预编译引导加载程序中没有看到挂钩来对外部闪存进行编程-这是可能的吗?或者我是否必须编写自己的 SBL 来对外部闪存进行编程?

如果我必须编写自己的 SBL、那么 SBL_can_uniflash.release.tiimage 和 SBL_uart.release.tiimage 的源是否可用 ?

谢谢!

吉姆

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

    Jim、您好!

    感谢您的提问。

    Jingang Ye 说:
    但我没有看到这些预编译引导加载程序中用来对外部闪存进行编程的钩子--这是可行的吗?或者我是否必须编写自己的 SBL 来对外部闪存进行编程?

    TI 为所有预编译的 sbls 提供了示例代码、您也可以使用源代码作为参考来构建您自己的自定义引导加载程序和 Flasher。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [报价 userid="2713" url="~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1461260/am2634-can-i-program-external-flash-using-any-of-the-non-uniflash-sbls "]如果我必须编写自己的 SBL、源代码是否可用于 sbl_can_uniflash.release.tiimage 和 sbl_uart.release.tiimage ?

    您可以在此处找到所有预编译 SBL 映像的示例代码:  C:\ti\mcu_plus_sdk_am263x_10_00_00_35\examples\drivers\boot

    相关文档的链接: software-dl.ti.com/.../EXAMPLES_DRIVERS_SBL.html

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

    Nilabh,

    感谢您的快速回复;我仍在阅读所有引导加载程序文档、以尝试了解我们的新电路板要求。 在最终产品中、我不能单独使用 CAN 来更新驻留应用程序、写入是否准确? 这是因为 UART 必须用于在 CAN-SBL 中的闪存、然后 CPU 通过 QSPI 引导以通过 CAN 加载应用?

    谢谢!

    吉姆

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

    是的、这是正确的、在本例中您将需要 UART。

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

    如果我在 UART 引导模式下进行引导、我可以写入闪存吗? 如果看起来类似于 UART-boot 引脚(SOP0)、则也是 QSPI_D0。 SOP0处于活动状态是否会阻止访问 QSPI 闪存?

    谢谢!

    吉姆

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

    此外、TRM 中还有以下语句:"对于 UART 引导、UART 引脚保留配置为 UART 引导。 在该引导模式下不触碰 QSPI 引脚"。  

    我可以修改 UART 次级引导加载程序来配置 QSPI 引脚多路复用器吗、如果我的新硬件能够以某种方式禁用 UART-BOOT-PINT (SOP0)、那么即使我是在 UART 引导模式下启动、我也是否能够写入闪存?

    谢谢!

    吉姆

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

    是、您可以在 UART 引导模式下写入闪存。

    UART uniflash 示例执行完全相同的操作。

    它通过 UART 接收应用程序映像并将其写入闪存

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

    我需要在没有硬件团队的情况下检查一次。

    是的、您可以使用 UART uniflash 示例来在 UART 引导模式下写入闪存。

    已提供示例。  

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

    感谢您的帮助;稍后我可能会遇到有关特定引导加载程序的更多问题、但这个问题可以解决。

    吉姆