基于FLASH总线的SD卡控制电路及其读写方法转让专利

申请号 : CN200810013706.6

文献号 : CN100585627C

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陶圣华

申请人 : 济南市泰信电子有限责任公司

摘要 :

本发明公开了一种基于FLASH总线的SD卡控制电路及其读写方法。它解决了目前SD卡控制电路成本较高,兼容性差等问题,具有结构简单,成本较低,兼容性好等优点。其结构为:它包括处理器,处理器与存储器连接,同时处理器通过FLASH总线与SD卡读写控制电路和NOR FLASH电路连接,处理器的CSO、端分别为NOR FLASH的片选信号端和SD卡读写控制电路的片选信号端,并与之连接。

权利要求 :

1、一种基于FLASH总线的SD卡控制电路,其特征是:它包括处理器,处理器与存储器连接,同时处理器通过FLASH总线与SD卡读写控制电路、NOR FLASH电路连接,处理器的CSO、SD_CS端分别为NOR FLASH的片选信号端和SD卡读写控制电路的片选信号端,并与NORFLASH的片选信号端和SD卡读写控制电路的片选信号端连接; 所述SD卡读写控制电路包括SD卡连接器CON2、八双向总线收发器U1和二输入四与门电路U2; 其中FLASH总线的DATA0-DATA4端连接至U1的A口,SD卡的SD总线中的数据线SD_DATA0-SD_DATA3、命令线SD_CMD连接至U1的B口;FLASH总线上的读使能信号OE端连接至U1的方向选择管脚DIR;SD卡读写控制电路使能信号SD_CS端连接至U1的片选管脚OE;写使能信号WE、读使能信号OE经过与门电路U2产生SD总线中的SD_CLK信号,U2的SD_CLK信号端接SD卡连接器CON2的SCLK/CLK端。

2、 根据权利要求l所述的基于FLASH总线的SD卡控制电路,其特征是:所述FLASH总 线的DATAO- DATA3与SD总线中的SD—DATAO-SD—DATA3分别对应,并将FLASH总线的DATA4 与SD总线中的SD—CMD线对应。

3、 一种权利i求l所述基于FLASH总线的SD卡控制电路的读写方法,其特征是:它的 方法为, _1) 处理器等待表示FLASH总线空闲的互斥信号量,互斥信号量空闲时,置低^!"信号, 使SD卡读写控制电路处于选通状态,表示SD卡读写控制电路占用FLASH总线,处理器和 SD卡读写控制电路之间进行数据交换;2) SD卡通过数据线SD一DATAO陽SD—DATA3、命令线SD—CMD和主机交换数据;3) SD卡和主机数据交g结束后,i高s"5^?信号,^SD卡读写控制电路处于非选通状 态,释放互斥信号量,让出FLASH总线,供其?也设备使用。

4、 根据权利要求3所述的基于FLASH总线的SD卡控制电路的读写方法,其特征是:所 述步骤2)中,SC卡和主机交换数据包括:主机向SD卡写命令和SD卡向主机回应命令响应以及主机向SD卡写数据和主机从SD卡 读取数据;SD卡上电后,处于卡识别状态,等待74个以上的时钟周期,然后主机向SD卡发送一系 列命令,SD卡在正确响应这些命令后进入数据传输状态;在数据传输状态,主机向SD卡发送读或者写数据命令,在得到正确的命令响应后,主机 从SD卡读取数据或者向SD卡写入数据。

5、 根据权利要求4所述的基于FLASH总线的SD卡控制电路的读写方法,其特征是:所 述主机向SD卡写命令的方法为,主机通过循环的方式将命令序列的数据写到SD卡中,每次 循环主机写一个命令字节的数据到SD卡中;(1) 、设置已写命令字节计数器i为O;(2) 、将命令序列的第i个字节写到SD卡中;(3) 、如果命令序列的所有命令字节都已经写到SD卡中了,即为命令发送完毕,否则将 已写命令字节计数器i的值加1,返回步骤(2);命令发送完毕后,判断是否得到SD卡正确 的命令回应;如果得到正确的回应,则执行步骤(4);如果没有得到正确的回应,则一直等 待正确的命令回应,直到等待回应超时,执行步骤(4);(4) 、置高S"5^"信号,使SD卡读写控制电路处于非选通状态,释放互斥信号量,退出。

