- 0
- 0
- 约5.26千字
- 约 6页
- 2026-01-23 发布于北京
- 举报
RTThreadRTOS应用之四——初识文件系统
实验描述:数据的保存,历来都是所有嵌入式系统需要解决的一个问题。传统
的解决方式是通过串口或者USB将数据实时传送到PC上进行保存。而对于很
多无法随时和PC通讯的应用,应该如何保存数据呢?主流的解决方法是将数
据写入到板载的flash或者SD卡中。为了方便的管理和修改flash以及SD卡上
的文件,需要在程序中建立文件系统,该系统类似于PC端的文件系统,用户
可以利用该系统方便的创建,以及修改设备上的文件。
本次试验旨在利用RTT自带的文件系统将文件保存在板载SD卡中,随后将写
入的文件读出。通过文件写入,的实验,是用户掌握基本的文件系统的适
用方法。
实验开始:
RTT的文件系统介绍结构如下图所示:
最顶层的是一套面向嵌入式系统专门优化过的虚拟文件系统(接口),通过它能
够适配下层不同的文件系统格式,例如个人电脑上常使用的FAT文件系统,或
者是嵌入式设备中常用的flash文件系统。接下来的是各种文件系统的实现,例
如支持FAT文件系统的DFS-ELM;支持NandFlash的YAFFS2将在0.4.x分支
中移植进这套虚拟文件系统框架中。最底层的是各类驱动,例如SD卡驱
动,IDE硬盘驱动等。0.4.x分支上将在NandFlash上构建一层转换层(FTL)以使
得NandFlash能够支持Flash文件系统。RT-Thread的文件系统对上层的接
口主要以POSIX接口为主,这样这部分代码也容易调试通过——《RT
Thread嵌入式编程指南》。
RTT文件系统移植:
首先向工程内添加文件系统的相关文件,由于我们使用SD卡因此需要使用
ELM文件系统。工程添加如图所示:
同时添加相应的头文件:
RTT系统对于外设采用虚拟设备的方式进行管理,这样的话好处是针对不同的
硬件配置,只需要更改底层的驱动接口就可以方便的移植。这些底层的设备接
口主要包括SD卡的读写和初始化部分。下面一一来进行介绍。
1.SD设备的硬件初始化:
SD卡设备硬件初始化在rt_hw_sdcard_init();这个函数中完成,函数原型位与工
程目录下的sdcard.c文件中。其中其中需要注意的是:
/*registersdcarddevice*/
sdcard_device.type=RT_Device_Class_Block;
sdcard_device.init=rt_sdcard_init;
sdcard_device.open=rt_sdcard_open;
sdcard_device.close=rt_sdcard_close;
sdcard_device.read=rt_sdcard_read;
sdcard_device.write=rt_sdcard_write;
sdcard_device.control=rt_sdcard_control;
上面这些语句中,赋值号右边的是用户需要自己编写的函数名称,这些函数就
是文件系统的底层接口,
您可能关注的文档
- 九级化学上册第二单元检测题.pdf
- 高考物理大一轮复习:磁场中带电粒子运动分析与应用.pdf
- 慈鲷养殖技术与疾病防治指南.pdf
- 车用电芯IFR26650-33A规格书.pdf
- 京津冀区域金融支撑体系构建与优化——基于SFE框架视角.pdf
- C#实现多功能计算器:典计算与方程求解.pdf
- 分子热运动巩固练习:从填空到选择,全面检验知识点掌握情况.pdf
- Pro E工程图:配置更改与锁定及浮动安装指南.pdf
- 考点跟踪训练:简单句陈述句练习题.pdf
- 单元4结构与词汇练习题.pdf
- 全过程工程管理造价咨询工程监理项目服务方案投标方案(技术部分).doc
- 招标代理服务投标技术服务方案(技术方案).doc
- AI大模型与AIGC技术在公安领域的应用解决方案(99页 PPT).pptx
- 工业4.0智能制造数字工厂规划方案.pptx
- 树立社会主义核心价值观.docx
- 三年(2023-2025)中考历史真题分类汇编(全国)专题21 科技文化与社会生活(解析版).docx
- 2025年中考道德与法治真题完全解读(吉林卷).pdf
- 2025年中考道德与法治真题完全解读(安徽卷).pdf
- 三年(2023-2025)中考历史真题分类汇编(全国)专题14 人民解放战争(解析版).pdf
- 三年(2023-2025)广东中考历史真题分类汇编:专题03 中国近代史(八年级上册)(解析版).docx
原创力文档

文档评论(0)