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.

[参考译文] TM4C1294NCPDT:EEPROM 内容丢失...

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/583349/tm4c1294ncpdt-lost-of-eeprom-content

器件型号:TM4C1294NCPDT

用户数据存储在 TM4C1294的 EEPROM 中、我们在现场确认了三种 EEPROM 内容丢失的情况、我们在实验中成功地重复了几次、但此后我们无法重复。

这是一款数据采集器件、前端接触了 ESD 放电等内容、从而细分了 USB 通信。

从 USB 电缆拔下并重新连接后、可以正确重新启动器件、但存储在 EEPROM 中的一些数据丢失

我想知道可能的原因是什么...

无论如何、我想使用块锁来保护整个 EEPROM。

以下程序是否正确?

  1. 使用 EEPROMBlockPasswordSet (uint32_t ui32Block、uint32_t * pu32Password、uint32_t ui32Count)为块0设置密码、这将适用于整个 EEPROM
  2. 在 块0上使用 EEPROMBlockProtectSet 来设置整个 EEPROM 的保护选项
  3. 使用 EEPROMBlockLock 来应用保护
  4. 基于保护选项的 R/W

要移除保护、请按照步骤2中的相同步骤更改保护选项

如果没有,是否有任何关于如何正确使用 blocklock 的示例?

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

    我想知道您遇到此问题的器件版本。 芯片修订版本1和2受勘误表 MEM#03的影响。 更多 详细信息、请参阅勘误文档 SPMZ850。

    我怀疑漏洞的时间是在对块进行编程或擦除时。 可能有必要保护所有块、然后启用块0、并且在执行更新时仅启用要更新的块。

    我不知道明确显示 EEPROMBloickLock()函数的示例,但对 TivaWare 驱动程序库用户指南的描述 非常简单。 如果您有问题、请告诉我。

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

    Bob、您能确认我的上述用于锁定块的伪步骤是否有效? 谢谢!
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    拼写错误、应该是这样的

    TM4C1294NCPDTI352AX01W G4

    器件版本3?

    根据 SPMZ850、它不应受到 MEM#03的影响