SPRUJ27C November   2022  – November 2023 TMS320F280033 , TMS320F280034 , TMS320F280034-Q1 , TMS320F280036-Q1 , TMS320F280036C-Q1 , TMS320F280037 , TMS320F280037-Q1 , TMS320F280037C , TMS320F280037C-Q1 , TMS320F280038-Q1 , TMS320F280038C-Q1 , TMS320F280039 , TMS320F280039-Q1 , TMS320F280039C , TMS320F280039C-Q1

 

  1.   1
  2.   Trademarks
  3. 1Introduction
    1. 1.1 Reference Material
    2. 1.2 Function Listing Format
  4. 2TMS320F28003x Flash API Overview
    1. 2.1 Introduction
    2. 2.2 API Overview
    3. 2.3 Using API
      1. 2.3.1 Initialization Flow
        1. 2.3.1.1 After Device Power Up
        2. 2.3.1.2 FMC and Bank Setup
        3. 2.3.1.3 On System Frequency Change
      2. 2.3.2 Building With the API
        1. 2.3.2.1 Object Library Files
        2. 2.3.2.2 Distribution Files
      3. 2.3.3 Key Facts For Flash API Usage
  5. 3API Functions
    1. 3.1 Initialization Functions
      1. 3.1.1 Fapi_initializeAPI()
    2. 3.2 Flash State Machine Functions
      1. 3.2.1 Fapi_setActiveFlashBank()
      2. 3.2.2 Fapi_issueAsyncCommandWithAddress()
      3. 3.2.3 Fapi_issueBankEraseCommand()
      4. 3.2.4 Fapi_issueProgrammingCommand()
      5. 3.2.5 Fapi_issueProgrammingCommandForEccAddresses()
      6. 3.2.6 Fapi_issueFsmSuspendCommand()
      7. 3.2.7 Fapi_issueAsyncCommand()
      8. 3.2.8 Fapi_checkFsmForReady()
      9. 3.2.9 Fapi_getFsmStatus()
    3. 3.3 Read Functions
      1. 3.3.1 Fapi_doBlankCheck()
      2. 3.3.2 Fapi_doVerify()
      3. 3.3.3 Fapi_calculatePsa()
      4. 3.3.4 Fapi_doPsaVerify()
    4. 3.4 Informational Functions
      1. 3.4.1 Fapi_getLibraryInfo()
    5. 3.5 Utility Functions
      1. 3.5.1 Fapi_flushPipeline()
      2. 3.5.2 Fapi_calculateEcc()
      3. 3.5.3 Fapi_isAddressEcc()
      4. 3.5.4 Fapi_remapEccAddress()
      5. 3.5.5 Fapi_calculateFletcherChecksum()
  6. 4Recommended FSM Flows
    1. 4.1 New Devices From Factory
    2. 4.2 Recommended Erase Flow
    3. 4.3 Recommended Bank Erase Flow
    4. 4.4 Recommended Program Flow
  7. 5Software Application Assumptions of Use Related to Safety
  8.   A Flash State Machine Commands
    1.     A.1 Flash State Machine Commands
  9.   B Compiler Version and Build Settings
  10.   C Object Library Function Information
    1.     C.1 TMS320F28003x Flash API Library
  11.   D Typedefs, Defines, Enumerations and Structures
    1.     D.1 Type Definitions
    2.     D.2 Defines
    3.     D.3 Enumerations
      1.      D.3.1 Fapi_FlashProgrammingCommandsType
      2.      D.3.2 Fapi_FlashBankType
      3.      D.3.3 Fapi_FlashStateCommandsType
      4.      D.3.4 Fapi_FlashReadMarginModeType
      5.      D.3.5 Fapi_StatusType
      6.      D.3.6 Fapi_ApiProductionStatusType
    4.     D.4 Structures
      1.      D.4.1 Fapi_FlashStatusWordType
      2.      D.4.2 Fapi_LibraryInfoType
  12.   E Parallel Signature Analysis (PSA) Algorithm
    1.     E.1 Function Details
  13.   F ECC Calculation Algorithm
    1.     F.1 Function Details
  14.   G Errata
  15.   Revision History

Flash State Machine Commands

Table 6-1 Flash State Machine Commands
Command Description Enumeration Type API Call(s)
Program Data Used to program data to any valid Flash address Fapi_ProgramData Fapi_issueProgrammingCommand()
Fapi_issueProgrammingCommandForEccAddress()
Erase Sector Used to erase a Flash sector located by the specified address Fapi_EraseSector Fapi_issueAsyncCommandWithAddress()

Erase Bank

Used to erase a Flash bank, optionally with a provided sector mask

Fapi_EraseBank

Fapi_issueBankEraseCommand()
Clear Status Clears the status register Fapi_ClearStatus Fapi_issueAsyncCommand()
Program Resume Resumes a suspended programming operation Fapi_ProgramResume Fapi_issueAsyncCommand()
Erase Resume Resumes a suspended erase operation Fapi_EraseResume Fapi_issueAsyncCommand()
Clear More Clears the status register Fapi_ClearMore Fapi_issueAsyncCommand()