Thread 中讨论的其他器件:SysConfig、 C2000WARE
工具/软件:
SysConfig 配置
您好、专家。 我基于此过程对 flashapi_ex2_programming 进行了修改。




FLASHZ-API 函数的特定操作
memcpy (&RamfuncsLoadStart、&RamfuncsLoadEnd、RamfuncsRunStart);//将初始化Flash代码复制到RAM
Volatile Fapi_Flash 状态类型 oFlashStatus;
Fapi_Status 类型返回检查;
Fapi_Status 类型 oReturnChecka;
Fapi_Flash 状态字类型 oFlashStatusWord;
FLAG_WRITE =1;
uint32_t u32CurrentAddress = 0;
if (FLAG_WRITE = 1)
{
FLAG_WRITE = 0;
缓冲器[0]= 0x1122;
缓冲器[1]= 0x3344;
缓冲器[2]= 0x5566;
缓冲器[3]= 0x7788;
缓冲器[4]= 0x99AA;
Buffer[5]= 0xAABB;
缓冲器[6]= 0xBBCC;
缓冲器[7]= 0xDDEE;
EALLOW;
oReturnCheck = Fapi_initializeAPI (FlashTech_CPU0_BASE_ADDRESS、
DEVICE_SYSCLK_FREQ/1000000U);Flash初始化 μ s
if (oReturnCheck!= Fapi_Status_Success)
{
//
//检查闪存 API 文档是否存在可能的错误
//
Example_Error (oReturnCheck);
}
oReturnCheck = Fapi_setActiveFlashBank (Fapi_Flash 组 0);//检测flash的扇区是否为初始化状态
if (oReturnCheck!= Fapi_Status_Success)
{
//
//检查闪存 API 文档是否存在可能的错误
//
Example_Error (oReturnCheck);
}
EDIS;
EALLOW;
ClearFsmStatus();
Fapi_setupBankSectorEnable (FLASH_WRAPPER_PROGRAM_BASE+FLASH_O_CMDWEPROTA、0xFFFFFF00);
Fapi_setupBankSectorEnable (FLASH_WRAPPER_PROGRAM_BASE+FLASH_O_CMDWEPROTB、0x00000003);
oReturnCheck = Fapi_issueAsyncCommandWithAddress (Fapi_Erase 扇区、(uint32_t *) Bzero_Sector 1_START);
//等待 FSM 完成擦除扇区操作
while (Fapi_checkFsmForReady ()!= Fapi_Status_Fsm){}
if (oReturnCheck!= Fapi_Status_Success)
{
//检查闪存 API 文档是否存在可能的错误
Example_Error (oReturnCheck);
}
//读取 FMSTAT 寄存器内容以了解之后 FSM 的状态
// ERASE 命令查看是否存在任何与擦除操作相关的错误
oFlashStatus = Fapi_getFsmStatus();
IF(oFlashStatus !=3)
{
//检查闪存 API 文档以获取 FMSTAT 并相应地进行调试
// Fapi_getFsmStatus () 函数给出 FMSTAT 寄存器的内容。
//检查是否有任何 EV 位、ESUSP 位、CSTAT 位或
//设置 VOLTSTAT 位(更多详细信息,请参阅 API 文档)。
}
//验证扇区 0 是否已擦除
//
oReturnCheck = Fapi_doBlankCheck ((Bzero_Sector *) uint32_t 1_start、
扇区 2kb_u32length、
&oFlashStatusWord);
if (oReturnCheck!= Fapi_Status_Success)
{
//
//检查闪存 API 文档以获取错误信息
//
Example_Error (oReturnCheck);//FMSTAT_FAIL
}
EDIS;
EALLOW;
ClearFsmStatus();
Fapi_setupBankSectorEnable (FLASH_WRAPPER_PROGRAM_BASE+FLASH_O_CMDWEPROTA、0xFFFFFF00);
Fapi_setupBankSectorEnable (FLASH_WRAPPER_PROGRAM_BASE+FLASH_O_CMDWEPROTB、0x00000003);
oReturnCheck = Fapi_issueProgrammingCommand ((uint32_t *) Bzero_Sector 1_start、缓冲器、8、0、0、Fapi_Auto EccGeneration);// flash烧写(在给定的地址烧写内同)μ s
while (Fapi_checkFsmForReady ()= Fapi_Status_Fsm);
oFlashStatus = Fapi_getFsmStatus();
oReturnCheck = Fapi_doVerify ((uint32_t *) Bzero_Sector 1_start、4、Buffer、&oFlashStatusWord);//μ 这个长度单位是字节、所以除以2
}
EDIS;
您好、专家;
flashapi_ex2_programming — 该工程没有 SysConfig;
<<我想知道需要向当前工程(具有 SysConfig)添加什么配置才能运行 F28P65 的 FLASH_API 函数;在哪里可以找到缺少的头文件?

flashapi_ex2_programming--CMD 文件

SysConfig
<<如何修改 SYSCONFIG_CMD、以使其与 flashapi_ex2_programming--CMD 文件兼容?