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.

[参考译文] MSP430FR5869:MSP430 GPIO 在进入 BSL 后复位

Guru**** 2502205 points
Other Parts Discussed in Thread: MSP430FR2433, MSP430F5152, MSP430FR5869

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/683826/msp430fr5869-msp430-gpio-reset-after-enter-into-bsl

器件型号:MSP430FR5869
主题中讨论的其他器件:MSP430FR2433MSP430F5152

您好!

我在刻录 MSP430固件时遇到问题。

MSP430启动时、它会运行我的代码、该代码只需设置 GPIO 即可打开 LED。

在 Rst 和 TEST 引脚上设置 BSL 进入序列后、MSP430可进入 BSL 模式。

但我发现、大约1秒后、GPIO 将重置为默认值、LED 将关闭、但 UART 上的 BSL 仍在工作。

这是 GPIO 的正确行为吗?

谢谢

潘振杰

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    你好,振杰
    在 rst 和 TEST 引脚上设置 BSL 进入序列期间、我是否可以知道您是否具有电源复位或软件复位器件?
    在 BOR 和 POR 发生后、器件将通过引导代码检查 BSL 进入序列。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Xiaodong、

    我只需按照图2所示进入 BSL、我不理解您的"电源复位或软件复位"意思。

    在这个序列之后、我可以通过 UART 发送/接收 BSL 命令、但是 GPIO 看起来将复位为默认输入模式。

    谢谢

    潘振杰

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    你好,振杰
    在这种情况下、由于 RST 从低电平变为高电平、器件已复位。
    BSL 工作正常。 在 BSL 工作期间、用户代码不起作用。 您遇到的现象应该是正确的。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢、Xiaodong。

    在 BSL 代码运行期间、用户代码不工作是可以的。
    但是、是否有任何方法可以保持硬件状态(如 GPIO)?
    我只想进入 BSL、但不想复位芯片。

    谢谢
    潘振杰
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    有2种方法可用于调用 MSP430 FRAM 器件上的 BSL 应用:
    软件 BSL 调用和硬件 BSL 调用。
    软件 BSL 调用不是通过复位进行的。 它是软件访问方法。
    我认为软件 BSL 调用是保持硬件状态的方法
    有关详细信息、请参阅 :www.ti.com/.../slau550o.pdf
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我认为软件方法对于我的问题应该很有用。
    我担心的是、我以前使用过 MSP430 5152、2433、它们的行为与5869不同。
    通过5152和2433中的硬件方法进入 BSL 模式后、GPIO 状态不会改变。

    谢谢
    潘振杰
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果您提到的是 F5152和 G2433、则 FR 器件的端口设计与 MSP 闪存器件稍有不同、可提高低功耗性能。 例如、在 FR 器件中有 LOCKLPM5位用于解锁端口。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    MSP430F5152和 MSP430FR2433、那么至少 MSP430FR2433应该与 MSP430FR5869相同?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    潘振杰您好、

    让我重复该步骤、确保我正确理解:

    1. 已下载到器件中的应用程序上的 LED 指示灯
    2. BSL 进入序列被应用于器件
    3. 第(2)步应使 LED 打开应用程序现在关闭。 这是正确的行为。
    4. 尝试不与 BSL 通信、而是在没有任何 BSL 进入序列的情况下复位/重启器件。 在此步骤中、您将看到 LED 再次亮起。

    在上电/复位期间,在器件上运行的第一个操作是启动代码(在 ROM 中编程的工厂应用程序)。 如果提供了任何 BSL 序列、则将读取引导代码。 如果是、则执行在 BSL 区域@1000h 中编程的 BSL 应用。 如果没有给定 BSL 序列、它将运行由复位矢量引用的应用程序。

    您能否提供更多信息来说明您为 LED 设置了哪些 GPIO? 如果您对 LED 使用相同的 BSL 引脚-大多数情况下是 BSL TX 引脚、您可以找到即使您进入 BSL、LED 仍然亮起的行为。 原因是 BSL 执行后、BSL TX 引脚将被拉高、因此它也会将电压施加到 LED。