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.

[参考译文] MSPM0L1227-Q1:闪存读取不起作用

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1515696/mspm0l1227-q1-flash-read-not-working

器件型号:MSPM0L1227-Q1

工具/软件:

尊敬的团队:

我在地址"0x0001F000"执行闪存读取、如下所示。 写入操作成功、我可以在存储器窗口中看到预期数据。

编写 API 的代码片段、

DL_FlashCTL_executeClearStatus (FLASHCTL);
DL_FlashCTL_unprotectSector (FLASHCTL、ADDRESS、DL_FLASHCTL_REGION_SELECT_MAIN);
/*擦除 MAIN 存储器中的扇区*/
gCmdStatus = DL_FlashCTL_eraseMemoryFromRAM (FLASHCTL、address、DL_FLASHCTL_command_size_one_word);
//通过清除 STATCMD 确保正确执行闪存命令
*在执行闪存操作前注册*/
DL_FlashCTL_executeClearStatus (FLASHCTL);
/*在没有 ECC 的情况下向 MAIN 存储器中的闪存进行8位写入*/
gCmdStatus = DL_FlashCTL_programMemoryFromRAM (FLASHCTL、address、(uint32_t *) DATA、dataSize、DL_FLASHCTL_REGION_SELECT_MAIN);

if (gCmdStatus == DL_FLASHCTL_COMMAND_STATUS_PASSIVE)

retval = true;
}

但是、当我在下一个周期中使用 memcopy/Pointer 执行闪存读取操作时、软件不再运行。 我是否需要执行一些特定步骤?

读取 API 的代码片段、

uint32_t *EolDataRead =(uint32_t *) 0x0001F000;
uint32_t HuberEolDataReadRam = 0;

HuberEolDataReadRam =*HuberEolDataRead;

此致、

Halappa  

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

    有轻微的错别字、

    1. 在运行时有条件地执行写操作。

    2.每次启动后,在初始化任务完成读取操作。

    读取 API 的代码片段、

    uint32_t *EolDataRead =(uint32_t *) 0x0001F000;
    uint32_t EolDataReadRam = 0;

    EolDataReadRam =*EolDataRead;

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

    您好、

    0x1F000为 ECC 校正区域。 请使用 写入 ECC API 来写入该区域。 之后您可以尝试阅读它。  

    此致、

    现金好