在SD/MMC卡中可读写的FAT文件系统
2019独角兽企业重金招聘Python工程师标准>>>
FAT文件系统
关于eLua中FAT文件系统的实现是使用了来自Elm Chan的一个很好的FatFS文件包。它可以在读写模式中处理FAT12,FAT16和FAT32文件系统。而且它打包了很多功能通过封装的形式。跟ROM文件系统一样它也与C库集成在一起,所以相似的POSIX操作可以控制此文件系统,或者通过Lua的io模块。eLua在FatFS之上增加了一个平台抽象层使之可以容易的在不同的eLua目标之间进行移植。因为大多数的SD/MMC卡可以通过通用SPI接口控制,并且eLua已经提供了一个SPI平台接口。所以移植FAT文件系统到不同的elua目标板上相当容易的一个过程。
为了在你的eLua目标板上使用FAT文件系统,首先确保在你的平台上elua的SPI平台接口处于工作中(目前elua只支持通过SPI控制SD/MMC卡)。然后你需要在eLua二进制镜像中使能FAT文件系统模块。
使用FAT文件系统
为了使用FAT文件系统,首先确保你的SD/MMC卡的格式为FAT格式。下一步,确认你的SD/MMC卡通过下表描述的引脚来控制。
eLua PIN | Static Config | SD Card Pin | MMC Card Pin |
---|---|---|---|
CS |
MMCFS_CS_PORT, MMCFS_CS_PIN |
DAT3/CS | RES/CS |
SPI DO | MMCFS_SPI_NUM | CMD/DI | CMD/DI |
SPI DI | MMCFS_SPI_NUM | DAT0/DO | DAT0/DO |
SPI SCLK | MMCFS_SPI_NUM | CLK | CLK |
一旦配置好,连接上,并且eLua启动了,你就可以和你存储卡的文件打交道了。为了打开一个在SD/MMC卡中的文件,你需要做的就是在文件名前面加上前缀/mmc/,就像下面这样:
# lua /mmc/info.lua
与之相似,如果你想打开一个文本文件a.txt,你可以如下操作:
f = fopen( "/mmc/a.txt", "rb" )
水平有限,如有错误,给出指正。
转载于:https://my.oschina.net/u/1587304/blog/399891
在SD/MMC卡中可读写的FAT文件系统相关推荐
- Linux驱动中SD/MMC卡增加多个分区
当前,Linux下sd/mmc卡的驱动已经实现.需要在此基础上实现,给这个mmc/sd块设备加多个分区.有人会问,那等系统启动后,通过fdisk工具去分区不也可以吗?回答是,本身sd/mmc驱动加载后 ...
- linux mmc分区_【经验记录】如何给嵌入式Linux的SD/MMC卡驱动中添加多个分区
How to add multi partition for SD/MMC card in Linux Driver 之所以写这个,是因为,在这个过程中,自己明显感觉到了,做事情一定要有一定的方法,方 ...
- SD/MMC 卡读写模块---SD/MMC 卡的外部物理接口
转载地址:http://www.8951.com/book/jiao1n21.htm SD/MMC 卡是一种大容量(最大可达 4GB).性价比高.体积小.访问接口简单的存储卡.SD/MMC 卡大 ...
- SD/MMC卡块设备驱动程序
SD/MMC 卡组成的存储系统是许多嵌入设备的主要存储设备,相当于PC机的硬盘,在嵌入设备上的SD/MMC卡控制器通过MMC协议来解析命令控制SD/MMC卡的操作.SD/MMC卡上有一些寄存器来控制卡 ...
- 在SD/MMC卡上实现hive (Implement WinCE HIVEROM system on NAND or SD system )
本是个很简单的topic,但无奈的是很多客户都没有实现.所以只能写一个guide给客户,让他们依葫芦画瓢. 在SD卡上实现hive以及实现binfs最精髓的思想是,在boot stage 1依次加载s ...
- SD/MMC卡初始化及读写流程
二.MMC/SD卡的模型和工作原理 PIN脚.SD卡总线.SD卡结构.SD卡寄存器.上电过程 SD卡寄存器: OCR:操作电压寄存器: 只读,32位 第31位: 表示卡上电的状态位 CID: 卡身 ...
- SD/MMC CSD寄存器 V1.0和V2.0详解(如何读写SD/MMC卡)
1.如何计算V1.0 SD卡容量 计算C_SIZE: C_SIZE = (csd[8] >> 6) + ((uint16_t)csd[7] << 2) + ((uint16_t ...
- linux 读卡器信息,Linux如何使用笔记本自带的SD/MMC读卡器
仅适用于笔记本自带的内置读卡器. 如果你使用的是USB接口的读卡器,那么,不用看这个了,插上之后就可以当成U盘去用了. 如果你看了这个文档还不能解决问题,那么,就把SD卡放在你的数码相机里,然后通过数 ...
- (linux)MMC 卡驱动分析
最近花时间研究了一下 MMC 卡驱动程序,开始在网上找了很多关于 MMC 卡驱动的分析文章,但大都是在描述各个层,这对于初学者来讲帮助并不大,所以我就打算把自己的理解写下来,希望对大家有用.个人觉得理 ...
最新文章
- 函数 —— memset(给数组重新赋值,用指定字符替换数组中的部分值)
- 使用PowerDesigner设计物理模型并运行脚本检查模型图解
- 9个元素换6次达到排序序列_(算法四)高级排序(快速排序)
- hiveserver或者hive启动出现Expected authority at index 7问题解决
- vector的逆序输出(神奇的vector)
- 部署WEB应用到云服务器时,出现的部分网页不能显示或者连接数据库问题。
- java 判断 框架类型_第10章-验证框架 --- 验证器类型
- AAAI 2020 | GlobalTrack:简单又强大!视频长期目标跟踪新基线
- flink streamGraph生成jobGraph
- python123安装教程_小白安装Python环境详细步骤!
- linux重置电池阀值,Thinkpad在linux(ubuntu)下修改电池充电阈值,成功解决Thinkpad在Linux下的电池充电问题...
- apache 配置 中英
- 移动侦测/周界入侵检测智能分析摄像头采集的智能分析数据如何通过国标GB28181平台进行接入与分发
- spring框架对jdk版本要求
- 校赛第二轮 —— 国产电影保护月是国产电影之福 / 祸
- Oracle9i数据库Data Guard实施及维护手册
- 【Mysql】慢SQL优化详解 Mysql案例
- 25款经典老芯片,认识5款以上的工程师证明你老了!
- python 队列实现_python中实现队列的queue模块
- ThingsBoard资产设备总数/离线数/在线数统计
热门文章
- 最简单 - 单例模式
- etcd v3 集群——简单配置
- 断电后supervisor启动时报错
- Windows Nano Server安装配置详解03:远程管理Nano Server
- python 带pydev的eclipse无法导入win32api包(或无法导入其他包)
- 如何直接soap字符串,访问webservice
- 数据可视化----我在寻找一款类似vfp或是access这样自带可视化风格的数据库或是键盘数据库...
- 软件项目开发过程中主要遇到的核心问题小结
- java编译多个包_javac一次性编译多个包下的.java文件
- mysql之union合并查询