你好,我们在 XMC4200 的 EEPROM 仿真中遇到了问题。发现的问题------------------- 我们使用 DAVE 应用程序分配了 70 字节的内存,但实际上,我们使用了 92 字节的内存。读写操作进展顺利,没有发现任何问题。 当微控制器开启时,所有EEPROM数据都被擦除了,所有数据都为零。 这在之前的 POWER_DRILL2GO 上 POWER_DRILL2GO 下行周期中没有观察到。 我们试图向该位置写入新数据,但无法访问。 我们检查了名为 " e_eeprom_xmc4_updateFlashContents " 的 API 返回的是 " E_EEPROM_XMC4_STATUS_WRITE_ERROR "。 然后进一步调查发现,API " e_eeprom_xmc4_lwritetoFlash " 返回了错误。这是它返回错误的条件。 if ((xmc_flash_getStatus () (uint32_t) (XMC_FLASH_STATUS_VERIFY_ERROR) | XMC_FLASH_STATUS_OPERAtiON_ERROR))!= 0) { status = E_EEPROM_XMC4_STATUS_WRITE_ERROR; break; }当我们擦掉整个闪存时,它又开始工作了。 所有读/写操作均正常运行。问题。--------------EEPROM是如何在微控制器 POWER_DRILL2GO 时被完全擦除的。为什么写入操作受到限制。整个闪存擦除后,EEPROM 如何重新开始运行。如何解决这个问题。有什么办法可以重现这个问题吗。
共2条
1/1 1 跳转至页
XMC4200的EEPROM仿真时,EEPROM数据都被擦除了的原因?

2楼
以下是可能导致EEPROM数据被擦除的一些原因:
1. 分配的内存大小不够:您提到使用了70字节的内存,但实际上使用了92字节。如果分配的内存不足以容纳实际写入的数据,那么可能会发生覆盖并且导致数据擦除。
2. 未正确保存数据:在EEPROM仿真中,数据通常在断电后仍然保持。如果您的代码没有正确保存数据到EEPROM中,那么在微控制器重新启动时数据将被擦除。
3. API调用错误:您提到使用的API返回了"E_EEPROM_XMC4_STATUS_WRITE_ERROR"。这可能表示在尝试写入EEPROM时发生了错误,导致数据被擦除。您可以进一步检查API的使用方式以及任何可能导致错误的参数或配置。
为了解决问题,您可以采取以下步骤:
1. 确保您正确分配了足够的内存空间用于存储数据。
2. 检查您的代码,确保在适当的地方保存数据到EEPROM中,以便在断电后仍然保持。
3. 仔细检查API的使用方式,确保传递正确的参数和配置。如果可能,查阅相关文档以了解API的正确使用方法。
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【EEPW电子工程师创研计划】技术变现通道已开启~ | |
发原创文章 【每月瓜分千元赏金 凭实力攒钱买好礼~】 | |
【EEPW在线】E起听工程师的声音! | |
“我踩过的那些坑”主题活动——第001期 | |
高校联络员开始招募啦!有惊喜!! | |
【工程师专属福利】每天30秒,积分轻松拿!EEPW宠粉打卡计划启动! | |
送您一块开发板,2025年“我要开发板活动”又开始了! | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
【我踩过的那些坑】STM32的硬件通讯调试过程的“坑”被打赏50分 | |
【我踩过的那些坑】晶振使用的问题被打赏100分 | |
【我踩过的那些坑】电感选型错误导致的处理器连接不上被打赏50分 | |
【我踩过的那些坑】工作那些年踩过的记忆深刻的坑被打赏10分 | |
【我踩过的那些坑】DRC使用位置错误导致的问题被打赏100分 | |
我踩过的那些坑之混合OTL功放与落地音箱被打赏50分 | |
汽车电子中巡航控制系统的使用被打赏10分 | |
【我踩过的那些坑】工作那些年踩过的记忆深刻的坑被打赏100分 | |
分享汽车电子中巡航控制系统知识被打赏10分 | |
分享安全气囊系统的检修注意事项被打赏10分 |