FATFS文件系统的移植

本文介绍了如何在STM32上移植FATFS文件系统,包括下载源码、配置SD卡读写函数、修改配置宏,并详细展示了如何修改diskio.c文件中的初始化、状态检查、读写扇区函数,以适配SPI模式的SD卡。
摘要由CSDN通过智能技术生成

这几天很懒,很懈怠…

废话不多说,今天来移植FATFS文件系统,在移植FATFS之前,我们需要:

1、在网上下载FATFS的源码,这个不用说把…

2、准备好SD卡的基本读写函数,SPI模式或者SDIO模式均可。

3、在ffconf.h头文件里修改相应的宏定义,设置相应的功能。

4、在integer.h中定义好的数据类型,这里需要了解你的编译器的数据类型,然后根据编译器定义好数据类型。(如果使用的是MDK3..58a,则不用改动)

好,下面开始正式移植FATFS!

先将FATFS文件系统加入工程,添加相应路径。然后打开discio.c。

diskio.c里有如下代码:

DSTATUS disk_initialize (
BYTE drv /* Physical drive nmuber (0..) */
)
{
DSTATUS stat;
int result;


switch (drv) {
case ATA :
result = ATA_disk_initialize();
// translate the reslut code here


return stat;


case MMC :
result = MMC_disk_initialize();
// translate the reslut code here


return stat;


case USB :
result = USB_disk_initialize();
// translate the reslut code here


return stat;
}
return STA_NOINIT;
}

这是FATFS提供的初始化磁盘的函数,需要我们将实现准备好的SD_Initiliaze()填进去。

DSTATUS disk_initialize (
BYTE pdrv /* 磁盘的物理分区,默认为0 */
)
{
u8 res=0;


switch(pdrv)
{
case SD_CARD://SD卡

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值