logo资料库

sd卡读写(SD卡资料).pdf

第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
第5页 / 共6页
第6页 / 共6页
资料共6页,全文预览结束
在断路器离线测试仪的设计和使用过程中,需要积累大量的正常状态和故障状态下的历史动作数据,形成 样本库,作为断路器进行故障诊断的依据。从数据库的建立和维护的角度来说,上位机比仪器本身更占有 优势。同时,由于仪器自身硬件系统资源的局限,相对复杂的故障诊断分析也需要利用上位机软件来实现。 因此,这就需要容量大、移动灵活的测试仪和上位机的中间存储介质。 SD 卡(Seecure Digital Memory Cardl)是一种基于 Flash 的新一代存储器,具有体积小、容量大、数 据传输快、移动灵活、安全性能好等优点,是许多便携式电子仪器理想的外部存储介质。 1 ATMEGAl28 的 SPI 接口简介及基本数据传输 SPI 全称为“Series Peripheral Interface”,意为“串行外设接口”,是一种全双工、3 线同步数 据传输的串行总线接口。图 1 为 ATMEGA128 单片机主机一从机通过 SPI 进行互连的示意图。 系统包括两个移位寄存器和一个主机时钟发生器。主机通过将需要的从机的 SS 引脚拉低,启动一次通 讯过程。主机和从机将需要发送的数据放入相应的移位寄存器中。主机在 SCK 引脚上产生时钟脉冲以交换 数据。主机的数据从主机的 MOSI 移出,从从机的 MOSI 移入;从机的数据从从机的 MISO 移出,从主机的 M
ISO 移入。主机通过将从机的 SS 引脚拉高实现与从机的同步。基本的通过 SPI 接口发送和接收单个字节的 流程如图 2 所示。 值得注意的是,因为发送和接收是同时进行的,所以发送和接收数据使用同一个函数。在发送数据时, 并不关心函数的返回值;在接收数据时,可以发送并无实际意义的字节(如 0xFF)作为函数的参数。 2 SPI 模式下的 ATMEGAl2B 单片机与 SD 卡的接口电路 SD 卡为用户提供两种操作模式:SD 模式和 SPI 模式。SPI 模式下 SD 卡的引脚定义如表 1 所示。在该 模式下,SD 卡为主机提供了 CS、SCLK、DI、DO 四线接口。ATMEGAl28 单片机与 SD 卡的接口电路如图 3 所 示。
因为不涉及主从机之间的转换,所以单片机的 SS 引脚闲置不用。单片机的 PORTXn 引脚作为 SD 卡的选 通信号。 对于单片机来说,SPI 接口和程序下载接口复用,节约了单片机的硬件开销,提高了单片机的资源利 用率。 3 SPI 模式下对 SD 卡的操作 SPI 模式下 SD 卡的操作流程如图 4 所示。
上电后,SD 卡自动进入 SD 模式。单片机此时使 CS 信号为低电平,并向 SD 卡发送 RESET 命令(CMDO), 如果 SD 卡有 0x01 作为响应,则表明 SD 卡进入 SPI 模式下的 ldle 状态。在等待至少 74 个时钟周期后,向 SD 卡发送 SEND_OP_COND(CMD1)命令,当轮询到 SD 卡的响应为 0x00 时,说明 SD 卡已经准备好接收读写操 作了。 对 SD 卡的基本读写操作命令有:数据块读命令 READ_BLOCK(CMDl7)、多数据块读命令 READ_MULTIPLE _BLOCK(CMDl8)和数据块写命令 WRITE_BLOCK(CMD24)、多数据块写命令 WRITE_MULTIPLE_BLOCK(CMD25)。 对 SD 卡的操作都是由一些命令来实现的。所有的命令都是由 48 个数据位组成的,其结构如表 2 所示。 在应用时,可以连续发送 6 个字节来实现上述的命令格式。
4 应用于断路器离线测试仪的 SD 卡文件系统设计 在使用断路器离线测试仪的过程中,希望记录下断路器每次动作时的线圈电流以及动作电压。按照图 5 所示的结构来组织数据的存储。 首先为各次动作数据文件创建父文件夹。以动作的次数作为文件夹名,CuRRENT.TXT 和 V0LTAGE.TXT 分别为各文件夹下记录电流、电压数据的扩展名为 TXT 的子文件。 SD 卡数据区的组织结构如表 3 所示。
在实际应用中,只对系统区进行配置即可。其中的分区引导扇区设置了扇区(Sector)和串(Cluster) 的大小,以及采用哪类文件分配表(FATl2 或 FATl6)等内容。 文件分配表则包含了与目录或文件相对应的入口(Entry)。每个入口由 32 个字节组成,包含文件名、 扩展名、记录的时间和日期、起始位置和文件大小等信息。文件的大小可以根据对电流电压信号进行采样 时的采样频率和采样时间计算得到。 按照以上原则设计的文件系统,结构简单、容易维护,能够满足上位机数据积累和软件分析的需要。
分享到:
收藏