51单片机SD卡SPI模式操作_1568

51单片机SD卡SPI模式操作_1568

ID:37859477

大小:26.50 KB

页数:3页

时间:2019-06-01

51单片机SD卡SPI模式操作_1568_第1页
51单片机SD卡SPI模式操作_1568_第2页
51单片机SD卡SPI模式操作_1568_第3页
资源描述:

《51单片机SD卡SPI模式操作_1568》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、【51单片机SD卡SPI模式操作】  摘要:sd卡有两种接口模式,一种是sd模式,另一种是spi模式。在spi模式下,有六根接口线与主机相连,5V电平的51单片机通过电平转换可与3.3V电平的sd卡相连接。51单片机没有专门的spi总线,可以用51单片机的IO口来模拟spi总结时序。主机与sd卡的数据交换主要通过命令来实现,通过发送cmd0命令对sd卡进行复位,发送命令cmd1实现sd卡的spi模式初始化。cmd17、cmd18命令是sd卡的读写扇区命令,对sd卡的操作是严格按照时序进行的。  关键词:s

2、d卡;spi接口;时序    sd卡以其大容量、低成本、携带方便、存储数据简单和安全可靠性高被大量应用于数码电子设备中,比如数码相机、数码摄像机、mp3、pda、电子学习机、电子图书等。对sd卡的操作有复位、初始化、读写等,下面以本人掌握的材料对sd卡的操作进行分析。    一、sd卡的结构  sd卡的外形与接口如图1,它有9个接点与主机相连,其接口端定义如表1所示。sd卡有两种操作模式,一种是sd模式,另一种是spi模式,不同模式下端口的定义不同。SD模式有一个时钟线、一个命令/反馈线、四根输入/输出信

3、号线、两个电源地和一个电源,所有九根线都有定义,数据传输速率较快。SPI模式只用到CS片选、数据输入、数据输出、时钟、电源地及电源六根线。SPI模式较SD模式速度较慢,但很多单片机都有专用的SPI总线,可与sd卡直接相连,使用方便。      SD卡的内部结构如图2所示,主要有四部分组成,一是接口电路,共有九个接口电路,定义如表1所示。二是接口控制电路,所有操作都由该控制电路具体去执行。三是内部寄存器组OCR、CID、RCA等。四是存储数据的存储单元。接口电路通过控制电路与内部寄存器组成存储单元交换数据,

4、其主要操作有写命令、读数据、写数据、读状态等。  二、sd卡的命令格式  sd卡的命令格式固定为6个字节48个位,其格式如图3所示。      开始位固定为0,第二位固定为1,表示主机给sd卡的命令,然后是6位命令索引号,索引号的大小与索引号数字相同,比如cmd0的索引号为000000,索引号41为101001。紧接着命令索引号是命令参数,有些命令有参数,有些命令没有参数,比如cmd0和cmd1命令参数为32个0,而命令cmd24、cmd17的命令参数是数据的读写地址。最后是7位CRC校验位和一位停止位1

5、。根据命令索引号可推知sd卡的命令最多不超过64个(有些命令索引号为保留以后升级用,没有实际的命令相对应),sd卡协议把卡的命令分为若干类,有些命令只有对sd模式起作用,有些命令只对spi模式起作用,大部分命令是通用的,两种模式下具有相同的命令。    三、51单片机与sd卡在spi模式下的连接  由于51单片机内部没有集成spi模块,使用51单片机与sd卡通讯要用51单片机的IO口模拟spi时序,原则上51单片机的P0、P1、P2、P3口的任意位都可以与sd卡相连,但由于P0与P2口常用于单片机的数据与

6、程序存储器扩展,而P3口又多用于第二功能,比如串行通讯、计数、外部中断等,实际上常用P1口与外部设备连接。第二个问题是接口电平的匹配,像at89s51等大多数单片机都是5v电平,而sd卡的电平是3.3v,超过3.6V的电压将可能烧坏sd卡,所以两者之间要进行电平转换。一种思路是用专用电平转换芯片,但代价较高,另一种是用分压的方式或降压的方式进行电平转换,转换电路如图4所示。  图4中左图是一个分压式电平转换电路,当输入是5V高电平时,经分压输入3.3V,当输入是0V低电平时,输出端仍然是0V低电平。图4中

7、右图是一二极管降压电路,当输入为5V时,经二极管降压,输出为3.3V,当输入为0V时,二极管截止,输出仍然是0V。两种转换电路都是单向转换,只能是从5V电平转换为3.3V电平。  单片机与sd卡的连接电路图为图5所示。由单片机到sd卡的信号需要5V电平到3.3V电平的转换,cs片选信号、sd卡的数据输入信号以及sclk时钟信号都进行了分压式电平转换,并且所有电路都加有上拉电阻。由sd卡到单片机的dout信号线直接接到了单片机的IO端口上,如果单片机不能确认3.3V为高电平,从sd卡到单片机的电路也需要进行

8、电平转换。    四、sd卡spi模式下操作时序  1.复位操作。sd卡进行正常读写前必须进行复位操作,复位操作的命令为cmd0,由0x40,0x00,0x00,0x00,  0x00,0x95组成,前两位固定为01索引号为000000,参数为32位0,CRC校验为1001010,结束位为1。进行sd卡操作必须满足严格的时序,其时序图为所6所示。复位操作由5个步骤组成,首先在片选信号cs为高电平时,发送至少74个时钟周期;第二

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。