【RT-Thread FAL组件】(Flash abstraction layer)Flash抽象层源码解读

RT-Thread FAL组件(Flash abstraction layer)

分区表一般在 fal_cfg.h 中定义(默认开启配置宏)

FAL (Flash Abstraction Layer) Flash 抽象层,是对 Flash 及基于 Flash 的分区进行管理、操作的抽象层,对上层统一了 Flash 及 分区操作的 API (框架图如下所示),并具有以下特性:

支持静态可配置的分区表,并可关联多个Flash设备;

支持分区表的自动装载,可以避免多固件项目中,分区表被多次定义的问题;

代码精简,不依赖操作系统;

提供统一的操作接口,保证文件系统等对Flash有一定依赖型的组件对底层Flash驱动可重用性。
在这里插入图片描述

· 使用 fal package 需要在 RT-Thread 的包管理器中选择它

使用FAL的基本步骤:

  1. 打开FAL:从Env中打开fal软件包并下载到工程

  2. FAL移植:定义flash设备、定义flash设备表、定义flash分区表

    定义flash设备表之前需要flash设备

    flash设备可以有片内flash、片外flash

    /* ===================== Flash device Configuration ========================= */
    extern const struct fal_flash_dev stm32f2_onchip_flash;
    extern struct fal_flash_dev nor_flash0;
    
    /* flash device table */
    #define FAL_FLASH_DEV_TABLE                                          \
    {
           
                                                                               \
        &stm32f2_onchip_flash,                                           \
        &nor_flash0,                                                     \
    }
    

    然后定义flash分区表

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值