【STM32F4】【银杏科技ARM+FPGA】iCore3移植RT-Thread--开启SD卡Elm FatFS文件系统
由于SD卡可插拔的便携性,使得其在嵌入式中的应用中广泛使用。
一、配置SD的相关GPIO,选择时钟源
1.1 我们打开../BSP/STM32/STM32F407_gingko_iCore3/board/CubeMX_Config来进行SDIO配置,注意这里仍然是只配置IO,其他参数不予更改,然后选择SDIO的时钟源。配置完成后点击CREATE CODE。
1.2 CubeMX生成工程后,只保留红色方框内的文件,其他的两个文件夹可以删除掉
1.3 复制刚生成的src文件夹main.c文件夹中的函数SystemClock_Config(void)到board.c。这里内核初始化时要调用该函数进行时钟配置。
二、修改Kconfig文件,增加menuconfig菜单配种中的SD选项
三、打开menuconfig,挂载SD卡
效果如图:
四、文件系统挂载
我们直接在main.c文件中添加,并在main.c中添加 #include"dfs_fs.h" 头文件
效果图:当使用list_device指令可以发现sd0的Block Device后为1说明挂载成功;
通过ls指令可以正确读取测试文件helloword.txt;
通过mkfs -t elm sd0格式化SD卡,再次通过ls指令发现测试文件被删除。
五、文件系统卸载
效果如图:
代码包下载:
链接:https://pan.baidu.com/s/1-Rq6rFnJfqBFkh3GNBHGqA
提取码:lnsk
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架