在SD/MMC卡中可读写的FAT文件系统

来源:互联网 发布:淘宝英伦男装店铺排行 编辑:程序博客网 时间:2024/05/16 16:17

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 PINStatic ConfigSD Card PinMMC Card PinCSMMCFS_CS_PORT,
MMCFS_CS_PINDAT3/CSRES/CSSPI DOMMCFS_SPI_NUMCMD/DICMD/DISPI DIMMCFS_SPI_NUMDAT0/DODAT0/DOSPI SCLKMMCFS_SPI_NUMCLKCLK

一旦配置好,连接上,并且eLua启动了,你就可以和你存储卡的文件打交道了。为了打开一个在SD/MMC卡中的文件,你需要做的就是在文件名前面加上前缀/mmc/,就像下面这样:

# lua /mmc/info.lua 

与之相似,如果你想打开一个文本文件a.txt,你可以如下操作:

f = fopen( "/mmc/a.txt", "rb" )


水平有限,如有错误,给出指正。

原创粉丝点击