[FlashDB]基于GD32纯代码裸机移植FlashDB数据库——一、介绍

【相关文章导航】

[FlashDB]基于GD32纯代码裸机移植FlashDB数据库——一、介绍
[FlashDB]基于GD32纯代码裸机移植FlashDB数据库——二、移植前准备
[FlashDB]基于GD32纯代码裸机移植FlashDB数据库——三、移植SFUD
[FlashDB]基于GD32纯代码裸机移植FlashDB数据库——四、移植Fal
[FlashDB]基于GD32纯代码裸机移植FlashDB数据库——五、移植FlashDB

一、软件介绍

1.1 FlashDB

FlashDB是一款可以运行在MCU上的轻量级的开源嵌入式数据库,专注于提供嵌入式产品的数据存储方案。主页

1.1.1 使用场景

  • 键值数据库
    • 产品参数存储
    • 用户配置信息存储
    • 小文件管理
  • 时序数据库
    • 存储动态产生的结构化数据:如 温湿度传感器采集的环境监测信息,智能手环实时记录的人体健康信息等
    • 记录运行日志:存储产品历史的运行日志,异常告警的记录等

1.1.2 依赖

FlahDB数据库依赖Fal硬件抽象层。

1.2 Fal

FAL (Flash Abstraction Layer) Flash 抽象层,是对 Flash 及基于 Flash 的分区进行管理、操作的抽象层,对上层统一了 Flash 及 分区操作的 API 。主页

1.2.1 特性

  • 支持静态可配置的分区表,并可关联多个 Flash 设备;
  • 分区表支持 自动装载 。避免在多固件项目,分区表被多次定义的问题;
  • 代码精简,对操作系统 无依赖 ,可运行于裸机平台,比如对资源有一定要求的 Bootloader;
  • 统一的操作接口。保证了文件系统、OTA、NVM等对 Flash 有一定依赖的组件,底层 Flash 驱动的可重用性;
  • 自带基于 Finsh/MSH 的测试命令,可以通过 Shell 按字节寻址的方式操作(读写擦) Flash 或分区,方便开发者进行调试、测试;

1.2.2 依赖

Fal硬件抽象层基于SFUD万能驱动库实现。

1.3 SFUD

SFUD是一款开源的串行 SPI Flash 通用驱动库。主页

1.3.1 特性

  • 支持 SPI/QSPI 接口
  • 面向对象(同时支持多个 Flash 对象)
  • 可灵活裁剪
  • 扩展性强

二、硬件介绍

硬件平台:GD32L233RCT6
Flash:GD25Q32
IDE:Keil 5.36

说明:

  1. 仅使用外置Flash。
  2. 使用标准双线SPI,未使用QSPI。
  3. 基于裸机移植。

三、移植步骤

  1. 移植前准备;
  2. 移植SFUD万能SPI Flash驱动库;
  3. 移植Fal Flash抽象层;
  4. 移植FlashDB数据库。
  • 1
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值