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.

[参考译文] MSP432P4111:无法使用自定义 BSL 对 MAIN 闪存进行编程

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1322184/msp432p4111-fail-to-program-main-flash-with-custom-bsl

您好!

我有一个从 projet "MSP432BSL_1_01_00_00"开始的自定义引导加载程序;主要目的是将数据从外部复制到主闪存。

下面的代码仍然有一些问题、它使用 index = 0、但一旦 index = 1、并出现以下消息:"break at address "0x22968"且没有可用的调试信息、或程序代码之外。"

uint32_t index = 0;
uint8_t data[4096];
uint32_t 地址= 0x090000;
uint32_t start_addr = 0;
uint32_t end_addr = 0;

对于(索引= 0;索引< 100;索引++)
{

memset (数据、04096);

start_addr =((index * 4096));
end_addr =(((index + 1)* 4096)-1);

READ_DATA (start_addr + address、&data[0]、4096);                          //从外部闪存获取4K 数据

Map_FlashCtl_A_unprotectMemory (start_addr、end_addr);

MAP_FlashCtl_A_eraseSector (START_addr);

while (! MAP_FlashCtl_A_programMemory (DATA、(void*) start_addr、(uint32_t) 4096);      //失败,索引= 1

MAP_FlashCtl_A_protectMemory (start_addr、end_addr);

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

    经过额外检查、我注意到在 TI 网站上、最新的 MSP432P4 SDK 为 v3.40.01.02、而"MSP432BSL_1_01_00_00"示例中的文档报告 RC4 v3.41.00.11 (在闪存方面有若干改进)... 您能提供最新信息吗?

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

    您好!

     抱歉、MSP432P 已停产、我们将 在 E2E 论坛上不再提供对此器件的直接支持。  您可以在 E2E 论坛中搜索以前讨论的存档帖子、这些帖子可以帮助解决您的问题。  

     从 BSL 产品页面上可以看出、最新版本似乎是3_04_00_02。  

    https://software-dl.ti.com/msp430/msp430_public_sw/mcu/msp430/MSPBSL_Scripter/latest/index_FDS.html