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.

[参考译文] MSP430FR5969-SP:使用串行端口终端通过软件调用 BSL 时出现问题

Guru**** 2538955 points


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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1048612/msp430fr5969-sp-issue-invoking-bsl-through-software-using-serial-port-terminal

器件型号:MSP430FR5969-SP

随函附上我们的问题和疑问:

e2e.ti.com/.../MSP-BSL-102721.pdf

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

    此问题正在脱机处理。  

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

    尊敬的 Jace:  

    感谢您关注此问题、我对其进行了更新 。 写操作如下。 你们是否能够通过重新出现此问题或提出任何解决方案来实现任何目标?

    我想我在上次写操作中没有提到过这一点、但当我们使用软件调用引导加载程序时、我们能够通过引导加载程序对其进行两次编程。 使用"批量擦除"命令、然后使用正确的密码、再使用错误的密码、然后使用正确的密码。 从那时起、当发送批量擦除命令或输入正确的密码时、芯片会自行复位。  

    --开始更新--

    更新:  我首先为我们的应用程序发送了正确的 BSL 密码、而不是使用 RX 密码命令传递错误密码。 通过读取中断矢量表中的十六进制值、存储器位置0xE0 - 0xFFFF、可以找到正确的密码。 下面是中断矢量表的屏幕截图。  

    和之前一样、我通过软件调用 BSL。 然后、我通过 RealTerm 发送 RX 密码命令。  

    0x80 0x21 0x00 0x11 0x4f 0x1E 0x4f 0x1E 0x4c 0xb2 0x4f 0x1E 0x4f 0x1E 0x4f 0x4f 0x1E 0x4e 0x4e 0x3e

    0x4f 0x1E 0x4d 0x58 0x4f 0x1E 0x4f 0x1E 0x4f 0x1E 0x4f 0x1E 0x4f 0x1E 0x4f 0x4f 0x1E 0x4e 0x4e 0xFE 0x88 0x11

     当我将这些值与正确的校验和相配时、芯片会自行复位。 当我通过传递不正确的校验和值时、我会收到一个0x52、因为校验和不正确、这是预期的。 下面是系统复位的示波器捕获。 当芯片被复位/加电时、它会自动将我们的一些工程数据发送给我们、让我们知道它已经准备就绪(紫色线在捕捉的右侧被切换。

    发送正确的 RX 密码或批量擦除命令时、芯片会自行复位。

    不确定从哪里去。 如果您能提供任何见解、我们将不胜感激。 感谢你能抽出时间并提供帮助。

     

    Stefan

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

    您好!

    我能够解决我的问题。 主要是禁用 MPU (文档中未提及)、复位 UART 并清除其中断和标志(文档中也未提及)。 但它现在的工作方式与广告中所说的相同。 谢谢。