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文件系统相关推荐

  1. Linux驱动中SD/MMC卡增加多个分区

    当前,Linux下sd/mmc卡的驱动已经实现.需要在此基础上实现,给这个mmc/sd块设备加多个分区.有人会问,那等系统启动后,通过fdisk工具去分区不也可以吗?回答是,本身sd/mmc驱动加载后 ...

  2. linux mmc分区_【经验记录】如何给嵌入式Linux的SD/MMC卡驱动中添加多个分区

    How to add multi partition for SD/MMC card in Linux Driver 之所以写这个,是因为,在这个过程中,自己明显感觉到了,做事情一定要有一定的方法,方 ...

  3. SD/MMC 卡读写模块---SD/MMC 卡的外部物理接口

    转载地址:http://www.8951.com/book/jiao1n21.htm SD/MMC    卡是一种大容量(最大可达 4GB).性价比高.体积小.访问接口简单的存储卡.SD/MMC 卡大 ...

  4. SD/MMC卡块设备驱动程序

    SD/MMC 卡组成的存储系统是许多嵌入设备的主要存储设备,相当于PC机的硬盘,在嵌入设备上的SD/MMC卡控制器通过MMC协议来解析命令控制SD/MMC卡的操作.SD/MMC卡上有一些寄存器来控制卡 ...

  5. 在SD/MMC卡上实现hive (Implement WinCE HIVEROM system on NAND or SD system )

    本是个很简单的topic,但无奈的是很多客户都没有实现.所以只能写一个guide给客户,让他们依葫芦画瓢. 在SD卡上实现hive以及实现binfs最精髓的思想是,在boot stage 1依次加载s ...

  6. SD/MMC卡初始化及读写流程

    二.MMC/SD卡的模型和工作原理 PIN脚.SD卡总线.SD卡结构.SD卡寄存器.上电过程 SD卡寄存器: OCR:操作电压寄存器: 只读,32位 第31位:  表示卡上电的状态位  CID: 卡身 ...

  7. 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 ...

  8. linux 读卡器信息,Linux如何使用笔记本自带的SD/MMC读卡器

    仅适用于笔记本自带的内置读卡器. 如果你使用的是USB接口的读卡器,那么,不用看这个了,插上之后就可以当成U盘去用了. 如果你看了这个文档还不能解决问题,那么,就把SD卡放在你的数码相机里,然后通过数 ...

  9. (linux)MMC 卡驱动分析

    最近花时间研究了一下 MMC 卡驱动程序,开始在网上找了很多关于 MMC 卡驱动的分析文章,但大都是在描述各个层,这对于初学者来讲帮助并不大,所以我就打算把自己的理解写下来,希望对大家有用.个人觉得理 ...

最新文章

  1. 函数 —— memset(给数组重新赋值,用指定字符替换数组中的部分值)
  2. 使用PowerDesigner设计物理模型并运行脚本检查模型图解
  3. 9个元素换6次达到排序序列_(算法四)高级排序(快速排序)
  4. hiveserver或者hive启动出现Expected authority at index 7问题解决
  5. vector的逆序输出(神奇的vector)
  6. 部署WEB应用到云服务器时,出现的部分网页不能显示或者连接数据库问题。
  7. java 判断 框架类型_第10章-验证框架 --- 验证器类型
  8. AAAI 2020 | GlobalTrack:简单又强大!视频长期目标跟踪新基线
  9. flink streamGraph生成jobGraph
  10. python123安装教程_小白安装Python环境详细步骤!
  11. linux重置电池阀值,Thinkpad在linux(ubuntu)下修改电池充电阈值,成功解决Thinkpad在Linux下的电池充电问题...
  12. apache 配置 中英
  13. 移动侦测/周界入侵检测智能分析摄像头采集的智能分析数据如何通过国标GB28181平台进行接入与分发
  14. spring框架对jdk版本要求
  15. 校赛第二轮 —— 国产电影保护月是国产电影之福 / 祸
  16. Oracle9i数据库Data Guard实施及维护手册
  17. 【Mysql】慢SQL优化详解 Mysql案例
  18. 25款经典老芯片,认识5款以上的工程师证明你老了!
  19. python 队列实现_python中实现队列的queue模块
  20. ThingsBoard资产设备总数/离线数/在线数统计

热门文章

  1. 最简单 - 单例模式
  2. etcd v3 集群——简单配置
  3. 断电后supervisor启动时报错
  4. Windows Nano Server安装配置详解03:远程管理Nano Server
  5. python 带pydev的eclipse无法导入win32api包(或无法导入其他包)
  6. 如何直接soap字符串,访问webservice
  7. 数据可视化----我在寻找一款类似vfp或是access这样自带可视化风格的数据库或是键盘数据库...
  8. 软件项目开发过程中主要遇到的核心问题小结
  9. java编译多个包_javac一次性编译多个包下的.java文件
  10. mysql之union合并查询