FatFs 文件系统读写(SD 卡)
本 demo 主要演示使用 spi 驱动 sd 卡并挂载 fatfs 文件系统的例子。其中 fatfs api 见 Fatfs 官网。
准备工具
一张 class10 的 sd 卡和 sd 卡转spi 转接板
硬件连接
本 demo 基于 BL706_AVB 开发板,连接方式如下:
![](//file.elecfans.com/web2/M00/52/7B/pYYBAGLL4xyADn21AAAu0S5j_lM752.jpg)
2.3. 软件实现
软件代码见 examples/spi/spi_dma_sd
![](//file.elecfans.com/web2/M00/52/7B/pYYBAGLL4xyAM6cyAAAilSlJ66A199.jpg)
配置 SPI 设备时钟源,见 bsp/board/bl706_avb/clock_config.h
![](//file.elecfans.com/web2/M00/52/7B/pYYBAGLL4xyAUaQmAAAujEUPvFs022.jpg)
配置 SPI 设备复用引脚,见 bsp/board/bl706_avb/pinmux_config.h,,如有改动,请自行修改
![](//file.elecfans.com/web2/M00/51/E0/poYBAGLL4xyADGofAABbpUR923I279.jpg)
![](//file.elecfans.com/web2/M00/51/E0/poYBAGLL4xyAC7M_AAB1v0F7gDM976.jpg)
使能 BSP_USING_SPI0 并配置 SPI 设备配置,见 bsp/board/bl706_avb/peripheral_config.h
![](//file.elecfans.com/web2/M00/52/7B/pYYBAGLL4xyAYvrQAAArPWJd-J8165.jpg)
![](//file.elecfans.com/web2/M00/51/E0/poYBAGLL4xyAaoCrAAFkVwNcbYw388.jpg)
使能 BSP_USING_DMA0_CH3, BSP_USING_DMA0_CH4 并配置 DMA 设备配置,见 bsp/board/bl706_avb/peripheral_config.h
![](//file.elecfans.com/web2/M00/51/E0/poYBAGLL4xyAdbFeAACtFYWg02Y546.jpg)
实现 fatfs 需要的底层接口
剩余代码见 main.c。
2.4. 编译和烧录
CDK 编译
打开项目中提供的工程文件:spi_dma_sd.cdkproj
参照 Windows 下使用 CDK (类 MDK Keil)开发指南 的步骤编译下载即可
命令行编译
![](//file.elecfans.com/web2/M00/52/7B/pYYBAGLL4xyAWTHhAAAejofx9Cw862.jpg)
原作者:BL_MCU_SDK 开发指南
|