ImageVerifierCode 换一换
格式:DOC , 页数:8 ,大小:101KB ,
资源ID:3502299      下载积分:20 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-3502299.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(SD卡程序设计、流程及操作系统.doc)为本站会员(sk****8)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

SD卡程序设计、流程及操作系统.doc

1、 对 SD 卡进行操作首先要对 SD 卡进行初始化,初始化的过程中设置 SD 卡工作在 SPI 模式,其流程图如图 3 所示。在复位成功之后可以通过 CMD55 和 ACMD41 判断当前电压是否在工作范围内。主机还可以继续通过 CMD10 读取 SD 卡的 CID 寄存器,通过 CMD16 设置数据 Block 长度,通过 CMD9 读取卡的 CSD 寄存器。从 CSD 寄存器中,主机可获知卡容量,支持的命令集等重要参数。SD 卡初始化的 C 语言程序如下:unsigned char SD_Init(void) unsigned char retry,temp;unsigned char i

2、;for (i=0;i1; 2.io 口模拟 spi,实现数据读取,在初始化时使用unsigned char iodataread(void)unsigned char data,temp,b;data=0;temp=0;for (b=0;b100) break; WDR();/feed the dogreturn(temp);/the respone of the byte_write_operation 4.硬 spi 读数据unsigned char Read_Byte_SD(void) char Byte;/SD_Enable();SPDR=0xff; while(!(SPSR /fo

3、r some reason we need to delay here /delay_1ms(); return(tmp);/the respone of the byte_write_operation 7.初始化unsigned char SDInit(void) unsigned char a,b,retry,erroetoken; unsigned char CMD=0x40,0x00,0x00,0x00,0x00,0x95;/cmd0/ Set certain pins to inputs and others to outputs / Only SPI_DI (data in) i

4、s an input /SD_Direction_REG=ddrbSD_Direction_REG /return 0;/Send the 2nd command retry=0; CMD0=0x41; CMD5=0xFF; while(erroetoken=iocmd(CMD)!=0x00) WDR();if (retry+200) return 2; /Set the SPI bus to full speed SPCR=0x50; SPSR|=0x01;/Raise Chip Select SD_Disable(); return 0; 8.设置每次读的字节数char SD_set_le

5、ngth(unsigned int length) unsigned char retry; /Command to set the block length; char CMD=0x50,0x00,0x00,0x00,0x00,0xFF; /cmd16 CMD3=(length/ CMD4= (length while(Write_Command_SD(CMD)!=0)/ WDR(); if (retry+200) return 1; SD_Disable(); return 0; 9.write 512 bytes to a given sector from a Byte_byte_lo

6、ng Bufferunsigned char SD_write_sector(unsigned long addr,unsigned char *Buffer,unsigned int Bytes) unsigned int a; unsigned char retry,temp; /Command to read a block; char CMD=0x58,0x00,0x00,0x00,0x00,0xFF;/cmd24CMD1=(addr CMD2=(addr CMD3=(addr CMD4=(addr /Send the write command while(Write_Command

7、_SD(CMD)!=0) if (retry+50) return 1; /Send the start byte Write_Byte_SD(0xfe); /Read off all the bytes in the block for(a=0;a24); CMD2=(addr CMD3=(addr CMD4=(addr /Send the read command while(Write_Command_SD(CMD)!=0) WDR();/feed the dogif (retry+200) return 1; /Send the start byte while(Read_Byte_S

8、D()!=0xfe) WDR();/feed the dog /Read off all the bytes in the block for(a=0;a WDR();/feed the dog*Buffer=Read_Byte_SD(); /serial(*Buffer); Buffer+; /Read CRC byte Read_Byte_SD(); Read_Byte_SD(); / Set SD_Chip_Select to high SD_Disable(); /SEI(); /re-enable interrupts return 0; /*/read xx bytes no ma

9、tter of misalignment!*/unsigned char read_antimisaliment(unsigned long addr_temp,unsigned char *p_buffer, unsigned int length)unsigned int _length=0x0000;SD_Enable(); while(SD_read_sector(addr_temp,p_buffer,length)SD_Enable();/length-=0x0001;/to find a suuitable length to avoid misalignment_length+=0x0001;/ _length+length=xxSD_set_length(length); /if(_length=0x0000)return 0;/addr_temp+=length;SD_Enable();/SD_set_length(_length); SD_Enable();/while(SD_read_sector(addr_temp,p_buffer,_length)SD_Enable();SD_Enable();/SD_set_length(length+_length);/to read the rest bytes of the xx bytesreturn 0;

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。