新闻中心

EEPW首页>测试测量>设计应用> SD卡在生理信号数据采集中的应用

SD卡在生理信号数据采集中的应用

作者: 时间:2012-03-13 来源:网络 收藏

3.2的读写操作
支持单块写操作(CMD24)和多块写操作(CMD25)。图4为单块写操作流程图,数据长度为512 B。执行单块写操作时,主机发送写数据块命令(CMD24),等待的应答信号为00H后,然后发送数据起始标志位0xFE,接着发送512 B数据和2 B的(2RC校验。当SD卡的应答信号为0x05时,即表明SD卡已经正确地写入了数据。在写SD卡时,SD卡的输出口为低电平,当输出口变为高电平时表明写操作完成。

本文引用地址://m.amcfsurvey.com/article/194328.htm

d.jpg


SD卡同样支持单块(CMD17)和多块(CMD18)读操作。单块读操作的数据长度也是512 B,其操作流程与写操作类似。操作时,首先向SD卡发送读数据块命令(CMD17),当接收应答信号0xFE后,即可接收512 B数据块和2 B的CRC校验。

4 FAT32文件系统设计
4.1 FAT32文件系统的结构
为了更直观地查看SD卡中的数据,并与计算机进行数据交互式操作。本文采用了FAT32文件系统,该文件系统不仅实现了对大容量SD卡的文件操作,而且读写文件的速度很快。
FAT32文件系统在SD卡上的基本结构包含以下几个部分:分区引导记录DBR(Dos Boot Record)、文件分配表FAT(File Allocation Table)数据区。
分区引导记录DBR,通常包括跳转指令、厂家标识和DOS版本号、BPB(BIOS Parameter Block)和。BIOS引导程序。其中BPB记录着每个扇区字节数、每簇扇区数、总扇区数等SD卡的基本信息,这些信息是正确操作SD卡的基础。
FAT32文件系统有两个文件分配表FAT1和FAT2。FAT2是FAT1的备份,记录了簇与簇之间数据的链接关系。
FAT32与FAT12、FAT16不同的是,它没有专门的根目录区,根目录区与数据区合并在一起。
4.2 FAT32文件系统的实现
4.2.1 FAT32文件系统的初始化
对SD卡的正确操作,需要初始化该卡的信息结构体变量如每个扇区字节数、每簇扇区数、FAT表数目等。

e.jpg


初始化流程如图5所示。首先读卡的物理扇区0,得到引导扇区的偏移地址。正常的话,该扇区最后两个字节为55AA。然后读引导扇区DBR的具体内容,得到文件系统的基本信息,初始化SD卡的信息结构体变量。
4.2.2 FAT32文件系统的相关操作
在本设计中,为了提高SD卡的写入速度,对FAT32文件系统进行优化。FAT32文件系统在保留区增加了一个FSINFO扇区,用以记录文件系统中空闲簇的数量以及不可用簇的簇号等信息。在执行写SD卡操作时,可以通过读取该扇区的内容快速地定位到下一个空闲簇,然后进行数据的写入。优化后的文件系统主要包括以下操作:文件的创建与文件的读写操作。
创建新文件时,首先判断该文件是否存在。如果存在,则打开该文件读取该文件的FAT表项,获取开始簇的地址、文件所占的字节数及第一个扇区的地址等信息;如果文件不存在,则查询空闲簇并设置起始簇号,同时根据这个起始簇号创建簇链,然后读取FDT(File Directory Table)表项查找空闲的32 B FDT,以存放文件名、扩展名、属性值等信息。
读文件时,根据文件名查找FDT表项并读取文件的起始簇号,根据起始簇号找到第一个簇的内容,并逐个扇区读取。同时,根据簇链就能查找到第2个簇,然后读取簇里的内容。按照此方法,直到读取所有的数据。写文件的流程和读文件类似,不同的是写满一个簇时要查找空闲的簇并添加到簇链中,同时更新FAT1,FAT2和FSINFO的内容。

5 结语
本文设计了一种基于DSP和SD卡的系统,详细介绍了DSP与SD卡的硬件接口电路设计以及SD卡软件设计流程。通过对人体手指体表温度和湿度的实时测量,该系统可以实现对16路模拟信号的采集、处理、存储等一系列操作。SD卡存储容量为2 GB,最高读写速度可以达到1.2.MB/s,完全满足在高速AD采集系统。随着人体监测仪器的智能化、小型化发展,以及大容量SD卡的高性价比优点,SD卡在采集前景广阔。

模拟信号相关文章:什么是模拟信号



上一页 1 2 下一页

评论


相关推荐

技术专区

关闭