Fls 配置使用说明
大约 7 分钟约 2077 字2025/8/11配置工具
Fls 配置使用说明
简介
本手册详细介绍了如何使用灵犀配置KF32A158SQV芯片的FLS模块。
环境准备
确保已安装以下软件:
- 灵犀(版本需支持KF32A158SQV芯片)
- 支持KF32A158SQV芯片的MCAL(Microcontroller Abstraction Layer)软件包
创建项目
- 打开灵犀。
- 点击主界面上的“新建项目”按钮,如图所示

选择MCU型号
- 在“MCU型号选择”窗口中,选择“MCAL”项目类型。
- 在“快速选择MCU”下拉菜单中,选择“KF32A158SQV”。
- 点击“创建”按钮,如图所示

添加FLS模块
- 在灵犀主界面,点击左侧的“》”按钮打开模块添加界面,如图所示

- 在灵犀主界面,点击“Apply Module”按钮。
- 在“Module Manager”窗口中,从“unUsed”列表中选择“Fls”模块。
- 点击中间的“>”按钮,将“Fls”模块移动到“used”列表中。
- 点击“Apply”按钮,完成模块添加,如图所示

配置FLS模块
配置FlsGeneral
- 在左侧树状结构中,展开“Fls”并选择“FlsGeneral”。
- 配置以下参数:(示例配置仅供参考,根据实际使用修改)
- FlsAcLoadOnJobStart:当启动擦除或写入任务时,闪存驱动程序应将闪存访问代码加载到RAM中,并在该任务完成或取消后将其卸载(覆盖)。 暂不支持
- FlsBaseAddress:FLS使用的基础地址. 1x8系列PFLASH地址从0x001E0000开始,158SF系列PFLASH地址从0x00200000开始,138SF系列PFLASH地址从0x00078000开始
- FlsBlankCheckApi:擦除检查函数(Fls_BlankCheck)开关。
- FlsCancelApi: 取消功能函数(Fls_Cancel)开关。暂不支持
- FlsCompareApi:比较功能函数(Fls_Compare)开关。
- FlsDevErrorDetect: Detect开关,默认为关闭,如果用户需要使用Detect功能,需要将此参数设置为
true。 - FlsDriverIndex:配置FLS驱动索引,暂时不使用。
- FlsPrecompileSupport:配置固定地址,如果用户需要使用此功能,需要将此参数设置为
true。 - FlsEraseVerificationEnabled:是否开启擦除数据后是否执行校验,校验地址是否已擦除为全0xFF。
- FlsGetJobResultApi:获取最近执行Job结果函数(Fls_GetJobResult)开关。
- FlsGetStatusApi:获取FLS驱动状态函数(Fls_GetStatus)开关。
- 在执行完FLS相关操作后,如读、写、比较、擦除等指令后,调用'Fls_MainFunction'执行,通过'Fls_GetStatus'获取执行状态。
- 在下发指令前,通常也会先调用'Fls_GetStatus'获取状态,保证FLS是无其他命令在执行,能正常接收指令。
- FlsSetModeApi:设置FLS工作模式函数(Fls_SetMode)开关,可是设置快慢两种模式。
- FlsTimeoutSupervisionEnabled:擦除超时检测功能开关。
- FlsTotalSizeValue:FLS使用的总大小。(1x8系列PFLASH大小128K,1x8SF系列PFLASH大小32K)
- FlsUseInterrupts:配置FLS是否使用中断。暂不支持
- FlsVersionInfoApi:获取版本信息函数(Fls_GetVersionInfo)开关。
- FlsWriteVerificationEnabled:写入数据后是否执行校验,校验地址写入数据与实际数据是否一致。
- FlsEcucPartitionRef:配置FLS使用的分区。暂不支持
- FlsApiTailoring:定制化配置。
- FlsRuntimeErrorDetect:运行时错误检测,功能开关。
- FlsWriteBlankCheck:写入数据前是否执行校验,校验写入地址是否已擦除。
- FlsSyncEraseTimeoutValue:擦除校验超时打开时,配置的超时循环检查个数。
- FlsAbtTimeoutValue:取消擦除等待操作完成的超时循环次数。暂不支持
- FlsMinOpeAddrValue:FLS能操作的最小地址,用于安全防护功能,防止代码异常导致操作非预期地址破坏FLASH中内容。
该地址不能大于设置的基地址,否则不能对预期地址进行操作
配置FlsConfigSet
配置参数信息
配置以下参数:(示例配置仅供参考,根据实际使用修改)
- FlsAcErase: 应加载擦除闪存访问代码的RAM地址偏移量。暂不支持
- FlsAcWrite:写入闪存访问代码应加载到RAM中的地址偏移量。暂不支持
- FlsCallCycle:闪存驱动程序主函数调用的周期时间(秒)。暂不支持
- FlsDefaultMode:FLS快慢速模式选择。
模式分类 说明 快速模式-读 默认值配置,1x8和1x8SF系列2048字节;调度一次 Fls_MainFunction实际读取长度与实际长度相关,取2者最小值快速模式-写 默认值配置,1x8是1024字节和1x8SF系列512字节;调度一次 Fls_MainFunction实际写长度与实际长度相关,取2者最小值慢速模式-读 默认值配置,1x8是2048字节和1x8SF系列1024字节;调度一次 Fls_MainFunction实际读取长度与实际长度相关,取2者最小值慢速模式-写 默认值配置,1x8是16字节和1x8SF系列8字节;调度一次 Fls_MainFunction实际写长度与实际长度相关,取2者最小值 - FlsJobEndNotification:Job执行完毕通知函数,使用FEE模块式,该函数配置FEE通知函数。
- FlsJobErrorNotificationFunction:Job执行错误通知函数,使用FEE模块式,该函数配置FEE通知函数。
- FlsMaxReadFastMode:在快速模式下,闪存驱动程序作业处理函数一次循环中要读取或比较的最大字节数。
- FlsMaxReadNormalMode:在正常模式下,闪存驱动程序作业处理函数一次循环中要读取或比较的最大字节数。
- FlsMaxWriteFastMode:在快速模式下,闪存驱动程序作业处理函数一次周期中要写入的最大字节数。
- FlsMaxWriteNormalMode:正常模式下,闪存驱动程序作业处理函数一次循环中要写入的最大字节数。
- FlsProtection:擦除/写入保护设置。仅在硬件支持时相关。暂不支持
配置FlsExternalDriver
此容器仅适用于外部闪存驱动程序。暂不支持
配置FlsSectorList
FlsSectorList:扇区列表。
配置FlsConfigTailoring
定制配置
- FlsEraseProcessFunction:擦除函数,不支持配置。
- FlsWritePageProcessFunction:写入页函数,不支持配置。
- FlsWriteSectorProcessFunction:写入扇区函数,不支持配置。
- FlsStartFlashAccessNotificationFunction:启动Flash访问通知函数。
- FlsFinishedFlashAccessNotificationFunction:完成Flash访问通知函数。
- FlsFeedDogProcessFunction:用于配置外部狗的喂狗操作,防止FLASH操作过程时间长导致外狗复位;该函数为可选参数,如果不使用外部狗狗,无需配置。
配置FlsPublishedInformation
附加的已发布参数,暂时不使用,不需配置
设置项目路径及名称
- 点击“Setting”按钮。
- “Project Name”是配置的工程名称
- 在“Project Path”设置工程保存路径。
- “Configuration Code Folder Name”配置文件存放的文件加名称。
- 点击“Confirm”保存设置,如图所示

保存配置并预览代码
- 点击“Save”按钮,保存配置。
- 点击“Preview Code”按钮,查看生成的代码文件列表,如图所示

- 点击相应的文件名,可以预览文件内容,如图所示

生成代码
- 点击“Generate code”按钮,生成相关配置文件,如图所示

查看生成代码
- 生成代码后,可以在项目路径下找到生成的源文件。
- 使用代码编辑器打开这些文件,进行查看或进一步编辑,如图所示