6、 根据权利要求5所述的基于FLASH总线的SD卡控制电路的读写方法,其特征是:所 述步骤(2)将命令序列的第i个字节写到SD卡中的方法为,a、 设置计数器w的值为8;b、 判断W的值:如果计数器W等于O,执行步骤d;如果计数器W大于O,表示命令 字节还没有被完全写到SD卡中,判断命令字节的第w位的值;如果第w位是0,则主机将 数据OxEF写到FLASH数据总线上,进而通过与FLASH总线DATA4相对应的SD—CMD线将0写到SD卡中;如果第w位是l,则主机将数据OxFF写到FLASH数据总线上,进而通过与FLASH 总线DATA4相对应的SD—CMD线将1写到SD卡中;c、 将计数器w的值减l,执行步骤b;d、 命令字节已经被完全写到SD卡中,返回。

7、 根据权利要求4所述的基于FLASH总线的SD卡控制电路的读写方法,其特征是:所 述主机写入数据时,主机利用循环的方式将规定长度的数据写到SD卡中,每次循环主机将一 个字节的数据写到SD卡中,将一个字节写入SD卡的方法为:首先,主机将数据字节data的高4位存放到变量tmpl中,将数据字节的低4位存放到 变量tmp2中;其次,主机将tmpl、 tmp2的值依次写到FLASH数据总线的DATAO-DATA3上,进而通过 相应的SD卡数据线SD—DATAO- SD一DATA3将数据写到SD卡中;至此,单字节数据data的值 就被写到SD卡中了。

8、 根据权利要求4所述的基于FLASH总线的SD卡控制电路的读写方法,其特征是:所 述主机从SD卡读数据时,主机通过循环的方式从SD卡读取规定长度的数据,每次循环主机 从SD卡读取一个字节的数据,主机从SD卡读取一个字节数据的方法为:首先,主机从FLASH数据总线读取一个字节的数据存放到变量tmpl中; 其次,主机再从FLASH数据线读取一个字节的数据存放到变量tmp2中; 再次,将tmpl与OxOF相与,将得到的结果左移4位后赋给变量data,将tmp2与OxOF相与,将得到的结果与data相加,再将相加得到的结果赋给data, data即主机从SD卡读取的一个字节的数据。

说明书 :

基于FLASH总线的SD卡控制电路及其读写方法

技术领域

