(1)解压安装FDL库文件

(2)解压后对应文件夹介绍

(3)将官方库文件和对应的应用文件放到自己的工程文件中

2、用CS+中FDL需要添加的段

二、用户文件的修改
1、用户手册中对官方库文件与用户文件的介绍


2、将官方库文件和应用文件添加到自己工程

3、fdl_descriptor.h 中的修改
#define CPU_FREQUENCY_MHZ (120)
#define EEL_VIRTUALBLOCKSIZE (64u)
#define FDL_POOL_SIZE (16u * EEL_VIRTUALBLOCKSIZE)
#define EEL_POOL_START (1u * EEL_VIRTUALBLOCKSIZE)
#define EEL_POOL_SIZE (6u * EEL_VIRTUALBLOCKSIZE)
#define CPU_FREQUENCY_MHZ (240)
#define EEL_VIRTUALBLOCKSIZE (64u)
#define FDL_POOL_SIZE (1024)
#define EEL_POOL_START (0)
#define EEL_POOL_SIZE (0)
- EEL POOL:EEL Pool为EEL提供存储模拟数据和管理信息
- User POOL:所有非由EEL pool分配的FDL池空间都可由用户应用程序自由使用,因此称为
用户池


三、 FDL库的大致使用流程
/* 1.初始FDL库 */
fdlRet = R_FDL_Init( &DeviceFDLCfg_des )
if( R_FDL_OK != fdlRet )
{
/* Error handler */
while( 1 )
}
/* 2.准备FDL环境 */
req.command_enu = R_FDL_CMD_PREPARE_ENV
req.idx_u32 = 0
req.cnt_u16 = 0
req.accessType_enu = R_FDL_ACCESS_NONE
R_FDL_Execute( &req )
while( R_FDL_BUSY == req.status_enu )
{
R_FDL_Handler()
}
if( R_FDL_OK != req.status_enu )
{
/* Error handler */
while( 1 )
}
/* 3.擦除要写的块 */
req.command_enu = R_FDL_CMD_ERASE
req.idx_u32 = 0
req.cnt_u16 = 1
req.accessType_enu = R_FDL_ACCESS_USER
R_FDL_Execute( &req )
while( R_FDL_BUSY == req.status_enu )
{
R_FDL_Handler()
}
if( R_FDL_OK != req.status_enu )
{
/* Error handler */
while( 1 )
}
/* 4.写入已经擦除的块 */
req.command_enu = R_FDL_CMD_WRITE
req.idx_u32 = 0x0000
**收集整理了一份《2024年最新物联网嵌入式全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升的朋友。**


**[如果你需要这些资料,可以戳这里获取](https://gitee.com/vip204888)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人**
**都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**