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.

[参考译文] LP-CC1312R7:使用 UART 引导加载程序加载失败后、CC1312锁定。

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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/1395533/lp-cc1312r7-cc1312-locked-after-failure-to-load-program-with-uart-bootloader

器件型号:LP-CC1312R7
主题中讨论的其他器件:CC1312R7UNIFLASH

工具与软件:

您好!

我正处于为 CC1312R7设计和实施引导加载程序上传程序的实现阶段、该程序 过去运行良好、但有时在上传过程中会断开连接、需要重新启动上传、不会出现问题、只需要更长时间。

这种方法几十次都运行良好、但昨天我们在尝试擦除闪存时发现、由于上传程序失败并出现下一个错误、电路板完全锁定:

[2/8/2024 9:02:41] [INFO] Cortex_M3_0: GEL Output: Memory Map Initialization Complete.
[2/8/2024 9:02:45] [INFO] Cortex_M3_0: GEL Output: Memory Map Initialization Complete.
[2/8/2024 9:02:46] [INFO] Cortex_M3_0: MassErase(): Initializing.
[2/8/2024 9:02:46] [INFO] Cortex_M3_0: MassErase(): Issuing Board Reset.
[2/8/2024 9:02:47] [INFO] Cortex_M3_0: MassErase(): Mass erase complete.
[2/8/2024 9:02:50] [ERROR] IcePick_C: Error connecting to the target: (Error -241 @ 0x0) A router subpath could not be accessed. A security error has probably occurred. Make sure your device is unlocked. (Emulation package 9.12.0.00150)

在该程序中、在对闪存进行编程并执行 CRC 之后、我们将 CCFG 配置 为锁定对引导加载程序的访问、并执行需要批量擦除操作才能通过 JTAG 访问它、正如我所说的、直到现在它运行正常。 但此板看起来完全不可恢复。

是否知道如何批量擦除芯片和恢复电路板?如果丢失了、我们可以更换焊料另一个 MCU、但我们担心这会在生产中发生。

我只在 https://dev.ti.com/tirex/explore/node?node=A__ANoamrIZPWD2-6T-NDDWGg__ccs_devtools__FUz-xrs__LATEST 找到此信息 、其中显示在安全错误下面: 请联系您的 TI 代表以了解详情。 我们可以看到、

此致、Javier

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

    Javier、您好!

    您是否已尝试将芯片连接到 Uniflash 并在此处使用批量擦除功能?

    如果我正确地理解了您的理解、您就不能在 CCFG 中启用 ROM 引导加载程序、因此不能使用那个来擦除闪存。

    您的引导加载程序是否也在更新 CCFG 区域?

    谢谢、

    Marie H.

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

    您好、Marie、

    可以、这是 批量擦除功能的 Uniflash 日志。

    我们的引导加载程序功能会更新 CCFG 区域、但在本例中、程序未到达该阶段、只是更新了闪存区域和引导加载程序应该可以访问、但并非如此。

    这是一个典型的日志从我们的工具上载和锁定完整的程序,但正如我所说,我们不锁定 JTAG 访问,如这里讨论: https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/1322582/cc1312r7-erase-flash-to-blank-state-with-bootloader-and-jtag-access-disabled/5032712?tisearch=e2e-sitesearch&keymatch=%25252520user%2525253A525401#5032712

    T:10:28:18:432-ACK from chip received
    T:10:28:19:237-Device in Sync
    T:10:28:19:237-Sync OK
    T:10:28:19:237-Erasing chip
    T:10:28:19:374-ACK from chip received
    T:10:28:19:384-Erase chip OK
    T:10:28:19:414-ACK from chip received
    T:10:28:19:43-Program data info stablished OK
    T:10:28:19:461-Total bytes to trasmit: 262144 TotalPackets: 1045
    T:10:28:50:893-Program finished
    T:10:28:19:46-Program written
    T:10:28:50:927-Success:E7970786
    T:10:28:50:927-Program CRC_OK
    T:10:28:51:065-ACK from chip received
    T:10:28:51:082-Bootloader data info stablished OK
    T:10:28:51:113-Total bytes to trasmit: 65536 TotalPackets: 262
    T:10:28:59:029-Program finished
    T:10:28:51:113-Bootloader written
    T:10:28:59:062-Success:E7970786
    T:10:28:59:062-Bootloader CRC_OK
    T:10:28:59:219-CCFG_ID_TI_FA_ENABLE set
    T:10:28:59:219-CCFG_ID_PWRPROF_TAP_LCK set
    T:10:28:59:219-CCFG_ID_TEST_TAP_LCK set
    T:10:28:59:219-CCFG_ID_CPU_DAP_LCK set
    T:10:28:59:219-CCFG_ID_AON_TAP_LCK set
    T:10:28:59:219-CCFG_ID_PBIST1_TAP_LCK set
    T:10:28:59:219-CCFG_ID_PBIST2_TAP_LCK set
    T:10:28:59:219-CCFG_ID_BL_BACKDOOR_EN set
    T:10:28:59:219-CCFG_ID_BL_ENABLE set
    T:10:28:59:219-CCFG_ID_BL_BACKDOOR_LEVEL set
    T:10:28:59:201-ACK from chip received
    

    错误发生在开始时的主程序写入中

    此致、Javier

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

    Javier、您好!

    这是在 CC1312R7 Launchpad 还是定制电路板上? (您认为这是硬件或软件问题吗?)

    引导加载程序、是在闪存中还是使用 ROM 引导加载程序?

    谢谢、

    Marie H.

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

    它位于  CC1312R7 Launchpad 上 、我们使用 ROM 引导加载程序对其进行编程(使用 UART 对其进行编程)、其中包含 MCU 引导加载程序和主程序的闪存。

    我们已经解决了焊接另一个 CC1312R7 的问题、我们可以使用它来恢复电路板、因此这是软件。我假设它曾被锁定在某种程度上。

    此致,哈维尔。

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

    今天、问题再次发生、同样的问题在程序上载过程中、连接已断开、当我们尝试使用 Uniflash 或 ROM 引导加载程序再次对其进行编程时、连接已完全锁定。

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

    Javier、您好!

    您是以 CCFG 编程作为起点还是终点? 如果担心连接不稳定、最好先使用 CCFG、这样就不会被器件锁定。

    您是否需要帮助以调试连接断开的原因?

    谢谢、

    Marie H.

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

    我在引导加载程序和主程序的 CRC 之后以 CCFG 配置结束。 一旦验证了这一点、程序将继续执行、因此我怀疑这是 CCFG 的问题。 事实是、在某些特定情况下、这可能是一个连接不稳定问题、如果发生不正确的 CRC 或超时、则程序会擦除闪存并再次尝试。

    无论如何、我都怀疑、出于未知原因、我们的计算机程序会将 ROM 引导加载程序的 ACK 超时视为重新发送该数据包的原因、而实际上引导加载程序确实发送了这个继续下载过程的 ACK 数据包、但首先是 COMMAND_DOWNLOAD 指示引导加载程序写入大小、并应避免使用正常写入命令在 CCFG 区域写入。

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

    Javier、您好!

    我们最近在串行引导加载程序应用中更新了我们的主机实现、或许值得一看?

    https://www.ti.com/lit/swra466 

    谢谢、

    Marie H.