主题中讨论的其他器件:MSP430FR5969、 MSP-FET
MSP430FR5969 BSL 的软件/固件初始化
大家好、
我正在使用 MSP430FR5969并尝试使用数据表中的固件功能调用 BSL。 我还使用 MSP-FET 作为 BSL-Scripter 和 MSP430FR5969之间的桥梁。 我正在使用 UART A0端口进行 BSL 编程。
我的问题是无法使固件调用可靠地工作。 硬件调用是防弹的、可以使其每次都正常工作、但这不是我在现场对器件进行编程时可以使用的方法、因此需要使用固件方法来执行此操作。 如果是、固件调用似乎每十次执行一次。 它非常不可靠,而且不可能重复。 我已经尝试了多种方法,到目前为止,最可靠的方法是将 MCLK 设置为1 MHz,但仍然有问题。
以下是我的代码。 我对此感到非常沮丧,以至于在设置时钟后,我才让设备直接跳转到引导加载程序。

这是我的脚本文本文件

操作顺序。
- 使用 MSP-FET 并使用两线制编程对 MSP430FR5969进行编程
- 禁用/断开调试器
- 弹出到脚本程序并运行我的脚本。
- 随后会出现大规模混乱。
我通过 BSL-Scripter 看到的错误消息是:
- 未知 ACK–我理解这是错误的确认、并且未调用 BSL。 这适用于错误和正确的密码 RX 传输

- BSL 密码正确! –我有时会在传递错误密码时获得此信息。 通常在多次尝试使用脚本程序之后。 这很奇怪、因为密码故意错误。

- BSL 已锁定–此错误适用于传递错误密码但芯片不跳转到 BSL 的情况。 当我尝试通过 BSL-Scripter 上载我的十六进制文件时、我使用正确的密码看到了这一点。 但是、我确实注意到了某个情况、即当我发送错误的密码并且我获得 BSL 锁定错误的频率比它看起来更低。 奇怪和不一致,可能根本不意味着什么。

- 标题无效–不确定这是什么、需要挖掘更多信息。 通常与未知命令错误配对。

当它决定运行时、这是来自脚本编写器的日志

我的问题是:
我缺少什么? 我是否需要以不同的方式设置 CLK? 我是否还需要对 UART 端口执行某项操作? 为什么它如此不一致? 我是否需要清除配置寄存器?
文档也几乎没有帮助、所有文档都说是使用
的、然后引用另一个文档、该文档引用了另一个文档、而它只是一个大圈。
如果有人有任何建议、请告诉我。 感谢您花时间阅读并提供帮助! 我真的很感激



