SPRUJB8
April 2024
1
Abstract
Trademarks
1
Introduction
1.1
Reference Material
1.2
Function Listing Format
2
TMS320F28P65x Flash API Overview
2.1
Introduction
2.2
API Overview
2.3
Using API
2.3.1
Initialization Flow
2.3.1.1
After Device Power Up
2.3.1.2
Flash Wrapper and Bank Setup
2.3.1.3
On System Frequency Change
2.3.2
Building With the API
2.3.2.1
Object Library Files
2.3.2.2
Distribution Files
2.3.3
Key Facts for Flash API Usage
3
API Functions
3.1
Initialization Functions
3.1.1
Fapi_initializeAPI()
3.2
Flash State Machine Functions
3.2.1
Fapi_setActiveFlashBank()
3.2.2
Fapi_setupBankSectorEnable()
3.2.3
Fapi_issueAsyncCommandWithAddress()
3.2.4
Fapi_issueBankEraseCommand()
3.2.5
Fapi_issueProgrammingCommand()
3.2.6
Fapi_issueProgrammingCommandForEccAddresses()
3.2.7
Fapi_issueAutoEcc512ProgrammingCommand()
3.2.8
Fapi_issueDataAndEcc512ProgrammingCommand()
3.2.9
Fapi_issueDataOnly512ProgrammingCommand()
3.2.10
Fapi_issueEccOnly64ProgrammingCommand()
3.2.11
Fapi_issueAsyncCommand()
3.2.12
Fapi_checkFsmForReady()
3.2.13
Fapi_getFsmStatus()
3.3
Read Functions
3.3.1
Fapi_doBlankCheck()
3.3.2
Fapi_doVerify()
3.4
Informational Functions
3.4.1
Fapi_getLibraryInfo()
3.5
Utility Functions
3.5.1
Fapi_flushPipeline()
3.5.2
Fapi_calculateEcc()
3.5.3
Fapi_isAddressEcc()
3.5.4
Fapi_remapEccAddress()
3.5.5
Fapi_calculateFletcherChecksum()
4
Recommended FSM Flows
4.1
New Devices From Factory
4.2
Recommended Erase Flow
4.3
Recommended Bank Erase Flow
4.4
Recommended Program Flow
A Flash State Machine Commands
B Typedefs, Defines, Enumerations and Structure
B.1 Type Definitions
B.2 Defines
B.3 Enumerations
B.3.1 Fapi_FlashProgrammingCommandsType
B.3.2 Fapi_FlashBankType
B.3.3 Fapi_FlashStateCommandsType
B.3.4 Fapi_StatusType
B.3.5 Fapi_ApiProductionStatusType
B.4 Structures
B.4.1 Fapi_FlashStatusWordType
B.4.2 Fapi_LibraryInfoType
C Summary of Changes From v3.00.01 to v3.00.02
2.3.1
Initialization Flow