本发明涉及一种SD卡控制电路,尤其涉及一种基于FLASH总线的SD卡控制电路及其读 写方法。 背景技术
SD卡(Secure Digital Memory Card)是一种基于半导体快闪记忆器的新一代记忆设备。SD 卡由日本松下、东芝及美国SanDisk公司于1999年8月共同开发研制。大小犹如一张邮票的 SD记忆卡,重量只有2克,但SD卡却拥有高记忆容量、快速数据传输率、极大的移动灵活 性以及很好的安全性。
SD卡具备串行和随机存取能力,可通过优化速度的串行接口访问,数据传输可靠。因此 Secure Digital这个命名就有"安全数码"的意思。SD卡通过9Pin接口与相应读写设备连接,由 于采用NAND闪存介质而不易损坏,读写数据、格式化都比较方便,被MP3、数码相机、游 双t几,乡禾中i5:^r""^2,ffl o
现阶段SD卡的扩^存储电路主要的实现形式分为以下三种:
a) 使用独立的SD卡控制芯片
这种形式,是使用专用的SD卡控制芯片作为独立的SD卡控制器,独立承担对SD卡的 读写等所有控制,并通过系统的并行或串行总线与处理器连接实现处理器对SD卡数据的读 取和存储操作。
由于使用了 SD卡的专用控制芯片,这种通过硬件产生和控制读写时序的实现方式可以 有较高的存取速度,且宜于程序的实现,适用于对于数据存取的速度要求较高的场合。但 由于该种实现方式增加了独立的控制芯片,必然造成产品成本的上升和PCB面积的增加。 对于对成本和PC3面积控制要求较严格的方案这种形式的实现方法就显得有些力不从心。
同时这种设计形式所采用的方案在兼容性方面也有一定的问题。对于使用同一厂家同 系列的SD卡控制芯片,IC芯片管脚兼容的设计还可以保证PCB的通用性,但产品仍然会受 到货源和产品更新等因素的影响。而一旦需要更改其它的SD卡控制IC,则原理图、PCB都 要做重新的设计,这必然造成设计生产上的重复劳动,间接的造成的产品成本的增加。
b) 主处理器集成SD卡控制器
主处理器集成SD卡控制器,多出现于某类产品的专用芯片。这里芯片所对应的产品主 要是使用SD卡等便携式内存的领域。SD卡在这一类产品上的大量使用,使得处理器集成 SD卡控制器成为了一个必不可少的手段,选用集成SD卡控制器的处理器也成为这类产品 控制成本的一个措施。
虽然相对于分离的SD卡控制器扩展方案,这一类SD卡的扩展方案有了一定的成本优 势,而且集成SD控制器相对于没有该功能的同类产品也成为了一个买点。但是由于芯片中 集成了SD卡控制器,其成本和售价必然有一定的提升。同时由于集成了SD卡控制器,使 得芯片设计的难度增加和芯片的稳定性也会受到影响。
c) 使用GPIO 口来控制SD卡
这种方案多使用在低成本的方案中。程序使用通用的可编程10 口来模拟SD卡的SD总 线或SPI总线来实现SD卡的读写控制。这类方案由于使用了速度较低的IO 口,实用价值不 高,仅仅是使用在某些低速应用中。随着闪存工艺的不断提髙和改进,SD卡的容量不断的 增大,这种低速的SD卡方案会变得越来越不实用,而逐渐被淘汰。
以上的实现形式或者在成本上不占优势,或者在速度上受到制约,或者在兼容性上有 所欠缺。 发明内容
本发明的目的就是为了解决目前SD卡控制电路成本较高,兼容性差等问题,提供一种具有结构简单,成本较低,高速兼容性好等优点的基于FLASH总线的SD卡控制电路及其读写方 法。
为实现上述目的,本发明采用如下技术方案:
一种基于FLASH总线的SD卡控制电路,它包括处理器,处理器与存储器连接,同时处理 器通过FLASH总线与SD卡读写控制电路、NOR FLASH电路连接,处理器的CS0、 §5^§"端分 别为NOR FLASH的片选信号端和SD卡读写控制电路的片选信号端,并与NOR FLASH的片选 信号端和SD卡读写控制电路的片选信号端连接;
所述SD卡读写控制电路包括SD卡连接器CON2、八双向总线收发器Ul和二输入四与门 电路U2;
其中FLASH总线的DATA0-DATA4端连接至Ul的A 口, SD卡的SD总线中的,线 SD—DATAO-SD_DATA3、命令线SD—CMD连接至Ul的B 口; FLASH总线上的读使能信号UT端 _^[妾至Ul的方向!择管脚DIR; SD卡读写控制电路使能信号端连接至Ul的片选管脚 "5T;写使能信号WL读使能信号"5T经过与门电路U2产生SD总线中的SD—CLK信号,U2 的SD一CLK信号端接SD卡连接器CON2的SCLK/CLK端。
戶^述FLASH总线的DATAO- DATA3与SD总线中的SD—DATAO- SD—DATA3分别对应,并将 FLASH总线的DATA4与5D总线中的SD—CMD线对应。
一种基于FLASH总线的SD卡控制^路的读写方法,它的方法为, _
1) 处理器等待表示FLASH总线空闲的互斥信号量,互斥信号量空闲时,置低15^T信号, 使SD卡读写控制电路处于选通状态,表示SD卡读写控制电路占用FLASH总线,处理器和 SD卡读写控制电路之间进行数据交换;
2) SD卡通过数据线SD—DATAO-SD—DATA3、命令线SD—CMD和主机交换数据;
3) SD卡和主机数据交g结束后,i高^I己信号,^SD卡读写控制电路处于非选通状 态,释放互斥信号量,让出FLASH总线,供其?也设备使用。
所述步骤2)中,SD卡和主机交换数据包括:
主机向SD卡写命令和SD卡向主机回应命令响应以及主机向SD卡写数据和主机从SD卡 读取数据;
SD卡上电后,处于卡识别状态,等待74个以上的时钟周期,然后主机向SD卡发送一系 列命令,SD卡在正确响应这些命令后进入数据传输状态;
在数据传输状态,主机向SD卡发送读或者写数据命令,在得到正确的命令响应后,主机 从SD卡读取数据或者向SD卡写入数据。
所述主机向SD卡写命令的方法为,主机通过循环的方式将命令序列的数据写到SD卡中, 每次循环主机写一个命令字节的数据到SD卡中;
(1) 、设置已写命令字节计数器i为O;
(2) 、将命令序列的第i个字节写到SD卡中;
(3) 、如果命令序列的所有命令字节都己经写到SD卡中了,即为命令发送完毕,否则将 己写命令字节计数器i的值加l,返回步骤(2);命令发送完毕后,判断是否得到SD卡正确 的命令回应;如果得到正确的回应,则执行步骤(4);如果没有得到正确的回应,则一直等 待正确的命令回应,直到等待回应超时,执行步骤(4);
(4) 、置高SD—CS信号,使SD卡控制电路处于非选通状态,释放互斥信号量,退出。 所述步骤(2)将命令序列的第i个字节写到SD卡中的方法为,
a、 设置计数器w的值为8;
b、 判断W的值:如果计数器W等于O,执行步骤4);如果计数器W大于O,表示命令
字节还没有被完全写到SD卡中,判断命令字节的第w位的值;如果第w位是0,则主机将 数据OxEF写到FLASH数据总线上,进而通过与FLASH总线DATA4相对应的SD_CMD线将0 写到SD卡中;如果第w位是l,则主机将数据OxFF写到FLASH数据总线上,进而i过与FLASH
5总线DATA4相对应的SD一CMD线将1写到SD卡中;
c、 将计数器w的值减l,执行步骤b;
d、 命令字节已经被完全写到SD卡中,返回。
所述主机写入数据时,主机利用循环的方式将规定长度的数据写到SD卡中,每次循环主 机将一个字节的数据写到SD卡中,将一个字节写入SD卡的方法为:
首先,主机将数据字节data的高4位存放到变量tmpl中,将数据字节的低4位存放到 变量tmp2中;
其次,主机将tmpl、 tmp2的值依次写到FLASH数据总线的DATAO-DATA3上,进而通过 相应的SD卡数据线SD—DATAO- SD—DATA3将数据写到SD卡中;至此,单字节数据data的值 就被写到SD卡中了。
所述主机从SD卡读数据时,主机通过循环的方式从SD卡读取规定长度的数据,每次循 环主机从SD卡读取一个字节的数据,主机从SD卡读取一个字节数据的方法为: 首先,主机从FLASH数据总线读取一个字节的数据存放到变量tmpl中; 其次,主机再从FLASH数据线读取一个字节的数据存放到变量tmp2中; 再次,将tmpl与0x0F相与,将得到的结果左移4位后赋给变量data,将tmp2与0x0F 相与,将得到的结果与data相加,再将相加得到的结果赋给data, data即主机从SD卡读取 的一个字节的数据。
本发明通过读写信号的逻辑配合及对FLASH总线的合理控制实现了对SD卡的SD读写模 式的模拟。同时利用RASH总线高速度、易于程序控制的特点有效的提高了 SD卡的传输速度。 这种电路拥有极强的通用性,由于FLASH存储器的种种优势,使其已经被绝大多数嵌入式的 处理器所支持。FLASH总线已经成为了嵌入式处理器的标准配置,所以该基于FLASH总线的 SD卡读写控制电路可以在任何具有FLASH总线的方案中使用,而不必受限于主芯片是否集成 SD卡控制器,也不必增加相应的SD卡控制芯片,仅仅通过一个单与门电路和一片74HC245 双向总线驱动器及少量的电阻电容,就可以实现高速的SD卡存取功能。
本发明的有益效果是:通过软硬件结合的方式实现了在低成本的情况下对SD卡读写控制 电路,并实现了对SD卡的高速读写控制。该电路具有很强的通用性和兼容性。可以适用于任 何使用NOR FLASH总线(以下简称FLASH总线)的处理器,使其通过简单的修改便可以实现SD 卡的高速读写及控制。相对于传统的SD卡设备的扩展方式,其不仅具有成本低廉,通用性强, 传输速度高等优点,而且具有可靠性高,易于程序实现等优点。 附图说明
图l为本发明的结构框图;
图2为SD卡读写控制电路图;
图3为SD卡命令序列传输框图;
图4为主机向SD卡写单个字节的操作框图;
图5为从SD卡读取单个字节的操作框图;
图6为向SD卡写入单个字节的操作框图。
其中,1.存储器,2.处理器,3. NOR FLASH电路,4. FLASH总线,5.SD卡读写控制电路。

