请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:MSP432P4111
有详尽的文档说明了如何通过分支到0x20200来利用和/或更改器件上的驻留引导加载程序(BSL)(例如 、请参阅 https://www.ti.com/tool/MSPBSL)。
然而,如果这种呼吁未能产生预期的反应,会怎样?
BSL 进行其自身的完整系统设置、包括时钟系统和中断向量。
但经过许多审判和错误之后,我发现了两个问题,这些问题在调用 BSL 方面是绝对致命的。
- 如果之前在 EUSCI_A0中有未完成的输出等待处理(加载 TXREG、而不等待输出完全串行化到 TXLINE)、即使过早地禁用模块、也会将某些内容保持在易失性状态、与 BSL 启动不兼容
- 最初在不禁用模块和相关中断的情况下使用 SysTick 服务对于 BSL 启动也是不可接受的。
在引入强制延迟以允许任何字符离开 TX 移位寄存器并禁用 SysTick 模块后、BSL 将启动正常。
;-)