SPRADE8B November 2023 – August 2025 F29H850TU , F29H859TU-Q1 , TMS320F28P650DH , TMS320F28P650DK , TMS320F28P650SH , TMS320F28P650SK , TMS320F28P659DH-Q1 , TMS320F28P659DK-Q1 , TMS320F28P659SH-Q1
EEPROM_PingPong_Config.h contains definitions that allow the user to change various aspects of EEPROM configuration. These aspects include:
Define which device variant is being used. This allows EEPROM emulation in Flash Banks not common to all devices.
// Un-comment appropriate definition if one of the following variants is being used
#define F28P65xDKx 1
//#define F28P65xSKx 1
//#define F28P65xSHx 1Choose between Page Mode and 64-Bit Mode.
//#define _64_BIT_MODE 1
#define PAGE_MODE 1Choose which Flash Bank to use for emulation. The Flash API and program are stored/run from Flash Bank 0 by default, so it cannot be used for EEPROM Emulation. In general, the Flash API and program must be stored/run from a different Flash bank than the ones used for EEPROM emulation.
#define FLASH_BANK_SELECT FlashBank1StartAddressDefine the Flash Sector size (unit is 16-bit words). This varies based on the device being used, reference the appropriate data sheet for details.
#define FLASH_SECTOR_SIZE F28P65x_FLASH_SECTOR_SIZE#define NUM_FLASH_SECTORS F28P65x_NUM_FLASH_SECTORS#define NUM_EEPROM_BANKS 4#define NUM_EEPROM_PAGES 3Choose the size of the data space contained within each EEPROM Page (unit is 16-bit words). Although any size can be specified, the size is adjusted to the closest multiple of four that is greater than or equal to the size specified. For example, a specified size of six 16-bit words per page is programmed as eight 16-bit words per page, with the last two being treated as 0xFFFF. This is to comply with Flash requirements (8-bit ECC is programmed for every 64-bit aligned Flash memory address).
#define DATA_SIZE 64