具体实施方式

下面结合附图与实施对本发明作进一步说明。
图1中,本发明包括处理器2,处理器2与存储器1连接,同时处理器2通过FLASH总 线4与SD卡读写控制电路和NOR FLASH电路3连接,处理器2的CS0, §5^分别为NOR FLASH 的片选信号端和SD卡读写控制电路5的片选信号端,并与NOR FLASH S]片选信号端和SD卡 读写控制电路5连接。
图2中,SD卡读写控制电路包括SD卡连接器C0N2、八双向总线收发器Ul和二输入四 与门电路U2,其中FLASH总线的DATA0-DATA4连接至Ul的A 口 , SD卡的SD总线中的数据
6线SD—DATA0-SD—DATA3、命令线SD—CMD连接至Ul的B 口; FLASH总线上的读使能i信号
'(低S平有效)连接至ui的方向ii^,脚DIR; SD卡电路使能信号s^i"连接至Ul的片选 管脚"5T(低电平有效);写使能信号Wi (低电平有效)、读使能信号i(低电平有效)经过
与门U2产生SD总线中的SD—CLK信号,并与SD卡连接器CON2的SCLK/CLK端连接。
所述Ul电路在系统需要;寸SD卡进行操作时,SD卡片选信号^T置低,使能U1;当
不操作SD卡时,则SD卡的片选信号"^T置高,U1的A、 B口处手高阻态,不会对SD卡
和FLASH总线造成影响— —
如果是写入操作则5T信号置高而^I信号置低,数据的传输方向由于Ul的DIR引脚置
高的缘故被设定为A 口一B 口,即FLASH总线一SD总线,FLASH总线上的数据或命令可以被
传送到SD总线上; — —
如果是读取操作,则"5T信号置低而W1信号置高,U1的DIR引脚被置低,数据的传输
方向被设定为B 口一A 口,即SD总线一FLASH总线,SD总线上的数据或响应则可以被传送到
FLASH总线上。
所述FLASH总线中的DATA0-3与SD总线中的SD_DATA0-3分别对应,并将FLASH总线的 DATA4与SD总线中的SD—CMD线对应。
—U2在,^各中起到产^SD总线的CLK信号作用。由于FLASH总线上对数据的读、写操作 UT信号或W"E信号都为上升沿数据保持有效,而在SD总线上的数据(SD_DATA0-3)或命令 (SD_CMD)也是在CLK上升沿时保持数据有效,因此,只需将"^与WI^号相与,就可以 保证^数据的读操作和写操作时CLK完全兼容SD模式的CLK时序,始终保持上升沿数据有效。
当SD卡控制电路处于选通状态时,如果进行读SD卡操^_(含读取数据禾,取命令响应), 则在读取数据开始时处理器置低"5!信号(低有效),置高W"E信号,由于^信号为低,所 以Ul的方向为从B 口到A 口,即方向为:从SD卡数据总线SD—DATA3-0 (或命令线CMD) 到FLASH数据总线DATA3-0 (或数据线DATA4), SD卡数据总线上输出的4位有效数据(或命 令线^ l位命令响应),被H由SD总线传送至FLASH总线,并被主处理器读取,读取结 束后^F从低跳变至高,至此"5T信号经过U2形成一个CLK波形(WE始终为高),SD准备下 一个4位数据(或l位命令响应)的输出。从而完成SD卡4位数据(或l位命令响应)的读 操作^理,如果进行写SD,作(含写入数据和写入命令),则在写入数据开始时处理器 置低We信号(低有效),置高"5I信号,由于"5I信号为高,所以U1的方向为从a口到b口, 即方向为:从FLASH数据总线DATA3-0 (或数据线DATA4)到SD卡数据总线SD—DATA3-0 (或 命令线CMD), FLASH总线上输出的4位有效数据(或1—竺命令),被Ul由FLASH总线传送 至SD总线,当写入数据时,在_^_据保持有效的情况下,^"E信号从低跳变至高,至此W"E信 号经过U2形成一个CLK波形("^I始终为高),将4位数据(或l位命令)写入SD卡,从而 完成SD卡4位数据(或l位命令)的写操作。
当SD卡控制电路处于非选通状态时,数据总线DATA3-0和SD卡总线SD_DATA3-0处于非 连通状态,对^D卡,SD总线由于上拉电阻的缘故处于高电平,在^_50卡》万在地址的内容 时,处理器的"5F信号在读取开始和读,束时分别被置低和置高,"5I信号经过与门U2能 够产生SD总线上的一个SD—CLK信号(Wi始终为高),该CLK信号可以作为SD卡读写的延 时时钟,从而完成某些必要S]时钟延时操作。
基于图l、图2所示的硬件连接方式,本发明的软件控制方法为: _
a) 处理器等待表示FLASH总线空闲的互斥信号量,信号量空闲时,置低"i5^"s信号,使 SD卡控制电路处于选通状态,表示SD卡控制电路占用FLASH总线,处理器和SD卡控制电路 之间可以进行数据交换; _
b) SD卡通过数据线SD—DATAO-SD—DATA3、命令线SD一CMD和主机交换数据;
c) SD卡和主机数据交g结束后,i高I5^"信号,isD卡控制电路处于非选通状态, 释放互斥信号量,让出FLASH总线,供其f也设备使用。说明1.步骤b)中所述的SD卡和主机交换数据包括:主机向SD卡写命令和SD卡向主 机回应命令响应以及主机向SD卡写数据和主机从SD卡读取数据;
SD卡上电后,处于卡识别状态,等待74个以上的时钟周期,然后主机向SD卡发送一系 列命令,SD卡在正确响应这些命令后进入数据传输状态;
在数据传输状态,主机向SD卡发送读或者写数据命令,在得到正确的命令响应后,主机 从SD卡读取或者向SD卡写入数据。
说明2.根据说明1所述的主机向SD卡写命令,其方法为:主机通过循环的方式将命令 序列数据写到SD卡中,如图3所示:
1) 、等待信号量,信号量空闲时,置低^11言号,选通SD卡控制电路;
2) 、设置己写命令字节计数器i为O;
3) 、将命令序列的第i个字节写到SD卡中;
4) 、如果命令序列的所有命令字节都己经写到SD卡中了,即为命令发送完毕,否则将已 写命令字节计数器i的值加l,返回步骤3)。命令发送完毕后,判断是否得到SD卡正确的命 令回应;如果得到正确的回应,则执行步骤5);如果没有得到正确的回应,则一直等待正确 的命令回应,直到等待回应超时,执行步骤5);
5) 、置高^5^信号,使SD卡控制电路处于非选通状态,释放互斥信号量,退出。 说明3.根据说明2所述的主机通过循环的方式将命令序列数据写到SD卡中,其方法为:
每次循环主机写一个命令字节数据到SD卡中,如图4所示:
1) 、设置计数器W的值为8;
2) 、判断W的值:如果计数器W等于O,执行步骤4);如果计数器W大于O,表示命令 字节还没有被完全写到SD卡中,判断命令字节的第w位的值。如果第w位是0,则主机将 数据0xEF写到FLASH数据总线上,进而通过与FLASH总线DATA4相对应的SD_CMD线将0 写到SD卡中;如果第w位是1,则主机将数据OxFF写到FLASH数据总线上,进而i过与FLASH 总线DATA4相对应的SD_CMD线将1写到SD卡中;
3) 、将计数器w的i减l,执行步骤2);
4) 、命令字节己经被完全写到SD卡中,返回。
说明4.根据说明1所述的主机从SD卡读数据,其方法为:主机通过循环的方式从SD 卡读取规定长度的数据,每次循环主机从SD卡读取一个字节的数据,主机从SD卡读取一个 字节数据的方法,如图5所示:
1) 、主机从FLASH数据总线读取一个字节的数据存放到变量tmpl中;
2) 、主机再从FLASH数据总线读取一个字节的数据存放到变量tmp2中;
3) 、将tmpl与0x0F相与,将得到的结果左移4位后赋给变量data,将tmp2与0x0F相 与,将得到的结果与data相加,再将相加得到的结果赋给data, data即主机从SD卡读取的 一个字节的数据。
说明5.根据说明1所述的主机将数据写入到SD卡,其方法为:主机利用循环的方式将 规定长度的数据写到SD卡中,每次循环主机将一个字节的数据写到SD卡中,将一个字节写 入SD卡的方法,如图6所示:
1) 、主机将数据字节data的高4位存放到变量tmpl中,将数据字节的低4位存放到变 量tmp2中;
2) 、主机将tmpl、 tmp2的值依次写到FLASH数据总线的DATA0-3上,进而通过相应的 SD卡数据线SD_DATA0-3将数据写到SD卡中;至此,单字节数据data的值就被写到SD卡中 了。