stm模拟eeprom的问题?

[复制链接]
2515|1
 楼主| heuyck 发表于 2012-7-4 10:18 | 显示全部楼层 |阅读模式
看代码ee_init中几乎每次都会有erase page。比如以下代码,不去检查page0是否真的erased,而是无脑地再次erase。这是在init里,多耗点运行时间对性能又没影响。
或者我理解有错?已经erase的page再次erase不会影响寿命?

  /* Check for invalid header states and repair if necessary */
  switch (PageStatus0)
  {
    case ERASED:
      if (PageStatus1 == VALID_PAGE) /* Page0 erased, Page1 valid */
      {
        /* Erase Page0 */
        FlashStatus = FLASH_ErasePage(PAGE0_BASE_ADDRESS);
        /* If erase operation was failed, a Flash error code is returned */
        if (FlashStatus != FLASH_COMPLETE)
        {
          return FlashStatus;
        }
      }
wuguoyan 发表于 2012-7-4 17:37 | 显示全部楼层
这只是demo,要更好的当然你自己可以实现和优化的嘛
您需要登录后才可以回帖 登录 | 注册

本版积分规则

42

主题

189

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部