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:BSL 批量擦除不起作用。

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1119630/msp430fr5969-bsl-mass-erase-not-working

器件型号:MSP430FR5969

硬件设置:我正在使用 MSP430FR 5969 Launchpad (https://www.ti.com/lit/ug/slau535b/slau535b.pdf?ts=1658258840470&ref_url=https%253A%252F%252Fwww.ti.com%252Ftool%252FMSP-EXP430FR5969)。 我移除了 J13上的 RXD 和 TXD 跳线、并将它们连接到具有适当电压电平的串行端口、以访问 UARTA0。 我有第二个串行端口连接了 J4上的 P2.5和 P2.5引脚、以访问用于"监控"软件的 UARTA1。

软件设置:我在 Code Composer 中编写了一个程序来监视 UARTA1输入、并将使用 SLAU319AE 的代码分支到 BSL 中

_disable_interrupt ();//禁用中断
((void (*)() 0x1000)();//跳转至 BSL

连接到 UARTA0以与 BSL 通信的软件以 C 语言编写、并在 Ubuntu 上运行。

当我从监视器分支到 BSL 并从 Liinux 代码发送一个受密码保护的命令时、系统似乎正在与 BSL 通信、我得到一个与 FRAM BSL 文档(SLAU550AA)所说的内容相匹配的响应。  

例如:我启动 BSL 并发送受保护命令"TX BSL 版本"、0x19。

st29142@574814-MITLL-VM-UBIUBOUN-2204:~μ A/eclipse-workspace/MSP430_BSL/build/default$./MSP430_BSL 19.
2022年7月19日构建的 BSL 文件加载器为10:59:16
正在打开端口/dev/ttyS1
端口打开 argc = 2
19 0x19
CRC 长度= 1
0x19
0x62e8
I+4 = 6 0x80 0x01 0x00 0x19 0xe8 0x62
写入6个字符
收到8个字符
接收到0x00
接收到0x80
接收到0x02
接收到0x00
接收到0x3b
接收到0x04
接收到0xe4
接收到0x84

数据包与4.1.5.7节中的示例匹配、响应表示 BSL 已锁定(字节6中的0x04)。 这符合预期、并确认我与 BSL 进行了通信、BSL 正常工作。

我的问题:当我命令批量擦除时、我没有收到 SLAU550AA 在4.1.5.3中指示的 BSL 响应、我应该得到。 此外、我在 Code Composer 中加载的监视器软件应该已经被擦除、但是当我用硬件复位(按钮 S3)来复位 Launchpad 时、监视器会启动。

$./MSP430_BSL 15.
2022年7月19日构建的 BSL 文件加载器为10:59:16
正在打开端口/dev/ttyS1
端口打开 argc = 2
15 0x15
CRC 长度= 1
0x15
0xa364
I+4 = 6 0x80 0x01 0x00 0x15 0x64 0xa3
写入6个字符
接收到0个字符

在复位时、从软件启动和从测试信号启动是否存在一些差异、从而使其无法正常工作?

Launchpad 上的 MSP430FR5969中是否加载了不同的 BSL?

暂存区中是否有一些隐藏硬件在复位时恢复显示器程序?

如果有任何建议,将不胜感激。

提前感谢。

 

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

    尊敬的 Stephen:

    您可以尝试在 CCS 中禁用 MPU 吗?  

    BSL 假定其依赖项处于复位状态。 CCS 通常会在默认情况下配置 MPU、而不会告诉您。 这可能会干扰 BSL。

    此致、

    Evan

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

    解决了我的问题。 谢谢你。