ZHCACJ1 april   2023 MSPM0G3507

 

  1.   摘要
  2.   商标
  3. 1引言
    1. 1.1 EEPROM 与片上闪存的区别
  4. 2实现
    1. 2.1 原理
    2. 2.2 标头
  5. 3软件说明
    1. 3.1 软件功能和流程
    2. 3.2 EEPROM 函数
      1. 3.2.1 全局变量
      2. 3.2.2 EEPROM_TypeB_readDataItem
      3. 3.2.3 EEPROM_TypeB_findDataItem
      4. 3.2.4 EEPROM_TypeB_write
      5. 3.2.5 EEPROM_TypeB_transferDataItem
      6. 3.2.6 EEPROM_TypeB_eraseGroup
      7. 3.2.7 EEPROM_TypeB_init
    3. 3.3 应用集成
    4. 3.4 EEPROM 仿真存储器占用空间
    5. 3.5 EEPROM 仿真时序
  6. 4应用方面
    1. 4.1 可配置参数的选择
      1. 4.1.1 数据项数
      2. 4.1.2 耐写次数
    2. 4.2 断电恢复
  7. 5参考文献

EEPROM_TypeB_init

该函数用于初始化 EEPROM 仿真。在使用 EEPROM 仿真之前,例如在器件上电后,应完成一次初始化。这样可以确保正确格式化相关的闪存区域并正确分配全局变量。

图 3-7 中显示了软件流程。首先,该函数会搜索活动组并通过遍历所有组标头来检查格式。如果存在活动组,它将擦除其他组并转移活动组。如果活动组不存在,则会擦除所有组。

图 3-8图 3-9 显示了 EEPROM_TypeB_init 的不同情况。A 是正常情况。B 是转移期间断电后的初始化。C 是未擦除 Erasing 组的情况。D 是所有组都为空的情况。E 是包含无效数据的情况。

该函数的输出为操作状态。此外,还会更新 gActiveGroupNum 和 gActiveDataItemNum 以跟踪活动组。

  • 输入:void
  • 输出:uint32_t 操作状态
GUID-46B189D8-359E-4800-A769-5BA7E3FC610B-low.png图 3-7 EEPROM_TypeB_init 的软件流程
GUID-5EB4350E-0C89-43E3-8C22-9B8C601C8CF3-low.png图 3-8 存在活动组时,EEPROM_TypeB_init 的三种情况
GUID-9F870880-721A-429A-9EFC-9EE3132227F1-low.png图 3-9 不存在活动组时,EEPROM_TypeB_init 的两种情况