一、实验目的
学习使用STM32F7SD卡的文件系统,为采集的血氧数据提供支持。
二、开发工具
STM32CUBEMX
KEIL V5
MicroSD Card
三、开发步骤
1.在义剑仗乾坤的SDIO的工程文件基础上进行文件系统的移植(详细可参照义剑仗乾坤的SDIO的例程);
3.在SDIO的工程文件中添加下载好的文件系统的文件夹可以看到: src文件夹里有如下的文件:integer.h:文件中包含了一些数值类型定义;
diskio.c : 包含底层存储介质的操作函数,这些函数需要用户自己实现,主要添
加底层驱动函数;
ff.c : 独立于底层介质操作文件的函数,利用这些函数实现文件的读写;
cc936.c :本文件在 option 目录下,是简体中文支持所需要添加的文件,包含了简体
中文的 GBK 和转换函数;
ffconf.h:这个头文件包含了对文件系统的各种配置,有点类似 stm32f10x_conf.h 在
STM32 库中的功能;
假如只是使用文件系统的话,则只需要理解 integer.h 及 diskio.c 文件并会调用ff.c 文件中的函数就可以了。
4.详细地添加路径在这里就不过多地描述了,只强调一点:在MDK的Options for target中的 C\C++下的Include Paths一定要添加之前文件系统的路径,如图所示:
5.在diskio.c文件中添加SD驱动函数:
6.在ff.c中把f_mout()函数改成:
7。实验目的:插入SD卡后,想要以文件系统的方式对SD卡进行读取,以发送"STM32-ShileleOK"为例,以代码的方式在SD卡中创建一个.txt的文本文档,然后以文件系统的方式写入"STM32-ShileleOK",然后读取到另一个数组中,并通过串口打印出来!
实验现象说明:由于我使用的串口调试助手不能直接显示字符,因此用十六进制来表示,S 对应 0x53 ;T 对应 0x54;M 对应 0x4D 等等,其他不做过多地介绍。通过本次实验,可以使用文件系统来存储采集血氧的数据,并实现调用!