![]() |
广嵌科技 广嵌教育 English | |
|
MMC卡的文件系统及其实现方法
来源:单片机及嵌入式系统应用 作者:扬州大学 张凯 姜熙君 陈磊 金振成 时间:2008-06-23 发布人:easypm
MMC卡的文件系统及其实现方法 介绍一种基于单片机的MMC上文件系统的实现方法。通过单片机对MMC卡底层的操作,可以方便地实现MMC卡上文件(或目录)的创建、读写、删除等操作。文件可以在Windows下使用读卡器访问。 多媒体卡MMC(MultiMedia Card)是由美国SanDisk公司和德国Simens公司于1997年共同开发推出的一种多功能存储卡。内置控制电路,可以使用在手机、数码相机、MP3、PDA等多种数字设备上,可反复记录30万次。现在市场上的主流容量有128 MB~2 GB。 1 单片机与MMC卡的接口 1.1 单片机与MMC卡的接口电路 接口电路采用的是Philips公司的增强型LPC93x系列单片机。它除了比普通的8051有更快的指令执行周期外,还提供多种在片的硬件接口功能,如UART、SPI、I2C等,因此用LPC93x的SPI接口实现单片机与MMC卡的互连。
1.2 MMC卡底层读写原理 MMC卡读写操作都是基于命令的,通过向MMC卡发送枢直的命令并读取枢直的响应来实现对MMC卡的控制。在对MMC卡读写之前,首先要进行初始化操作。这是确保MMC卡能在SPI模式下进行正常数据读写的前提。需要注意的是,在发送使MMC卡空闲命令CMD0之前至少等待74个时钟,确保MMC卡进入SPI模式。 2 MMC卡文件系统的结构分析 要使写入MMC卡的数据在Windows下访问,需要在MMC卡上创建Windows支持的FATl6文件系统。MMC卡上的FATl6文件系统的结构包含分区引导记录、文件分配表、文件目录表以及数据区4个部分。
在分区引导记录之后是FAT(File Allocation Table,文件分配表)区。FATl6的文件系统中有两份完全相同的文件分配表FATl和FAT2,每份FAT表占用空间的大小可从BPB表中查得。 3 MMC卡文件系统的实现 单片机对MMC底层的读写,按照FATl6的格式对MMC卡上数据进行操作,就可在MMC卡上创建文件、读写文件和删除文件等,从而实现文件的管理。 在MMC卡上创建文件(或目录)的过程就是在文件目录表FDT中申请登记项的过程。登记项中包括文件名、文件长度和起始簇号等内容。为此定义了如下结构: MMC卡上文件都是以簇为单位存取的。当读取MMC卡上的文件时,首先要根据文件名查找到该文件的目录登记项。根据目录登记项中的起始簇号既可找到文件在数据区DATA中第1簇的内容,又可在FAT表中找到第2个簇号。根据第2个簇号又能找到第2簇的内容和FAT表中的第3个簇号。这样,就可以根据FAT表中的簇号读取到全部文件数据。写文件时要保证FATl和FAT2中内容的一致性,即对两块都要进行同样的写操作。对于FATl6,可以由下面的公式计算出数据起始逻辑扇区号: 文件的删除也是对MMC卡上文件管理的一个重要方面。删除文件时,并不涉及数据区的操作,只须在文件的目录登记项上作一个删除标记,并把文件在FAT表中所占用的簇标记为“空簇”。删除文件的代码如下: 4 小结 通过对SPI模式下MMC卡读写和文件系统的研究,实现了单片机对MMC卡FATl6文件的管理,包括文件的创建、读写、删除等操作。该方法为数据采集系统提供了一种非易失性存储器的解决方案,采集到的数据会以标准文件的格式记录到MMC卡上,数据文件可在Windows下用读卡器读取,在保证高性价比的同时,又方便了数据的进一步分析、处理。通过在长时间心电图监测系统中的实际应用,证明了该方法的可行性。该方案也可应用到诸如MP3等与Windows有交互的移动存储设备中,便于文件的统一管理。 本文来源:单片机及嵌入式系统应用 作者:扬州大学 张凯 姜熙君 陈磊 金振成 ·上一条:离子迁移谱仪嵌入式系统的设计
|
相关信息 |
|||||||||||||||||||
| Copyright ©2005-2007 广东省嵌入式软件公共技术中心.All Rights Reserved.版权所有 复制必究 客户服务支持:020-32068395-832 24小时服务热线:13631411558 技术支持与报障:gdesc@midea.com.cn 020-32068395-807/809 粤ICP备05104135号 |