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.

[参考译文] AM13E23019:编辑 BCR 的正确方法示例

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1630558/am13e23019-example-of-the-proper-way-to-edit-bcr

部件号: AM13E23019

在某些情况下、我们的软件需要保护闪存不受外部读数的影响。 通过分析 TRM、我们可以通过修改 BCR 的 DEBUG_ACCESS 字段来实现这一点(在基于 MSPM0G 的应用中也是如此)。

但是、由于修改代码中的 BCR 具有断开芯片的高风险、我们想请求一个能够做到这一点的代码示例、以在我们的应用中用作参考。

BR、
Oleksandr

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

    尊敬的 Oleksandr:

    您能否分享 BCR/BSL 的确切要求(DEBUG_ACCESS 字段设置除外)、基于此、我将尝试测试 NON-MAIN 配置并提供可为您的用例刷写的配置。 我想您可能已经知道这些字段、因为 MSPM0 应用程序已经使用了这些字段。 这样、我就可以快速移植 AM13x 的相同设置。 我们有一个示例文档正在开发中、但要暂时取消阻止、我想直接提供输出。

    此致、
    Shaunak

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

    您好 Shaunak!

    现在所需的配置是:

    • debug_access --已禁用
    • BSL --已禁用(以避免可能通过 BSL 通信接口读取存储器)
    • 所有其它配置--设置为默认值

    对于 MSPM0Gx、我们使用了“flashctl_nonmain_memory_write"示“示例中的方法:

    • 使用所需的配置准备 BCR/BSL 结构
    •  针对 BCR/BSL 结构计算 CRC(在运行时)
    • 使用示例中提供的过程刷写准备的结构
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Oleksandr:

    Im 连接以下两种配置、请使用合适的配置。

    1.禁用的 BSL、禁用的调试访问、 禁用 SWDP(无 DSSM 访问)

    e2e.ti.com/.../debug_5F00_bsl_5F00_disabled_5F00_NM.txt

    2. 禁用的 BSL ,禁用的调试访问,  被启用 SWDP

    e2e.ti.com/.../debug_5F00_bsl_5F00_disabled_5F00_swdp_5F00_enabled_5F00_NM.txt

    对此配置进行编程的一种方法是使用附加的 python 脚本:

    连接 CCS 调试会话

    2.转到“Scripts"->"Reset Commands"->"Software_SYSRST_WITH_BSL"“ Commands"->"Software_SYSRST_WITH_BSL"</s>“ “““

    3.器件处于 BSL 模式后、使用 python 脚本来刷写上述非主配置(确保在 10 秒内执行此操作、以避免在 UART BSL 中达到超时)

    python bsl_cli_am13e2.py --no-invoke flash csc_exist_NM.txt


    e2e.ti.com/.../bsl_5F00_cli_5F00_am13e2.py

    如果您希望恢复出厂设置/批量擦除、CCS20.50 包含一些用于批量擦除和恢复出厂设置以及擦除配置的 GEL 脚本。

    此致、
    Shaunak

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

    你好 Shaunak!

    感谢您分享示例!

    但我们更希望在软件中找到一个解决方案。 因此、当某些条件匹配时、软件本身将修改非主区域、如 MSPM0G “flashctl_nonmain_memory_write"示“示例所示。 很抱歉、我没有在原始请求中明确说明。

    BR、
    Oleksandr

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

    尊敬的 Oleksandr:

    我已经对 SDK 添加了这个新要求: jira.itg.ti.com/.../ASM_IND_REQ-183、我将与开发团队进行讨论。

    此致、
    Shaunak