项目简介
本项目基于STM32F746G Discovery Board,借助FatFs文件系统中间件,实现了对uSD卡的读写操作。项目涵盖硬件初始化、文件系统配置以及文件读写等功能,可用于开发对SD卡有数据存储需求的STM32相关应用。
项目的主要特性和功能
- 硬件资源配置:利用STM32CubeMX工具,对STM32F746G Discovery Board的时钟、GPIO、DMA、SDMMC等硬件资源进行初始化配置。
- 文件系统管理:采用FatFs库,完成SD卡的挂载、格式化,以及文件系统对象的注册,确保SD卡能被系统正确识别和使用。
- 文件操作功能:支持对SD卡中文件的创建、写入、读取、关闭等基本操作,可实现数据的持久化存储。
- 错误处理机制:提供错误检测与处理功能,在文件系统初始化、文件读写等操作出现错误时,通过LED闪烁进行提示,保障系统运行的稳定性。
安装使用步骤
前提条件
- 硬件:STM32F746G - DISCO开发板、SD卡。
- 软件:STM32CubeIDE、STM32CubeMX。
具体步骤
- 项目配置
- 打开STM32CubeMX,创建一个新的STM32项目,选择STM32F746NGH6芯片。
- 对MPU、SDMMC1、FatFs、RCC和时钟树、USART1、GPIO等进行详细配置,具体配置参数可参考项目中的图片和说明。
- 在项目管理器中设置链接器参数,最小堆大小为0x400(1024字节),最小栈大小为0x800(2048字节)。
- 代码添加:在
main.c
文件中添加重定向printf()
到USART1、FatFs操作和错误处理等相关代码。 - 代码编译:在STM32CubeIDE中打开项目,进行编译,生成可执行文件。
- 程序烧录:使用STM32的烧录工具,将生成的可执行文件烧录到STM32F746G Discovery Board中。
- 功能测试:将SD卡插入开发板,运行程序,观察串口输出信息和LED状态,验证SD卡的读写功能是否正常。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】