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.

[参考译文] MSPM0L1227-Q1:客户在启用存储体交换后可以使用调试器刷写程序。

Guru**** 2783975 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/1612111/mspm0l1227-q1-customer-couldn-t-flash-the-program-with-debugger-after-enabling-bank-swap

器件型号: MSPM0L1227-Q1
Thread 中讨论的其他器件: UNIFLASH

您好、专家。

我们的客户遇到了一个问题、即在启用存储体交换后、他们无法使用调试器刷写程序。 他们想知道这种行为发生的原因。 您能回答以下 3 个问题。

  1. 即使使用 UniFlash、也会发生这种行为吗?
  2. 您能告诉他们为什么会发生这种行为吗?
  3. 如何解决此问题?

这是 Sysfg 的配置。

image.png

用于调试的配置。

image.png

执行存储体交换(当前存储体为 1)后加载 OUT 文件期间发生以下错误。

寄存器值。

image.png

日志

image.png

此致、

ITO

(b35ef7ae-5bef-4ff2-ac3a-4d8fad4c5e31)

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

    尊敬的 Ito:

    看起来在启用存储体交换后、逻辑组 0 受自动写保护、如果您尝试(通过 Uniflash 或 CCS)MCU 编程为地址 0x00000-0x10000(逻辑组 0)、它将显示由于逻辑组 0 受到保护而导致的擦除错误。

    这种情况有两种方法:

    1.如果只需要更新应用固件、则可以将固件更新为 0x10000 - 0x20000(逻辑组 1)地址、它应该可以正常工作。

    2.如果引导程序也需要更新,则客户需要首先恢复出厂设置,然后对引导固件进行编程。

    此致、

    Pengfei

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

    嗨、Pengfei、

    非常感谢您的反馈。

    我们知道有一种方法可以在逻辑组 0 受到保护期间刷写固件(组 0)。 但客户提到、如果发生这种情况、他们需要修改电路板。

    当逻辑组 0 受到保护时、您是否想擦除组 0? 如果有其他方法、这对他们真的很有帮助。

    此致、

    ITO

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

    尊敬的 Ito:

    正如我在#2 中提到的、恢复出厂设置如中所示  解锁 MCU  (修订版 G) 可能始终是一种将整个 MCU 擦除到出厂状态、然后将新固件重新编程到器件的方法。

    此致、

    Pengfei

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

    嗨、Pengfei、

    感谢您的建议。

    客户的电路板上没有 JTAG (SWCLK、SWDIO)。 我提到他们需要修改电路板。 很抱歉您的混淆。

    此致、

    ITO

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

    尊敬的 Ito:

    那么、客户如何首次将固件编程到 MCU 呢?

    如果有任何测试点、它们还可以将这些 SWD 引脚连接出去。

    但我认为、当他们尝试按以下方式更新地址范围 0x0000-0x10000 的固件时、应该会出现以下错误日志 XDS110 和 SWD 对吧?

    image.png

    此致、

    Pengfei

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

    嗨、Pengfei、

    很抱歉您的混淆。 我确认。

    此致、

    ITO

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

    嗨、Pengfei、

    我确认他们使用  SWCLK、SWDIO 进行刷写。 但 其电路板上没有用于恢复出厂设置的 NRST。

    客户在存储体交换后需要刷写的情况是有限的。 因此、他们会修改电路板、从而在几个电路板上扩展 NRST 线。

    非常感谢。 请关闭此主题。

    此致、

    ITO