ZHCAEZ8A February 2025 – August 2025 MSPM0C1103 , MSPM0C1103-Q1 , MSPM0C1104 , MSPM0C1104-Q1 , MSPM0C1105 , MSPM0C1106 , MSPM0C1106-Q1 , MSPM0G1105 , MSPM0G1106 , MSPM0G1107 , MSPM0G1505 , MSPM0G1506 , MSPM0G1507 , MSPM0G1518 , MSPM0G1519 , MSPM0G3105 , MSPM0G3105-Q1 , MSPM0G3106 , MSPM0G3106-Q1 , MSPM0G3107 , MSPM0G3107-Q1 , MSPM0G3505 , MSPM0G3505-Q1 , MSPM0G3506 , MSPM0G3506-Q1 , MSPM0G3507 , MSPM0G3507-Q1 , MSPM0G3518 , MSPM0G3518-Q1 , MSPM0G3519 , MSPM0G3519-Q1 , MSPM0H3216 , MSPM0H3216-Q1 , MSPM0L1105 , MSPM0L1106 , MSPM0L1116 , MSPM0L1117 , MSPM0L1227 , MSPM0L1227-Q1 , MSPM0L1228 , MSPM0L1228-Q1 , MSPM0L1303 , MSPM0L1304 , MSPM0L1304-Q1 , MSPM0L1305 , MSPM0L1305-Q1 , MSPM0L1306 , MSPM0L1306-Q1 , MSPM0L1343 , MSPM0L1344 , MSPM0L1345 , MSPM0L1346 , MSPM0L2227 , MSPM0L2227-Q1 , MSPM0L2228 , MSPM0L2228-Q1
实现此功能需要六个函数。除 节 5 中提到的三个函数外,其余三个函数主要由 EEPROM_TypeA_init 调用。
EEPROM_TypeA_initEEPROM_TypeA_writeDataEEPROM_TypeA_eraseLastSectorEEPROM_TypeA_readDataEEPROM_TypeA_searchCheckEEPROM_TypeA_repairFormat此外,七个全局变量用于记录 EEPROM 仿真的状态。有四个全局变量用于跟踪活动记录。
uint32_t gActiveRecordAddressuint32_t gNextRecordAddress;uint16_t gActiveRecordNum;uint16_t gActiveSectorNum;gActiveRecordAddress 和 gNextRecordAddress 用于存储活动记录相关地址。
gActiveRecordNum 和 gActiveSectorNum 用于跟踪活动记录的位置。
有三个全局变量用于表示标志。
gEEPROMTypeASearchFlag;gEEPROMTypeAEraseFlag;gEEPROMTypeAFormatErrorFlag;当存在活动记录时设置 gEEPROMTypeASearchFlag。
当扇区已满且需要擦除时设置 gEEPROMTypeAEraseFlag。
当发现格式错误时设置 gEEPROMTypeAFormatErrorFlag。