SLAAEB4 april   2023 MSPM0G1105 , MSPM0G1106 , MSPM0G1107 , MSPM0G1505 , MSPM0G1506 , MSPM0G1507 , MSPM0G3105 , MSPM0G3106 , MSPM0G3107 , MSPM0G3505 , MSPM0G3506 , MSPM0G3507 , MSPM0L1105 , MSPM0L1106 , MSPM0L1303 , MSPM0L1304 , MSPM0L1304-Q1 , MSPM0L1305-Q1 , MSPM0L1306 , MSPM0L1306-Q1 , MSPM0L1343 , MSPM0L1344 , MSPM0L1345 , MSPM0L1346

 

  1.   Abstract
  2.   Trademarks
  3. 1Introduction
    1. 1.1 Difference Between EEPROM and On-Chip Flash
  4. 2Implementation
    1. 2.1 Principle
    2. 2.2 Header
  5. 3Software Description
    1. 3.1 Software Functionality and Flow
    2. 3.2 EEPROM Functions
      1. 3.2.1 Global Variables
      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 Application Integration
    4. 3.4 EEPROM Emulation Memory Footprint
    5. 3.5 EEPROM Emulation Timing
  6. 4Application Aspects
    1. 4.1 Selection of Configurable Parameters
      1. 4.1.1 Number of Data Items
      2. 4.1.2 Cycling Capability
    2. 4.2 Recovery in Case of Power Loss
  7. 5References

Header

Header is designed to manage the group. By checking the header of a single group, the status of the group can be determined. By checking the headers of all groups, the active group can be found and the format of EEPROM emulation can be checked.

Each group has a header to show its status. Header is set to 8 bytes with 3 flags. Depending on the flags, there are four record status in total. The relationship between flags and record status is showed in Table 2-1.

Table 2-1 Relationship Between Flags and Record Status
Group Status Description Active flag End of Receiving Flag Erasing Flag
Erased Default state after erase 0xFFFF 0xFFFF 0xFFFF
Receiving When transferring data items, Receiving group receives latest items from the full group 0x0000 0xFFFF 0xFFFF
Active Active group is the group not full of items, and it is waiting for new items to be written 0x0000 0x0000 0xFFFF
Erasing Erasing group is the group waiting to be erased - - 0x0000

Figure 2-3 shows how states translate to each other. All flags are erased at first. If erased group is written data item to, it will be changed to Active and waiting to be written.

If the group is full, next group will be changed to Receiving, and the latest data items are transferred to the Receiving group. After transfer, the old full group will be changed to Erasing and waiting to be erased. The Receiving group will be Active then.

GUID-66071EA9-A7FC-4DCE-A6EE-7E540B9351F4-low.png Figure 2-3 How Record Status Change