在STM32F103上移植FATFS文件系统

在STM32F103上移植FATFS文件系统

介绍

我们在使用sd卡的时候通常需要一个文件系统来方便管理sd卡里的内容,所以我们今天就来在stm32f103zet6上移植FATFS文件系统,本次实验使用的板子是正点原子stm32f103zet6的板子

准备工作

在移植FATFS前,我们需要准备FATFS的文件,具体可以从官方网站自行下载代码。

开始移植

在这里插入图片描述
这是一个简单的移植步骤
在这里插入图片描述
知道这些基本的操作以后,我们就可以发现,我们只需要修改fatfs里的diskio.c里的操作sd卡的函数即可,换成自己操作sd的函数,我这里是使用了sdio控制来操控sd卡
在这里插入图片描述
我们还需要修改ffconf.h来配置我们需要的功能
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/fb147718d5ca45fd9dddf44323b4cfb5.pn
下面我们来具体介绍一下
在这里插入图片描述
设置长文件名(FF_USE_LFN)一般设置为1即可,如果你需要兼容EXFAT系统,则需要配置成3

在这里插入图片描述
如果你需要兼容exfat系统,则需要将这个配置成1,不然就无法兼容exfat文件系统
在这里插入图片描述

fafts应用函数

在这里插入图片描述
这里的具体用法可以参考官方网站

代码示例

简单的写一个txt格式的文本

void sd_init_ff()
{
   
   
    FRESULT ret;
    
    FATFS *fs_obj;
    FIL *fil_obj;
    uint8_t rd_buff[255];
    uint16_t fsize;
    uint16_t rd_cnt;
    uint16_t wd_count = 0;  // 初始化 wd_count
    
    // 动态分配内存
    fs_obj = (FATFS *)malloc(sizeof(FATFS
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值