你的位置:
首页
>
IT圈
>
基于MicroSD卡的存储系统设计
2024年5月19日发(作者:雍惜雪)
2017年8月第4期 现代导航 ·293·
基于Micro SD卡的存储系统设计
王健
(中国电子科技集团公司第二十研究所,西安 710068)
摘 要:组合导航设备需要足够容量的非易失存储器,设计了一种基于国产DSP和Micro SD
卡的存储系统。首先,介绍了组合导航设备存储系统的总体设计;其次,基于国产DSP,设计
了采用SPI模式与Micro SD卡通信的硬件;然后,在硬件基础上用软件实现了对Micro SD卡的
数据读写。实际应用结果表明,设计的存储系统具有容量大,体积小,方便移植升级,有较高
应用价值。
关键词:国产DSP;Micro SD卡;SPI;存储系统
中图分类号:TP368 文献标识码:A 文章编号:1674-7976-(2017)04-293-04
Design of Storage System Based on Micro SD Card
WANG Jian
Abstract:
Integrated navigation device needs enough non-volatile memory storage capacity, and this paper designs a storage
system based on domestic DSP and Micro SD card. Firstly, this paper introduces general design about the storage system of
integrated navigation device. Secondly, based on domestic DSP and Micro SD card, this paper designs the storage system hardware
using SPI communication protocol mode. Thirdly, based on storage system hardware, this paper designs software and realizes
reading and writing data in the Micro SD card. The practical application results show that the storage system in this paper has the
advantages of large capacity, small size,
easy transplant and upgrade, and has a high application value.
Key words:
Domestic DSP; Micro SD Card; SPI; Storage System
路点等导航信息,并能够记录有关对准事件、对准
0 引言
组合导航设备通过组合不同导航传感器满足
实际工程应用需求,是多传感器导航信息优化处理
设备。由于组合多个传感器,为了方便线下分析处
理每一个传感器状态,在组合导航设备工作过程中
需要将自检状态、运行日志及中间数据等信息非易
失存储,另外组合导航设备每次工作完成后需要存
储一些重要参数以供下次工作使用, GJB1185A、
GJB5298、GJB4859等规范要求设备应提供足够容
量的非易失存储器,保存起始点和目标点位置、航
收稿日期:2017-04-12。王健(1988—),河南南阳人,工
程师,博士研究生,主要研究方向为组合导航。
时间、导航事件、导航时间等信息。
组合导航设备组合了惯性导航系统(INS)、卫
星导航系统(GNSS)等,通过多导航源的导航信
息融合,实现一个多功能高精度的组合导航设备
[1][2]
。组合导航设备导航数据输出速率是921600bps,
以60%占空比计算得到设备工作10小时左右导航
数据量约为2.3GB。保证数据输出及数据存储双备
份,另外系统还需要存储一些自检、日志及其它信
息,预估组合导航设备需要非易失存储器容量约为
4GB。
目前市面上比较常用的非易失存储器主要有
ROM、PROM、EPROM、EEPROM、Flash、SD卡、
Micro SD卡等,ROM、PROM、EPROM、EEPROM、
·294· 现代导航 2017年
Flash需要焊接在PCB板上,升级维护麻烦,满足
容量需求的存储器体积较大,另外这类存储器芯片
管脚较多,占用PCB过多空间;而SD卡、Micro SD
卡固定在卡槽中,移动灵活方便,并且具有容量大、
体积小,功耗低,成本低廉,抗震动性强,读/写速
度快以及可与多种系统平台兼容,并且管脚数量少,
节省PCB空间。Micro SD卡使用寿命长,可以进
行10万次以上的擦写操作。
Micro SD卡和SD卡传输原理完全相同,只是
接口外形尺寸不一样。SD卡的外形尺寸为24mm
×32mm×2.1mm,而Micro SD卡的外形尺寸小,
为11mm×15mm×1.0mm,Micro SD卡的接口支持
SPI模式。
综合以上考虑,在本方案中组合导航设备存储
数据用Micro SD卡,为组合导航设备提供具备足
够存储空间的非易失存储器,用于保存起始点坐标
和航向、规定的对准和导航事件、自检结果和飞行
过程参数记录等。
1 总体设计
组合导航设备的导航处理系统采用DSP和
FPGA架构,DSP负责数据处理和接口管理,FPGA
负责逻辑组合和时序控制。
在系统电/光性能、力学特性、热性能、环境适
应性、可靠性等综合指标限制下,优选国产电子元
器件进行系统设计和装备整机研制,确保装备发展
自主可控。导航处理系统的接口管理DSP器件选择
JDSPF28335。
JDSPF28335主要性能如下:
(1)主频最高150MHz,内核电压1.9V,I/O
电压3.3V;
(2)内置16位或32位的外部接口(XINTF),
超过2M x 16bit的寻址空间;
(3)256k×16bit的Flash, 34k×16bit的
SARAM,1k×16bit的OTP(一次性可编程)ROM;
(4)外部接口有两通道CAN、3个SCI(UART)、
2个多通道缓冲串行接口McBSP(可配置为串行外
围接口SPI)、1个SPI;
(5)外围中断扩展模块可支持达58个外围中
断;
(6)总共有88个可以独立进行可编程控制的
复用通用输入/输出GPIO口引脚。
JDSPF28335丰富的接口资源方便存储系统设
计,组合导航设备的存储系统结构原理示意图如图
1所示。
数据处理
接口管理
DSP
FPGA
DSP
MicroSD卡
(JDSPF28335)
图1 存储系统结构原理示意图
数据处理DSP和接口管理DSP(JDSP28335)
通过FPGA进行数据交互通信,数据处理DSP将多
个传感器数据进行信息融合处理,将处理结果写进
FPGA的指定RAM地址,另外系统自检信息及中
间结果也写进FPGA的指定RAM地址,接口管理
DSP将FPGA的不同RAM地址中的数据写进Micro
SD卡的不同地址,实现数据非易失性存储。数据
处理DSP也可以通过FPGA请求接口管理DSP将
Micro SD中存储的指定数据返回。本文主要介绍存
储系统,对数据处理DSP和FPGA设计不做具体介
绍。
2 硬件设计
Micro SD有两种工作模式,分别为SD模式和
SPI模式。JDSPF28335不具备SD模式接口,仅支
持SPI通信。本设计中选用Micro SD卡的SPI模式。
SPI ( Serial Peripheral Interface,串行外设接口)
是一种串行通信总线,允许CPU 与各种外围接口
器件以串行方式进行通信、交换信息。SPI串行接
口使用4条通信线路,分别为主机输入/从机输出线
(MISO),主机输出/从机输入线(MOSI),低电平
有效的使能信号线(CS),串行时钟线(SCL)。在
点对点的通信中,SPI不需要进行寻址操作,且为
全双工通信,简单高效
[3]
。本设计中JDSPF28335
芯片为主控制器(Master),Micro SD卡为从机
(Slave)。
Micro SD卡工作在SPI模式下,各个管脚功能
描述如表1所示。
JDSPF28335的SPI管脚是一个复用管脚,当
工作在SPI模式下定义分别是SPISOMI(SPI从器
件输出/主器件输入引脚),SPISIMO(SPI从器件输
入/主器件输出引脚),SPISTE(SPI从器件发送使
能引脚),SPICLK(SPI串行时钟引脚)。JDSPF28335
第4期 王健:基于Micro SDM卡的的存储系统设计计·295·
和Micro SDD卡通信的硬硬件设计原理理图如图2所示。所
表1 MMicro SD卡在在SPI模式下下管脚描述
管脚 名称 类型 功能描述
1 RSV 保留
2 CS 输入 片选(低电电平有效)
3 DI 输入 数据输入
4 VVDD 电源 电源正输入入
5 CLK 输入 串行时钟
6 GGND 地 电源地
7 DO 输出 数据输出
8 RSV 保留
图2 Micrro SD卡原理图图
3 软件设设计
组合导导航设备上电后,存储系统统将上一次掉掉电
前存储的数数据写入FPGGA,数据处理理DSP根据任任务
需求决定是是否采用上一一次数据。系系统正常工作作后,
JDSP28335周期性将数数据写入Micrro SD卡,并并根
据数据处理理DSP请求读读取Micro SDD卡指定地址址数
据。存储系系统的程序设计主要包括:JDSP28335和
Micro SD卡初始化程序卡序设计和Miccro SD卡数据据通
信程序设计计。
3.1 初始化程程序设计
系统上上电后,JDSPP28335完成芯芯片初始化,,配
置DSP 的SPI 接口寄寄存器,实现SPI 接口函函数,
保证SPI接口正常工作,,然后对Micrro SD卡初始始化。
JDSP28335对Micro SSD卡初始化化操作需要根根据
Micro SD卡卡时序发送不不同命令,根据据返回信息确确定
下一步操作作
[3][4]
。Micrro SD卡初初始化成功后后,
JDSP28335和Micro SDD就可以正常常通信。整个个初
始化流程如如图3所示。
在图3中,系统上上电后,先发发送74个时钟钟周
期对Micro SD卡上电初初始化,使Micro SDM卡进进入
稳定定状态,然后后对Micro SDD卡初始化。。
对Micro SDS卡初始化化流程是发送送命令把片选选
线拉拉到低电平,使Micro SDD卡工作在SPIS模式,并
处在在IDLE(空闲)工作状态态,同时读取取Micro SDD
卡的的返回信息,如果应答信信号正确则初初始化成功;
如果果无返回信息息或返回信息息不对,则连连续发送8次
命令令,如果依旧旧无返回信息息或者返回信信息不对,则则
Miccro SD卡初始化失败。MMicro SD卡初始化成功卡功
后,需要发送命令确定Micrro SD卡版本本容量信息,
即确确定Micro SDS卡是标准准容量卡还是是大容量卡,
根据据返回信息初初始化Microo SD卡版本本,同时根据据
版本本容量信息修修改时钟频率率。
系统上上电
配置JDSP28335的SPI接口
Micro SD卡上上电初始化
(发送74个时时钟周期)
Micro SD卡初始化卡
成成功
初始化Micro SSD卡版本
读取寄存存器
建立通通信
完成初始始化
图3 存储系统初初始化流程
Micro SD卡的寄存器器中存储一些些信息对于一一
些应应用具有重要要意义,如OCCR(Operatinng Conditionss
Reggister)寄存存器存储了VDD电压范围;CSDD
(Card-SpecificCc Data Registeer)寄存器是是卡特性数据据
寄存存器,包含了了访问该卡数数据时的必要要配置信息;
CIDD(Card Idenntification Reegister)寄存存器是卡识别别
码寄寄存器,存储储了卡唯一标标识号,该号号在卡生产厂厂
家编编程后无法修修改。本方案案设计中需要要读取Microo
SD卡的寄存器器信息确定工作作配置状态。。
·296· 现代导航 2017年
在初始化完成及卡基本信息确定后,就可以建
立JDSP28335和Micro SD卡通信。
3.2 通信程序设计
JDSP28335和Micro SD卡建立通信后就可以
进行通信操作,通信操作包括JDSP28335读写及擦
除Micro SD卡
[5]
。
在SPI模式下对Micro SD卡的读操作是以块为
单位进行的,一次可以读一个块也可以读多个块,
同样对于写操作也是一次可以写一个块或写多个
块
[6]
。多块操作和单块操作流程类型,下面介绍单
块读写操作。
读单块操作的一般流程是:发送读取指定块命
令给Micro SD卡,同时等待卡返回数据信息,收
到正确返回信息,则根据读时序读取Micro SD卡
指定块数据。读取结束后释放SPI总线,使SPI总
线处于IDLE(空闲)状态。
写单块操作和读单块操作类似,区别在于写单
块操作完成后需要读取状态,校验数据是否正确写
入,如果写入失败则进行失败处理。写单块操作流
程如图4所示。
开始写操作
发送写指定块命令
响应命令的返回信息
成功
写数据
成功
读取写入状态
失败
失败处理
结束
图4 写单块操作流程
擦除块操作的流程是先发送擦除起始块地址
命令给Micro SD卡,接着发送擦除结束块地址命
令,然后发送擦除命令,发送每一个命令后都需要
等待卡返回数据信息,收到正确返回信息后进入下
一步操作。擦除成功结束后释放SPI总线,使SPI
总线处于IDLE(空闲)状态。
4 试验结果
本文设计的成果成功地应用到组合导航设备
中,经过4个月左右的测试,JDSPF28335和Micro
SD卡数据读写正常。
另外将组合导航设备输出数据备份存储到
Micro SD卡中,经过比对测试输出数据和存储的备
份数据,未发现存储数据出现错误遗漏数据,数据
正确率百分之百。
5 结论
本文基于国产JDSPF28335和Micro SD卡设计
了一种存储系统,满足组合导航设备大容量的非易
失存储需求,实现了长时间、连续将大容量组合导
航数据存储在Micro SD卡上。采用Micro SD卡设
计结构,实现存储容量的可扩展性,方便了存储功
能的进一步应用和升级。
该存储系统已经成功地应用在组合导航设备
中,试验证明,本文设计存储功能运行稳定,功能
可靠,存储的数据方便线下进一步分析处理,具有
体积小,方便移植升级,满足设备实际需求。
本文的设计方案也适用于其他类似数据存储
需求领域。
参考文献:
[1] 王健. SINS/CNS/GNSS组合导航计算机系统研究[J].
现代导航, 2015,6(1):13-16.
[2] 王健.
组合导航计算机容错技术研究[J].现代导航,
2016,7(1):24-27.
[3] 张岩,李津, 陈翔. 基于MSP430的Micro SD卡存储功
能实现与评测[J].现代电子技术,2015,38(12):129-131.
[4] 杨福远. 基于FPGA的SD卡控制器的设计和验证[D].
山东大学, 2014.
[5] 夏兰, 贾晓冬, 曲文博. 基于MSP430F5529和SD卡的
FAT16文件系统的设计[J]. 电子器件, 2015, 38(4):
946-952.
[6] 徐建功, 赵捷, 李伟,等. 基于STM32F103XX微处理器
的Micro SD卡读写[J]. 现代电子技术, 2010,(20),26-28.
2024年5月19日发(作者:雍惜雪)
2017年8月第4期 现代导航 ·293·
基于Micro SD卡的存储系统设计
王健
(中国电子科技集团公司第二十研究所,西安 710068)
摘 要:组合导航设备需要足够容量的非易失存储器,设计了一种基于国产DSP和Micro SD
卡的存储系统。首先,介绍了组合导航设备存储系统的总体设计;其次,基于国产DSP,设计
了采用SPI模式与Micro SD卡通信的硬件;然后,在硬件基础上用软件实现了对Micro SD卡的
数据读写。实际应用结果表明,设计的存储系统具有容量大,体积小,方便移植升级,有较高
应用价值。
关键词:国产DSP;Micro SD卡;SPI;存储系统
中图分类号:TP368 文献标识码:A 文章编号:1674-7976-(2017)04-293-04
Design of Storage System Based on Micro SD Card
WANG Jian
Abstract:
Integrated navigation device needs enough non-volatile memory storage capacity, and this paper designs a storage
system based on domestic DSP and Micro SD card. Firstly, this paper introduces general design about the storage system of
integrated navigation device. Secondly, based on domestic DSP and Micro SD card, this paper designs the storage system hardware
using SPI communication protocol mode. Thirdly, based on storage system hardware, this paper designs software and realizes
reading and writing data in the Micro SD card. The practical application results show that the storage system in this paper has the
advantages of large capacity, small size,
easy transplant and upgrade, and has a high application value.
Key words:
Domestic DSP; Micro SD Card; SPI; Storage System
路点等导航信息,并能够记录有关对准事件、对准
0 引言
组合导航设备通过组合不同导航传感器满足
实际工程应用需求,是多传感器导航信息优化处理
设备。由于组合多个传感器,为了方便线下分析处
理每一个传感器状态,在组合导航设备工作过程中
需要将自检状态、运行日志及中间数据等信息非易
失存储,另外组合导航设备每次工作完成后需要存
储一些重要参数以供下次工作使用, GJB1185A、
GJB5298、GJB4859等规范要求设备应提供足够容
量的非易失存储器,保存起始点和目标点位置、航
收稿日期:2017-04-12。王健(1988—),河南南阳人,工
程师,博士研究生,主要研究方向为组合导航。
时间、导航事件、导航时间等信息。
组合导航设备组合了惯性导航系统(INS)、卫
星导航系统(GNSS)等,通过多导航源的导航信
息融合,实现一个多功能高精度的组合导航设备
[1][2]
。组合导航设备导航数据输出速率是921600bps,
以60%占空比计算得到设备工作10小时左右导航
数据量约为2.3GB。保证数据输出及数据存储双备
份,另外系统还需要存储一些自检、日志及其它信
息,预估组合导航设备需要非易失存储器容量约为
4GB。
目前市面上比较常用的非易失存储器主要有
ROM、PROM、EPROM、EEPROM、Flash、SD卡、
Micro SD卡等,ROM、PROM、EPROM、EEPROM、
·294· 现代导航 2017年
Flash需要焊接在PCB板上,升级维护麻烦,满足
容量需求的存储器体积较大,另外这类存储器芯片
管脚较多,占用PCB过多空间;而SD卡、Micro SD
卡固定在卡槽中,移动灵活方便,并且具有容量大、
体积小,功耗低,成本低廉,抗震动性强,读/写速
度快以及可与多种系统平台兼容,并且管脚数量少,
节省PCB空间。Micro SD卡使用寿命长,可以进
行10万次以上的擦写操作。
Micro SD卡和SD卡传输原理完全相同,只是
接口外形尺寸不一样。SD卡的外形尺寸为24mm
×32mm×2.1mm,而Micro SD卡的外形尺寸小,
为11mm×15mm×1.0mm,Micro SD卡的接口支持
SPI模式。
综合以上考虑,在本方案中组合导航设备存储
数据用Micro SD卡,为组合导航设备提供具备足
够存储空间的非易失存储器,用于保存起始点坐标
和航向、规定的对准和导航事件、自检结果和飞行
过程参数记录等。
1 总体设计
组合导航设备的导航处理系统采用DSP和
FPGA架构,DSP负责数据处理和接口管理,FPGA
负责逻辑组合和时序控制。
在系统电/光性能、力学特性、热性能、环境适
应性、可靠性等综合指标限制下,优选国产电子元
器件进行系统设计和装备整机研制,确保装备发展
自主可控。导航处理系统的接口管理DSP器件选择
JDSPF28335。
JDSPF28335主要性能如下:
(1)主频最高150MHz,内核电压1.9V,I/O
电压3.3V;
(2)内置16位或32位的外部接口(XINTF),
超过2M x 16bit的寻址空间;
(3)256k×16bit的Flash, 34k×16bit的
SARAM,1k×16bit的OTP(一次性可编程)ROM;
(4)外部接口有两通道CAN、3个SCI(UART)、
2个多通道缓冲串行接口McBSP(可配置为串行外
围接口SPI)、1个SPI;
(5)外围中断扩展模块可支持达58个外围中
断;
(6)总共有88个可以独立进行可编程控制的
复用通用输入/输出GPIO口引脚。
JDSPF28335丰富的接口资源方便存储系统设
计,组合导航设备的存储系统结构原理示意图如图
1所示。
数据处理
接口管理
DSP
FPGA
DSP
MicroSD卡
(JDSPF28335)
图1 存储系统结构原理示意图
数据处理DSP和接口管理DSP(JDSP28335)
通过FPGA进行数据交互通信,数据处理DSP将多
个传感器数据进行信息融合处理,将处理结果写进
FPGA的指定RAM地址,另外系统自检信息及中
间结果也写进FPGA的指定RAM地址,接口管理
DSP将FPGA的不同RAM地址中的数据写进Micro
SD卡的不同地址,实现数据非易失性存储。数据
处理DSP也可以通过FPGA请求接口管理DSP将
Micro SD中存储的指定数据返回。本文主要介绍存
储系统,对数据处理DSP和FPGA设计不做具体介
绍。
2 硬件设计
Micro SD有两种工作模式,分别为SD模式和
SPI模式。JDSPF28335不具备SD模式接口,仅支
持SPI通信。本设计中选用Micro SD卡的SPI模式。
SPI ( Serial Peripheral Interface,串行外设接口)
是一种串行通信总线,允许CPU 与各种外围接口
器件以串行方式进行通信、交换信息。SPI串行接
口使用4条通信线路,分别为主机输入/从机输出线
(MISO),主机输出/从机输入线(MOSI),低电平
有效的使能信号线(CS),串行时钟线(SCL)。在
点对点的通信中,SPI不需要进行寻址操作,且为
全双工通信,简单高效
[3]
。本设计中JDSPF28335
芯片为主控制器(Master),Micro SD卡为从机
(Slave)。
Micro SD卡工作在SPI模式下,各个管脚功能
描述如表1所示。
JDSPF28335的SPI管脚是一个复用管脚,当
工作在SPI模式下定义分别是SPISOMI(SPI从器
件输出/主器件输入引脚),SPISIMO(SPI从器件输
入/主器件输出引脚),SPISTE(SPI从器件发送使
能引脚),SPICLK(SPI串行时钟引脚)。JDSPF28335
第4期 王健:基于Micro SDM卡的的存储系统设计计·295·
和Micro SDD卡通信的硬硬件设计原理理图如图2所示。所
表1 MMicro SD卡在在SPI模式下下管脚描述
管脚 名称 类型 功能描述
1 RSV 保留
2 CS 输入 片选(低电电平有效)
3 DI 输入 数据输入
4 VVDD 电源 电源正输入入
5 CLK 输入 串行时钟
6 GGND 地 电源地
7 DO 输出 数据输出
8 RSV 保留
图2 Micrro SD卡原理图图
3 软件设设计
组合导导航设备上电后,存储系统统将上一次掉掉电
前存储的数数据写入FPGGA,数据处理理DSP根据任任务
需求决定是是否采用上一一次数据。系系统正常工作作后,
JDSP28335周期性将数数据写入Micrro SD卡,并并根
据数据处理理DSP请求读读取Micro SDD卡指定地址址数
据。存储系系统的程序设计主要包括:JDSP28335和
Micro SD卡初始化程序卡序设计和Miccro SD卡数据据通
信程序设计计。
3.1 初始化程程序设计
系统上上电后,JDSPP28335完成芯芯片初始化,,配
置DSP 的SPI 接口寄寄存器,实现SPI 接口函函数,
保证SPI接口正常工作,,然后对Micrro SD卡初始始化。
JDSP28335对Micro SSD卡初始化化操作需要根根据
Micro SD卡卡时序发送不不同命令,根据据返回信息确确定
下一步操作作
[3][4]
。Micrro SD卡初初始化成功后后,
JDSP28335和Micro SDD就可以正常常通信。整个个初
始化流程如如图3所示。
在图3中,系统上上电后,先发发送74个时钟钟周
期对Micro SD卡上电初初始化,使Micro SDM卡进进入
稳定定状态,然后后对Micro SDD卡初始化。。
对Micro SDS卡初始化化流程是发送送命令把片选选
线拉拉到低电平,使Micro SDD卡工作在SPIS模式,并
处在在IDLE(空闲)工作状态态,同时读取取Micro SDD
卡的的返回信息,如果应答信信号正确则初初始化成功;
如果果无返回信息息或返回信息息不对,则连连续发送8次
命令令,如果依旧旧无返回信息息或者返回信信息不对,则则
Miccro SD卡初始化失败。MMicro SD卡初始化成功卡功
后,需要发送命令确定Micrro SD卡版本本容量信息,
即确确定Micro SDS卡是标准准容量卡还是是大容量卡,
根据据返回信息初初始化Microo SD卡版本本,同时根据据
版本本容量信息修修改时钟频率率。
系统上上电
配置JDSP28335的SPI接口
Micro SD卡上上电初始化
(发送74个时时钟周期)
Micro SD卡初始化卡
成成功
初始化Micro SSD卡版本
读取寄存存器
建立通通信
完成初始始化
图3 存储系统初初始化流程
Micro SD卡的寄存器器中存储一些些信息对于一一
些应应用具有重要要意义,如OCCR(Operatinng Conditionss
Reggister)寄存存器存储了VDD电压范围;CSDD
(Card-SpecificCc Data Registeer)寄存器是是卡特性数据据
寄存存器,包含了了访问该卡数数据时的必要要配置信息;
CIDD(Card Idenntification Reegister)寄存存器是卡识别别
码寄寄存器,存储储了卡唯一标标识号,该号号在卡生产厂厂
家编编程后无法修修改。本方案案设计中需要要读取Microo
SD卡的寄存器器信息确定工作作配置状态。。
·296· 现代导航 2017年
在初始化完成及卡基本信息确定后,就可以建
立JDSP28335和Micro SD卡通信。
3.2 通信程序设计
JDSP28335和Micro SD卡建立通信后就可以
进行通信操作,通信操作包括JDSP28335读写及擦
除Micro SD卡
[5]
。
在SPI模式下对Micro SD卡的读操作是以块为
单位进行的,一次可以读一个块也可以读多个块,
同样对于写操作也是一次可以写一个块或写多个
块
[6]
。多块操作和单块操作流程类型,下面介绍单
块读写操作。
读单块操作的一般流程是:发送读取指定块命
令给Micro SD卡,同时等待卡返回数据信息,收
到正确返回信息,则根据读时序读取Micro SD卡
指定块数据。读取结束后释放SPI总线,使SPI总
线处于IDLE(空闲)状态。
写单块操作和读单块操作类似,区别在于写单
块操作完成后需要读取状态,校验数据是否正确写
入,如果写入失败则进行失败处理。写单块操作流
程如图4所示。
开始写操作
发送写指定块命令
响应命令的返回信息
成功
写数据
成功
读取写入状态
失败
失败处理
结束
图4 写单块操作流程
擦除块操作的流程是先发送擦除起始块地址
命令给Micro SD卡,接着发送擦除结束块地址命
令,然后发送擦除命令,发送每一个命令后都需要
等待卡返回数据信息,收到正确返回信息后进入下
一步操作。擦除成功结束后释放SPI总线,使SPI
总线处于IDLE(空闲)状态。
4 试验结果
本文设计的成果成功地应用到组合导航设备
中,经过4个月左右的测试,JDSPF28335和Micro
SD卡数据读写正常。
另外将组合导航设备输出数据备份存储到
Micro SD卡中,经过比对测试输出数据和存储的备
份数据,未发现存储数据出现错误遗漏数据,数据
正确率百分之百。
5 结论
本文基于国产JDSPF28335和Micro SD卡设计
了一种存储系统,满足组合导航设备大容量的非易
失存储需求,实现了长时间、连续将大容量组合导
航数据存储在Micro SD卡上。采用Micro SD卡设
计结构,实现存储容量的可扩展性,方便了存储功
能的进一步应用和升级。
该存储系统已经成功地应用在组合导航设备
中,试验证明,本文设计存储功能运行稳定,功能
可靠,存储的数据方便线下进一步分析处理,具有
体积小,方便移植升级,满足设备实际需求。
本文的设计方案也适用于其他类似数据存储
需求领域。
参考文献:
[1] 王健. SINS/CNS/GNSS组合导航计算机系统研究[J].
现代导航, 2015,6(1):13-16.
[2] 王健.
组合导航计算机容错技术研究[J].现代导航,
2016,7(1):24-27.
[3] 张岩,李津, 陈翔. 基于MSP430的Micro SD卡存储功
能实现与评测[J].现代电子技术,2015,38(12):129-131.
[4] 杨福远. 基于FPGA的SD卡控制器的设计和验证[D].
山东大学, 2014.
[5] 夏兰, 贾晓冬, 曲文博. 基于MSP430F5529和SD卡的
FAT16文件系统的设计[J]. 电子器件, 2015, 38(4):
946-952.
[6] 徐建功, 赵捷, 李伟,等. 基于STM32F103XX微处理器
的Micro SD卡读写[J]. 现代电子技术, 2010,(20),26-28.