本文用一个往SD卡写一个文件的例子,来演示SD卡如何读写。
背景知识
FatFs 是一个通用的文件系统模块,用于在小型嵌入式系统中实现 FAT 文件系统。FatFs 的编写遵循 ANSI C,因此不依赖于硬件平台。它可以嵌入到便宜的微控制器中,如 8051, PIC, AVR, SH, Z80, H8, ARM 等等,不需要做任何修改。
应用程序通过 API 函数来调用 FatFs 系统模块,从而来控制 SD 卡这些存储设备。

FatFs 系统提供了很多 API 函数,我们在下面列举了以下我们例程中会用的的 API 函数。
- f_mount - 注册/注销一个工作区域(Work Area)
- f_mount - 注册/注销一个工作区域(Work Area)
- f_open - 打开/创建一个文件
- f_close - 关闭一个文件
- f_read - 读文件
- f_write - 写文件
关于 API 函数的介绍和说明,大家可以参考以下的网站进行更深一步的了解,这个网站上给出来了每个 API 函数的使用说明和例子。
http://elm-chan.org/fsw/ff/00index_e.html
Vivado工程
因为只用到SD卡,所以直接基于sd启动那个工程就行。
还是把工程拷贝一份,然后导出xsa文件。
Vitis工程
还是老方法,新建Vitis工程,直接基于hello来。然后在BSP中使能xilffs:


关于 xilffs 库的介绍和应用,大家可以参考以下 Xilinx 官网链接:
http://www.wiki.xilinx.com/xilffs
然后直接编辑helloworld.c,直接贴代码:
#include <stdio.h>

最低0.47元/天 解锁文章
780

被折叠的 条评论
为什么被折叠?



