ZHCUBW5 April   2024

 

  1.   1
  2.   摘要
  3.   商标
  4. 1简介
    1. 1.1 参考资料
    2. 1.2 函数清单格式
  5. 2TMS320F28P55x 闪存 API 概述
    1. 2.1 简介
    2. 2.2 API 概述
    3. 2.3 使用 API
      1. 2.3.1 初始化流程
        1. 2.3.1.1 器件上电后
        2. 2.3.1.2 闪存包装程序和存储体设置
        3. 2.3.1.3 关于系统频率变化
      2. 2.3.2 使用 API 进行构建
        1. 2.3.2.1 对象库文件
        2. 2.3.2.2 分布文件
        3. 2.3.2.3 闪存 API 使用的关键事实
  6. 3API 函数
    1. 3.1 初始化函数
      1. 3.1.1 Fapi_initializeAPI()
    2. 3.2 闪存状态机函数
      1. 3.2.1  Fapi_setActiveFlashBank()
      2. 3.2.2  Fapi_setupBankSectorEnable()
      3. 3.2.3  Fapi_issueAsyncCommandWithAddress()
      4. 3.2.4  Fapi_issueBankEraseCommand()
      5. 3.2.5  Fapi_issueProgrammingCommand()
      6. 3.2.6  Fapi_issueProgrammingCommandForEccAddresses()
      7. 3.2.7  Fapi_issueAutoEcc512ProgrammingCommand()
      8. 3.2.8  Fapi_issueDataAndEcc512ProgrammingCommand()
      9. 3.2.9  Fapi_issueDataOnly512ProgrammingCommand()
      10. 3.2.10 Fapi_issueEccOnly64ProgrammingCommand()
      11. 3.2.11 Fapi_issueAsyncCommand()
      12. 3.2.12 Fapi_checkFsmForReady()
      13. 3.2.13 Fapi_getFsmStatus()
    3. 3.3 读取函数
      1. 3.3.1 Fapi_doBlankCheck()
      2. 3.3.2 Fapi_doVerify()
    4. 3.4 信息函数
      1. 3.4.1 Fapi_getLibraryInfo()
    5. 3.5 实用功能
      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()
  7. 4推荐的 FSM 流程
    1. 4.1 新出厂器件
    2. 4.2 推荐的擦除流程
    3. 4.3 推荐的存储体擦除流程
    4. 4.4 推荐的编程流程
  8. 5与安全相关的软件应用程序使用假设
  9.   A 闪存状态机命令
  10.   B typedef、定义、枚举和结构
    1.     B.1 类型定义
    2.     B.2 定义
    3.     B.3 枚举
      1.      B.3.1 Fapi_FlashProgrammingCommandsType
      2.      B.3.2 Fapi_FlashBankType
      3.      B.3.3 Fapi_FlashStateCommandsType
      4.      B.3.4 Fapi_StatusType
      5.      B.3.5 Fapi_ApiProductionStatusType
    4.     B.4 结构
      1.      B.4.1 Fapi_FlashStatusWordType
      2.      B.4.2 Fapi_LibraryInfoType
  11.   参考资料

Fapi_issueAsyncCommandWithAddress()

向闪存状态机发出擦除命令以及用户提供的扇区地址。

概要

Fapi_StatusType Fapi_issueAsyncCommandWithAddress(
                            Fapi_FlashStateCommandsType oCommand,         
                            uint32 *pu32StartAddress
                                                  )

参数

oCommand [in] 向 FSM 发出的命令。使用 Fapi_EraseSector
pu32StartAddress [in] 用于擦除操作的闪存扇区地址

说明

该函数针对用户提供的扇区地址向闪存状态机发出擦除命令。该函数不会等到擦除操作结束;它只是发出命令并返回。因此,当使用 Fapi_EraseSector 命令时,该函数始终返回成功状态。用户应用程序必须等待闪存包装程序完成擦除操作,然后才能返回到任何类型的闪存访问。Fapi_checkFsmForReady() 函数可用于监测已发出命令的状态。

注: 该函数在发出擦除命令后不检查 STATCMD。当 FSM 完成擦除操作时,用户应用程序必须检查 STATCMD 值。STATCMD 指示擦除操作期间是否有任何故障发生。用户应用程序可以使用 Fapi_getFsmStatus 函数来获取 STATCMD 值。

此外,用户应用程序应使用 Fapi_doBlankCheck() 函数来验证闪存是否被擦除。

返回值

  • Fapi_Status_Success(成功)
  • Fapi_Status_FsmBusy(FSM 处于繁忙状态)
  • Fapi_Error_FeatureNotAvailable(失败:用户请求的命令不受支持。)
  • Fapi_Error_FlashRegsNotWritable(失败:闪存寄存器写入失败。用户应确保 API 从与闪存操作的目标地址相同的区域执行,或者用户应在闪存操作之前解锁。)
  • Fapi_Error_InvalidAddress(失败:用户提供的地址无效。对于 TMS320F28P55x,有关有效地址范围,请参阅 TMS320F28P55x 实时微控制器数据手册

实现示例(请参阅 C2000Ware 中提供的闪存编程示例,对于 TMS320F28p55x,该示例位于“C2000Ware_.....\driverlib\f28p55x\examples\flash\flashapi_128bit_programming.c”。

请参阅 C2000Ware 中提供的闪存编程示例,对于 TMS320F28P55x,该示例位于“C2000Ware_.....\driverlib\f28p55x\examples\flash\flashapi_512bit_programming.c”)。