CN108008908B - 一种管控sd卡上数据的方法和装置 - Google Patents

一种管控sd卡上数据的方法和装置 Download PDF

Info

Publication number
CN108008908B
CN108008908B CN201610926804.3A CN201610926804A CN108008908B CN 108008908 B CN108008908 B CN 108008908B CN 201610926804 A CN201610926804 A CN 201610926804A CN 108008908 B CN108008908 B CN 108008908B
Authority
CN
China
Prior art keywords
card
area
data
formatted
sector
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610926804.3A
Other languages
English (en)
Other versions
CN108008908A (zh
Inventor
邓利华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BYD Co Ltd
Original Assignee
BYD Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by BYD Co Ltd filed Critical BYD Co Ltd
Priority to CN201610926804.3A priority Critical patent/CN108008908B/zh
Publication of CN108008908A publication Critical patent/CN108008908A/zh
Application granted granted Critical
Publication of CN108008908B publication Critical patent/CN108008908B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Abstract

本发明属于单片机应用开发领域,提供一种管控SD卡上数据的方法和装置,以适用于单片机的应用开发,且写入到SD上的数据能够方便地通过个人电脑查看。所述方法包括:初始化SD卡,所述SD卡已被格式化为某种格式的文件系统;获取所述已格式化SD卡的有效操作区的范围,所述有效操作区属于所述已格式化SD卡的数据区;将读取的数据写入所述有效操作区内。本发明提供的技术方案一方面使得用户能够很方便地查看到SD卡上写入的数据;另一方面,在已格式化SD卡的有效操作区的范围内写数据,可当作没有文件系统,不用维护文件系统FAT、更新目录等操作,减小了软件开发的复杂度,非常适用于单片机开发。

Description

一种管控SD卡上数据的方法和装置
技术领域
本发明属于单片机应用开发领域,尤其涉及一种管控SD卡上数据的方法和装置。
背景技术
SD卡是Secure Digital Memory Card的简称,凭其存储容量大、价格低廉、使用携带方便、通用性与安全性强等优势,SD卡已广泛应用于生活、工作中,成为最普遍、通用的数据存储卡。例如,手机、MP3、数码相机等设备都采用SD卡作为其存储介质。目前各电子设备中SD卡的应用主要有两种方式,一种是在单片机应用开发系统中,微控制单元(Micro-Controller Unit,MCU)直接按照物理地址读写控制SD卡,另一种是嵌入式系统中用于管理SD存储卡的通用文件系统。前者可将SD卡当作普通FLASH,易于理解操作,开发难度较小,后者可以兼容PC机,可直接查看写入的文件、数据内容,便于管理。
上述第一种方案中,虽然MCU直接控制SD卡的物理地址进行读写数据,但是不能在电脑上查看SD卡写入的数据,不能通过某种通用工具或方法使用户直接看到SD卡中存储的数据,而第二种方案中,由于文件系统比较复杂,开发难度较大,并不适用于单片机应用系统。
综上,对于单片机的应用开发,以上两种方案均有其弊端。
发明内容
本发明的目的在于提供一种管控SD卡上数据的方法和装置,以适用于单片机的应用开发,且写入到SD上的数据能够方便地通过个人电脑查看。
本发明第一方面提供一种管控SD卡上数据的方法,所述方法包括:
初始化SD卡,所述SD卡已被格式化为某种格式的文件系统;
获取所述已格式化SD卡的有效操作区的范围,所述有效操作区属于所述已格式化SD卡的数据区;
将读取的数据写入所述有效操作区内。
本发明第二方面提供一种管控SD卡上数据的装置,所述装置包括:
初始化模块,用于初始化SD卡,所述SD卡已被格式化为某种格式的文件系统;
获取模块,用于获取所述已格式化SD卡的有效操作区的范围,所述有效操作区属于所述已格式化SD卡的数据区;
写入模块,用于将读取的数据写入所述有效操作区内。
从上述本发明技术方案可知,一方面,SD卡被格式化为某种格式的文件系统,并且在已格式化SD卡的有效操作区的范围内写数据,当SD卡插入个人电脑PC后,采用通用工具(例如,winHex)即可被PC识别,用户能够很方便地查看到SD卡上写入的数据;另一方面,在已格式化SD卡的有效操作区的范围内写数据,可当作没有文件系统,不用维护文件系统FAT、更新目录等操作,减小了软件开发的复杂度,非常适用于单片机开发。
附图说明
图1是本发明实施例一提供的管控SD卡上数据的方法的实现流程示意图;
图2是本发明实施例二提供的管控SD卡上数据的方法用于车载终端时微控制单元与SD卡连接示意图;
图3是本发明实施例三提供的管控SD卡上数据的装置的结构示意图;
图4是本发明实施例四提供的管控SD卡上数据的装置的结构示意图;
图5是本发明实施例五提供的管控SD卡上数据的装置的结构示意图;
图6是本发明实施例六提供的管控SD卡上数据的装置的结构示意图;
图7-a是本发明实施例七提供的管控SD卡上数据的装置的结构示意图;
图7-b是本发明实施例八提供的管控SD卡上数据的装置的结构示意图;
图7-c是本发明实施例九提供的管控SD卡上数据的装置的结构示意图;
图7-d是本发明实施例十提供的管控SD卡上数据的装置的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例提供一种管控SD卡上数据的方法,所述方法包括:初始化SD卡,所述SD卡已被格式化为某种格式的文件系统;获取所述已格式化SD卡的有效操作区的范围,所述有效操作区属于所述已格式化SD卡的数据区;将读取的数据写入所述有效操作区内。本发明实施例还提供相应的管控SD卡上数据的装置。以下分别进行详细说明。
请参阅附图1,是本发明实施例一提供的管控SD卡上数据的方法的实现流程示意图。需要说明的是,由于本发明的应用场景是单片机开发,因此,附图1示例的管控SD卡上数据的方法的执行主体可以是与SD卡连接的微控制单元(Micro-Controller Unit,MCU)。附图1示例的管控SD卡上数据的方法主要包括以下步骤S101至步骤S103,详细说明如下:
S101,初始化SD卡,所述SD卡已被格式化为某种格式的文件系统。
文件系统指的是DOS、Windows、OS/2、Macintosh和UNIX-based操作系统用于明确存储设备或分区上的文件的方法和数据结构,即在存储设备上组织文件的方法。在本发明实施例中,SD卡被格式化为某种格式的文件系统,例如,FAT32格式、FAT16格式或FAT8格式,等等;SD卡被格式化为某种格式的文件系统,意味着SD卡接入到个人电脑PC上时,SD卡可以被PC识别,采用某种通用工具,例如winHex可以看到SD卡上写入的数据。
在本发明实施例中,初始化SD卡,主要是在SD卡上电后,与其连接的MCU向SD卡发送至少74个时钟,完成供电、同步SD卡时钟,以保障SD卡能够正常工作;发送CMD命令,让SD卡进入某种工作模式,例如SPI模式;判断SD卡的类型是V1.0还是V2.0;以及获取CSD寄存器中SD卡的基本信息,例如版本协议、读写最大值和擦除扇区数,等等。
S102,获取已格式化SD卡的有效操作区的范围,所述有效操作区属于已初始化SD卡的数据区。
在本发明实施例中,已格式化SD卡的有效操作区属于已格式化SD卡的数据区,而SD卡的数据区是相对于SD卡的保护区而言的;其中,SD卡的保护区是指文件系统中的主引导记录(Main Boot Record,MBR)区、DOS引导记录(DOS Boot Record,DBR)、信息扇区和文件分配表等;顾名思义,SD卡的保护区SD中受保护的区域,不允许在上面进行写数据和擦除数据等操作。
作为本发明一个实施例,获取已格式化SD卡的有效操作区的范围可以通过如下步骤S1021至S1023实现:
S1021,从MBR区读取总扇区数X和DBR区的扇区地址N。
在本发明实施例中,MBR区是SD卡上以物理地址0x0000000开始的第一个扇区,其中的几个存储单元存储了总扇区数X和DBR区的扇区地址N,只要读取这几个存储单元中的内容,即可读取总扇区数X和DBR区的扇区地址N。以SD卡被格式化为FAT32的文件系统为例,MBR区中物理地址为0x1C6~0x1C9的存储单元存储的是DBR区的扇区地址N,物理地址为0x1CA~0x1CD的存储单元存储的是SD卡的总扇区数X,因此,只要读取MBR区中物理地址为0x1C6~0x1C9的存储单元中的内容即可获取DBR区的扇区地址N,读取物理地址为0x1CA~0x1CD的存储单元中的内容即可获取SD卡的总扇区数X。
S1022,根据DBR区的扇区地址N,从DBR区读取DBR所在保留扇区数M和第i个文件分配表FAT占用的扇区数Ki
具体地,可根据DBR区的扇区地址N,计算DBR区的物理地址,读取DBR区的物理地址的偏移地址中的数据以获取保留扇区数M和第i个文件分配表FAT占用的扇区数Ki。以SD卡被格式化为FAT32的文件系统为例,由于SD卡的一个扇区的容量为512个字节(bytes),且SD卡只有一个分区即DBR区,因此,DBR区的物理地址为N*512,偏移地址0x0E的存储单元,其两个字节存储的是保留扇区数M,DBR区的物理地址的偏移地址0x24~0x27的存储单元,其存储的是第i个FAT占得的扇区数Ki;SD卡有两个FAT,每个FAT占得的扇区数均为K。
S1023,根据X、N、M和Ki,确定已格式化SD卡的有效操作区的起始物理地址和结束物理地址。
具体地,根据X、N、M和Ki,确定已格式化SD卡的有效操作区的起始物理地址和结束物理地址可以是:将
Figure BDA0001137029460000051
Figure BDA0001137029460000052
分别乘以B,以
Figure BDA0001137029460000053
作为已格式化SD卡的有效操作区的起始物理地址,以
Figure BDA0001137029460000054
作为已格式化SD卡的有效操作区的结束物理地址,其中,B为SD卡的一个扇区的容量,m为文件系统中FAT表的个数,其值一般取2即一般有两个FAT表。以SD卡被格式化为FAT32的文件系统为例,由于由于SD卡的一个扇区的容量为512个字节(bytes),且有两个均占得K个扇区的FAT,则将(N+M+2K)和[X-(N+M+2K)]分别乘以512,以(N+M+2K)*512作为已格式化SD卡的有效操作区的起始物理地址,以[X-(N+M+2K)]*512作为已格式化SD卡的有效操作区的结束物理地址。
S103,将读取的数据写入已格式化SD卡的有效操作区内。
SD卡可以工作在SD模式和串行外设接口(Serial Peripheral Interface,SPI)模式,相对于SD模式,SPI模式可以简单化主机设计,降低成本,且绝大多数高性能主控制芯片都配置了SPI,因此,在本发明上述实施例中,将读取的数据写入已格式化SD卡的有效操作区内可以是:通过SPI将读取的数据写入SPI模式的已格式化SD卡的有效操作区内。按照上述实施例,是通过SPI将读取的数据写入SPI模式的已格式化SD卡中物理地址为
Figure BDA0001137029460000061
Figure BDA0001137029460000062
的范围内。以SD卡被格式化为FAT32的文件系统为例,是通过SPI将读取的数据写入SPI模式的已格式化SD卡中物理地址为(N+M+2K)*B至[X-(N+M+2K)]*B的范围内。至于怎样使得SD卡工作在SPI模式,在本发明实施例中,是在SD卡准备就绪后后,MCU通过拉低片选引脚发送CMD0命令至SD卡,使其进入SPI模式。
从上述附图1示例的管控SD卡上数据的方法可知,一方面,SD卡被格式化为某种格式的文件系统,并且在已格式化SD卡的有效操作区的范围内写数据,当SD卡插入个人电脑PC后,采用通用工具(例如,winHex)即可被PC识别,用户能够很方便地查看到SD卡上写入的数据;另一方面,在已格式化SD卡的有效操作区的范围内写数据,可当作没有文件系统,不用维护文件系统FAT、更新目录等操作,减小了软件开发的复杂度,非常适用于单片机开发。
为了更加清楚、直观地说明上述本发明的技术方案,以下以车载终端上的应用为例;车载终端上的应用一般是基于单片机的应用。车载终端通过CAN总线采集大量车身数据存储到SD卡,用于分析实时车况或监控车辆状态等。根据目前的现有技术有两种方案实现,第一种是MCU直接访问SD卡物理地址,操作简单,但存储到SD卡的数据,也只能按照物理地址读出,当需要查看SD卡里存储的数据时,非常慢,时效性低。如车载终端上的SD卡已经采集存储了一个月的数据,以1G的数据为例,查看存储的数据也只能通过扇区读取,不能在短时间以秒为单位的时间内实现,且数据量越大,耗时越多,极不方便查看数据;第二种方案是通过文件系统,操作复杂,开发难度大,显然应用于简单的单片机应用开发,系统资源、人力成本高、消耗大。本发明实施例提供的管控SD卡上数据的方法可以有效地解决上述两种方案的不足之处,能够很好地应用在车载终端存储CAN数据系统中。管控SD卡上数据的装置,主控制系统即MCU与SD卡通过SPI连接,主控制系统通过CAN总线获取车身CAN报文,解析处理后存储到SD卡中。主控制系统与SD卡的物理连接如附图2所示,其中,U2是主控制系统中的微控制芯片MCU,U1为SD卡的物理结构图,以下先对各个引脚作用进行简单说明:
SD卡有9个引脚,SPI模式下用到其中5个,其中,SD_DET检测脚用于检测SD卡是否有效,当SD_DET为低时表示有效;SD_CS是片选脚,当SD_CS为低时有效,用于主控制系统发送数据或命令,发送完后拉高片选脚;SD_SCK为时钟,由主控制系统提供波特率;SD_RD为读数据线,SD_WR为写数据线。
主控制系统中主控制芯片选择一组SPI接口与SD对应的引脚连接,例如。MISO0与SD_RD、MOSI0与SD_WR、SCK0与SD_CLK、CAP0与SD_CS分别相连,而SD_DET则选择任意一个通用GPIO引脚即可。
本发明在车载终端上的应用的实现流程主要包括S1至S3这3个部分,其中,S1部分为初始化与卡类型识别,S2部分为获取SD卡的有效操作区,S3部分为读写SD卡,以下逐个说明:
S1,为前期准备,通过以下S11)至S15)完成:
S11)将SD卡格式化成某种PC支持的文件系统,由于本系统用的HSD 4G卡,故格式化为FAT32;
S12)硬件车载终端支持插拔SD卡;
S13)主控制系统检测SD_DET引脚电平,为低表明有SD卡且SD卡完好,可正常使用;
S14)上电初始化,使SD卡进入SPI模式、识别卡类型、初始化,其中,对SD卡进行控制是通过向SD卡发送CMD命令,SD卡唯一能够识别的交流指令,同时SD卡也会对CMD命令作出响应,以表示自身状态;
S15)具体实现流程见附图5中S1部分。
S2,获取SD卡的有效操作区,通过以下S21)至S24)完成。
S21),通过CMD24读取MBR内容,SD卡物理地址第一个扇区512字节,存放到temptable[512]数组中(SD卡最小操作单位为512byte,FAT32中也叫一个扇区,本文中提到的扇区都是512byte。FAT32中数据是Little-endian顺序,小端在前的存储方式);
S22),由FAT32数据协议可知,MBR区的0x1C6开始的4byte为DBR开始的扇区数N,0x1CA后的4byte为总扇区数X。若#define uint32unsigned long,则N=(uint32)temptable[454]+(uint32)(temptable[455]<<8)+(uint32)(temptable[456]<<16)+(uint32)(temptable[457]<<24);X=(uint32)temptable[458]+(uint32)(temptable[459]<<8)+(uint32)(temptable[460]<<16)+(uint32)(temptable[461]<<24);
S23),通过CMD24读取N*512地址的一个扇区,即DBR区的起始物理地址,数据存放到tmptable[512]数组中,DBR保留扇区M值存放在逻辑偏移地址0x0E~0x0F中,FAT占扇区数K在逻辑偏移地址0x24~0x27中,则
M=(uint32)tmptable[14]+(uint32)(tmptable[15]<<8);
K=(uint32)tmptable[36]+(uint32)(tmptable[37]<<8)+(uint32)(tmptable[38]<<16)+(uint32)(tmptable[39]<<24);
S24),AOA起始物理扇区为N+M+K+K,起始物理地址(N+M+K+K)*512。
S3,读写SD卡。
此处主要是向SD卡中写入分析处理过的从CAN总线采集到的CAN报文,存储数据只能在SD卡的有效操作区内,起始物理地址为(N+M+K+K)*512,结束物理地址为[X-(N+M+K+K)]*512,写入前判断当前写入扇区是否超过X-(N+M+K+K),若是从起始地址开始写,循环覆盖,若需要保证数据的准确性,可先擦除再写入。
请参阅附图3,是本发明实施例二提供的管控SD卡上数据的装置的结构示意图。为了便于说明,附图3仅示出了与本发明实施例相关的部分。附图3示例的管控SD卡上数据的装置可以是附图1示例的管控SD卡上数据的方法的执行主体,例如,MCU。附图3示例的管控SD卡上数据的装置主要包括初始化模块301、获取模块302和写入模块303,其中:
初始化模块301,用于初始化SD卡,其中,SD卡已被格式化为某种格式的文件系统;
获取模块302,用于获取已格式化SD卡的有效操作区的范围,其中,有效操作区属于已格式化SD卡的数据区;
写入模块303,用于将读取的数据写入已格式化SD卡的有效操作区内。
附图3示例的获取模块302可以包括第一读取单元401、扇区数获取单元402和确定单元403,如附图4所示本发明实施例四提供的管控SD卡上数据的装置,其中:
第一读取单元401,用于从主引导记录MBR区读取总扇区数X和DOS引导记录DBR区的扇区地址N;
扇区数获取单元402,用于根据DBR区的扇区地址N,从DBR区读取DBR所在保留扇区数M和第i个文件分配表FAT占用的扇区数Ki
确定单元403,用于根据总扇区数X、DBR区的扇区地址N、保留扇区数M和第i个文件分配表FAT占用的Ki,确定已格式化SD卡的有效操作区的起始物理地址和结束物理地址。
附图4示例的扇区数获取单元402可以包括第一计算单元501和第二读取单元502,如附图5所示本发明实施例五提供的管控SD卡上数据的装置,其中:
第一计算单元501,用于根据DBR区的扇区地址N,计算DBR区的物理地址;
第二读取单元503,用于读取DBR区的物理地址的偏移地址中的数据以获取保留扇区数M和第i个文件分配表FAT占用的扇区数Ki
附图4示例的确定单元403可以包括第二计算单元601,如附图6所示本发明实施例六提供的管控SD卡上数据的装置。第二计算单元601用于将
Figure BDA0001137029460000101
Figure BDA0001137029460000102
分别乘以B,以
Figure BDA0001137029460000103
作为已格式化SD卡的有效操作区的起始物理地址,以
Figure BDA0001137029460000104
作为已格式化SD卡的有效操作区的结束物理地址,B为SD卡的一个扇区的容量,m为文件系统中FAT表的个数,其值一般取为2即有两个FAT表。
上述附图3至附图6任一示例的写入模块303可以包括数据写入单元701,如附图7-a至附图7-d所示本发明实施例七至十提供的管控SD卡上数据的装置。数据写入单元701用于通过串行外设接口SPI将读取的数据写入SPI模式的已格式化SD卡的有效操作区内。
需要说明的是,上述装置各模块/单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,其带来的技术效果与本发明方法实施例相同,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序控制CMD命令、设计算法以及相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁盘或光盘等。
以上对本发明实施例所提供的管控SD卡上数据的方法和装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种管控SD卡上数据的方法,其特征在于,所述方法包括:
微控制单元初始化SD卡,所述SD卡已被格式化为某种格式的文件系统,所述某种格式包括FAT32格式、FAT16格式或FAT8格式;
获取所述已格式化SD卡的有效操作区的范围,所述有效操作区属于所述已格式化SD卡的数据区;
将读取的数据写入所述有效操作区内,当所述SD卡插入个人电脑PC后,通过指定通用工具识别所述有效操作区内写入的数据。
2.如权利要求1所述的方法,其特征在于,所述获取所述已格式化SD卡的有效操作区的范围包括:
从主引导记录MBR区读取总扇区数X和DOS引导记录DBR区的扇区地址N;
根据所述DBR区的扇区地址N,从所述DBR区读取所述DBR所在保留扇区数M和第i个文件分配表FAT占用的扇区数Ki;
根据所述X、N、M和Ki,确定所述有效操作区的起始物理地址和结束物理地址。
3.如权利要求2所述的方法,其特征在于,所述根据所述总扇区数X和DBR区的扇区地址N,获取保留扇区数M和第i个文件分配表FAT占用的扇区数Ki包括:
根据所述DBR区的扇区地址N,计算所述DBR区的物理地址;
读取所述DBR区的物理地址的偏移地址中的数据以获取所述保留扇区数M和第i个文件分配表FAT占用的扇区数Ki。
4.如权利要求2所述的方法,其特征在于,所述根据所述X、N、M和Ki,确定所述有效操作区的起始物理地址和结束物理地址包括:
Figure FDA0002490277450000021
Figure FDA0002490277450000022
分别乘以B,以
Figure FDA0002490277450000023
作为所述有效操作区的起始物理地址,以
Figure FDA0002490277450000024
作为所述有效操作区的结束物理地址,所述B为SD卡的一个扇区的容量,所述m为所述文件系统中FAT表的个数。
5.如权利要求1至4任意一项所述的方法,其特征在于,所述将读取的数据写入所述有效操作区内包括:
通过串行外设接口SPI将读取的数据写入SPI模式的所述已格式化SD卡的有效操作区内。
6.一种管控SD卡上数据的装置,其特征在于,所述装置包括:
初始化模块,用于微控制单元初始化SD卡,所述SD卡已被格式化为某种格式的文件系统,所述某种格式包括FAT32格式、FAT16格式或FAT8格式;
获取模块,用于获取所述已格式化SD卡的有效操作区的范围,所述有效操作区属于所述已格式化SD卡的数据区;
写入模块,用于将读取的数据写入所述有效操作区内,当所述SD卡插入个人电脑PC后,通过指定通用工具识别所述有效操作区内写入的数据。
7.如权利要求6所述的装置,其特征在于,所述获取模块包括:
第一读取单元,用于从主引导记录MBR区读取总扇区数X和DOS引导记录DBR区的扇区地址N;
扇区数获取单元,用于根据所述DBR区的扇区地址N,从所述DBR区读取所述DBR所在保留扇区数M和第i个文件分配表FAT占用的扇区数Ki;
确定单元,用于根据所述X、N、M和Ki,确定所述有效操作区的起始物理地址和结束物理地址。
8.如权利要求7所述的装置,其特征在于,所述扇区数获取单元包括:
第一计算单元,用于根据所述DBR区的扇区地址N,计算所述DBR区的物理地址;
第二读取单元,用于读取所述DBR区的物理地址的偏移地址中的数据以获取所述保留扇区数M和第i个文件分配表FAT占用的扇区数Ki。
9.如权利要求7所述的装置,其特征在于,所述确定单元包括:
第二计算单元,用于将
Figure FDA0002490277450000031
Figure FDA0002490277450000032
分别乘以B,以
Figure FDA0002490277450000033
作为所述有效操作区的起始物理地址,以
Figure FDA0002490277450000034
Figure FDA0002490277450000035
作为所述有效操作区的结束物理地址,所述B为SD卡的一个扇区的容量,所述m为所述文件系统中FAT表的个数。
10.如权利要求6至9任意一项所述的装置,其特征在于,所述写入模块包括:
数据写入单元,用于通过串行外设接口SPI将读取的数据写入SPI模式的所述已格式化SD卡的有效操作区内。
CN201610926804.3A 2016-10-31 2016-10-31 一种管控sd卡上数据的方法和装置 Active CN108008908B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610926804.3A CN108008908B (zh) 2016-10-31 2016-10-31 一种管控sd卡上数据的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610926804.3A CN108008908B (zh) 2016-10-31 2016-10-31 一种管控sd卡上数据的方法和装置

