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.

[参考译文] CCS/TMS570LC4357:闪存擦除/写入问题

Guru**** 2481675 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/699129/ccs-tms570lc4357-flash-memory-erase-write-questions

器件型号:TMS570LC4357

工具/软件:Code Composer Studio

我使用 CCS 来调试 TMS570LC43xx 的闪存驱动程序代码。 我目前正在开发此闪存驱动程序、并且遇到了一些问题。

我的问题与该社区的另一个主题 中描述的问题完全相同:e2e.ti.com/.../1788528

我对 TMS570LC43xx 的闪存擦除/写入功能有疑问。 我注意到、当在闪存存储器组上执行块擦除时、擦除值不是所有擦除地址的0xFFFFFFFF。 请参阅以下屏幕截图。

可以看到、已经擦除的数据 apperas 有错误、不是完全0xFFFFFFFF。 当我执行空白检查时、由于此原因、检查失败!

我已经尝试从构建选项的"版本"选项卡中禁用编译器的优化、如解决方案中所述。 但问题仍然存在。

有什么解决方法的想法吗?

Ferran Casanovas。

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

    擦除闪存后、闪存中的值应为0xFFFFFFFF。 当闪存被擦除时、ECC 区域也被擦除(0xFF)。 当 CPU 从闪存中读取数据(64位、0xFFFFFFFF)时、检测到 ECC 错误、校正将应用于您从闪存中读出的值(在 CCS 存储器浏览器中或变量中)。 这就是内存浏览器中的值不是0xFFFFFFFF 的原因。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Wang、

    我知道。 那么、我应该如何使用函数 Fapi_doBlankCheck??? 因为现在正在检测内存 Broswer 上已更改的数字、而不是 shoudl 在那里的0xFFFFFF.

    此致、

    Ferran Casanovas。

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

    您可以使用 JTAG DAP 读取存储器以检查值是否为0xFFFFFFFF。