SPRUI33H November 2015 – June 2024 TMS320F280040-Q1 , TMS320F280040C-Q1 , TMS320F280041 , TMS320F280041-Q1 , TMS320F280041C , TMS320F280041C-Q1 , TMS320F280045 , TMS320F280048-Q1 , TMS320F280048C-Q1 , TMS320F280049 , TMS320F280049-Q1 , TMS320F280049C , TMS320F280049C-Q1
Flash memory can be programmed either by using the CCS Flash plugin or by using Uniflash. If these methods are not feasible in an application, the API can be used. The Flash memory can be programmed, erased, and verified only by using the F021 Flash API library. These functions are written, compiled and validated by Texas Instruments. The Flash module contains a Flash state machine (FSM) to perform program and erase operations. This section only provides a high-level description for these operations; for more information, refer to the TMS320F28004x Flash API Reference Guide.
Note that Flash API execution is interruptible. However, there can not be any read and fetch access from the Flash bank on which an erase and program operation is in progress. In single-bank devices, Flash API must be executed from RAM. In dual-bank devices, Flash API can execute from one bank to perform erase and program operations on another bank. If prefetch is enabled, note that the last 128 bits of Bank0 can not be accessed when erasing and programming Bank1 since accessing them causes a prefetch access to Bank1.
A typical flow to program Flash is:
Erase → Program → Verify
Always refer to the device-specific support folder in C2000Ware for the latest Flash API library.