SPRADE8A November 2023 – April 2024 F29H850TU , F29H859TU-Q1 , TMS320F28P650DH , TMS320F28P650DK , TMS320F28P650SH , TMS320F28P650SK , TMS320F28P659DH-Q1 , TMS320F28P659DK-Q1 , TMS320F28P659SH-Q1
Many applications require storing small quantities of system related data (calibration values, device configuration) in non-volatile memory so that it can be used or modified and reused even after power cycling the system. Electrically erasable programmable read-only memory, or EEPROM, is primarily used for this purpose. EEPROMs have the ability to erase and write individual bytes of memory many times over and the programmed locations retain the data over a long period even when the system is powered down. This application report and the associated code help to define a sector(s) of on-chip Flash memory as the emulated EEPROM and is transparently used by the application program for writing, reading, and modifying the data.
Project collateral and source code discussed in this application report can be found in C2000Ware v5.02.00.00 (or higher) at the following path(s): C2000Ware_5_02_00_00/driverlib/f28p65x/examples/c28x/flash/ , C2000Ware_5_02_00_00/driverlib/f28003x/examples/flash/
All trademarks are the property of their respective owners.
Generation 3 C2000 MCUs come with different configurations of Flash memory that is arranged in multiple sectors. Unfortunately, the technology used for the on-chip Flash memory does not allow adding a traditional EEPROM on the chip. Some designers use an external EEPROM part for such non-volatile storage. The good news is that Flash memory is a specific type of EEPROM and all Generation 3 C2000 MCUs have in-circuit programming ability for the Flash memory. This application report makes use of this facility and allows using sectors of on-chip Flash as EEPROM by emulating the EEPROM functionality within the limitations of the Flash memory. Note that at least one Flash sector is entirely used as an emulated EEPROM; therefore, it is not available for the application code.