Publications (2)

Publication Number Publication Date
CN108008908A CN108008908A (zh) 2018-05-08
CN108008908B true CN108008908B (zh) 2020-08-07

Family

ID=62047890

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610926804.3A Active CN108008908B (zh) 2016-10-31 2016-10-31 一种管控sd卡上数据的方法和装置

Country Status (1)

Country Link
CN (1) CN108008908B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109101435A (zh) * 2018-06-28 2018-12-28 深圳市众鸿科技股份有限公司 移动存储设备的多分区识别方法及系统、车载终端
CN110941843B (zh) * 2019-11-22 2022-03-29 北京明略软件系统有限公司 一种加密实现方法、装置、设备及存储介质
CN112083880B (zh) * 2020-08-20 2023-05-16 厦门市美亚柏科信息安全研究所有限公司 一种手机系统文件在线修改方法、装置及存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100468412C (zh) * 2007-05-24 2009-03-11 北京交通大学 一种便携式串行数据记录仪及实现方法
CN101403972A (zh) * 2008-01-17 2009-04-08 深圳市江波龙电子有限公司 嵌入式系统的存储卡引导方法及装置
CN102117316B (zh) * 2010-12-31 2012-11-21 华为数字技术有限公司 Fat文件系统格式化方法及装置
JP5976608B2 (ja) * 2012-10-30 2016-08-23 株式会社東芝 メモリデバイス

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
FAT文件系统的SD卡单片机读写详解;无名;《百度文库》;20150107;正文第1页 *
SD卡上建立FAT32文件系统;曾经来过de;《百度文库》;20141207;正文第1-3页 *
基于FAT32文件系统的SD卡数据存储结构研究;李文华等;《长江大学学报(自然科学版)理工》;20120630;第102、111页 *
基于SD卡的FAT32文件系统的设计与实现;顾春洋等;《产业与科技论坛》;20131231;第96-98页 *

