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.

[参考译文] LP-MSPM0G3507:调用 BSL

Guru**** 2442090 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1548657/lp-mspm0g3507-bsl-invoking

器件型号:LP-MSPM0G3507


工具/软件:

我尝试从 ESP32 调用 BSL 来将自定义映像刷写到 MSPM0 中。 我遇到的几个问题和错误。 我已经了解了 BSLGuide 和 BSL 实现 PDF。 我目前正在尝试调用 BSL、但它无法正常工作。 这是我尝试调用 BSL 的代码。  

D12 连接至 PA18。 然后将线路驱动为低电平
D11 连接到 NRST。 在执行此功能之前、线路被驱动为高电平。
void enterbsl(){
 //步骤 0:首先将 BSL_invoke (PA18) 置为高电平
 digitalWrite (D12、high); // PA18 = BSL_invoke、高电平有效
 delayMicroseconds (500);  //根据 TI 指导、将其保持≥500us

 //步骤 1:将 NRST 脉冲设置为低电平以触发 BOOTRST
 数字写入(D11,低电平)  // NRST 低电平(复位)
 延迟 (2);          //将 RESET 保持在低电平;100us 足够大(此处为 2ms 是安全的)

 //步骤 2:释放 NRST
 digitalWrite (D11、high);  // NRST 高电平—器件引导、看到 BSL_invoke 高电平

 //步骤 3:在引导加载程序启动时短暂保持 BSL_invoke 为高电平
 Delay (500);//留出一些时间让引导代码采样并进入 BSL
 //可选:如果您的应用程序重新使用 PA18、您可以随后将它拉低
}  
接下来、我将 TX 连接到 PA11、将 RX 连接到 PA10。 在进入向 BSL 发送连接之前、我读取了 UART 线路、结果为 0xC0。 然后什么都不做。  
在 Invoke+读取 UART 线路之后、我将发送连接。  
 //我的代码片段是我通过 UART 编写数据包信息的地方。  
 SERIAL2.WRITE (0x80);//标头

 SERIAL2.WRITE (0x01);//长度
 SERIAL2.WRITE (0x00);

 SERIAL2.WRITE (0x19);//命令(我的所有数据)
 uint8_t data = 0x19
 uint32_t crc32Code = CRC32_ISO (&data、1);

SERIAL2.WRITE ((uint8_t)(crc32Code & 0xFF));     // LSB
SERIAL2.WRITE ((uint8_t)((crc32Code >> 8)& 0xFF);
SERIAL2.WRITE ((uint8_t)((crc32Code >> 16)& 0xFF));
SERIAL2.WRITE ((uint8_t)((crc32Code >> 24)& 0xFF));// MSB
 此后、我会等待 BSL 的任何响应、但没有任何响应。  
您能帮我确定问题吗? 我 花了多个小时、但还无法找到解决方案。  
此外、为了便于参考、我将软件调用刷写到了 MSPM0 中、但我仍然只是尝试进行常规 MSPM0 硬件调用、以便它适用于 MSPM0 上的任何映像。  
 
非常感谢  
此致、  
Prathik Narsetty
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Prathik

    温馨提示、BSL 调用需要确保 PA18 在上电后保持高电平、但是在执行引导复位时、IO 端口默认返回高阻抗状态、如 TRM 中所示、因此我认为它不会正确进入 BSL。

    此致、
    彼得