Also Published As

Publication number Publication date
CN108008908A (zh) 2018-05-08

Similar Documents

Publication Publication Date Title
US11954370B2 (en) Command queuing
US20210117106A1 (en) Systems and methods for storing data in ssd
US9032182B2 (en) Electronic apparatus with storage media having real address designated by stimulated request format and storage media having real address not designated by stimulated request format
CN103678193A (zh) 控制非易失性存储卡的主机、包括主机的系统、操作方法
CN108008908B (zh) 一种管控sd卡上数据的方法和装置
KR102140592B1 (ko) 데이터 저장 장치
CN102681959A (zh) 一种服务器带内带外信息交互的方法
JP5906721B2 (ja) 外部出力装置、外部出力装置のログ収集方法、及びプログラム
CN102087604A (zh) 可获取硬件配置信息的计算机及其方法
US20090210565A1 (en) Information Processing Device, and Device Initialization Method in the Information Processing Device
CN101403972A (zh) 嵌入式系统的存储卡引导方法及装置
KR20190022933A (ko) 하이브리드 메모리 드라이브, 컴퓨터 시스템, 및 멀티 모드 하이브리드 드라이브를 동작시키기 위한 관련 방법
CN109634664A (zh) 一种cpu给硬件电路下发命令描述符的方法及装置
CN101404000B (zh) 多存储卡逻辑合一的读写方法
CN103544097B (zh) 嵌入式系统的日志存储方法、系统及日志读取方法和系统
EP3072049B1 (en) Indicating rebuild state of storage devices
CN110175146B (zh) 硬盘信息获取方法和获取硬盘信息的装置
CN106030544B (zh) 计算机设备内存的检测方法和计算机设备
CN115576499A (zh) 一种实时系统访及其访问Flash安全性加强方法
CN102520878B (zh) 访问智能sd卡的方法及系统
US11593158B2 (en) Universal peripheral extender for communicatively connecting peripheral I/O devices and smart host devices
CN108073238A (zh) 一种服务器架构及运行方法
CN108521646B (zh) 一种近场通信方法、装置及计算机可读存储介质
CN103106159B (zh) 一种建立通道访问智能存储设备的方法
CN100456245C (zh) 一种存储装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant