- 3
- 0
- 约9.92千字
- 约 10页
- 2019-01-29 发布于安徽
- 举报
.
..
单片机读写SD卡最简单最基本的程序
处理器:s3c44b0 (arm7)
SD卡与处理器的引脚连接:MISO --SIORxD?? MOSI --SIOTxD?? CLK --SCLK?? CS --PE5
四个文件:sd_drive.c :用户API函数,移植时不需修改
???????????????????????? sd_cmd.c:中间层函数,移植时不需修改
???????????????????????? sd_hard.c:硬件层函数,移植时需修改
???????????????????????? sd_config.h:一些功能的宏定义,移植时需修改
第一次读写SD卡时,需调用SD_Init(void),然后就可以条用 Read_Single_Block或者Write_Single_Block进行读写操作
注意:进行写操作时,最好不要写前700个扇区,应为这些扇区都是FAT文件系统的重要扇区,一旦误写则可能会导致SD无法被电脑识别,需格式化。
/*******************************************************
文件名:sd_drive.c
作用:用户API函数,包括四个函数,
?????????? 读取一块扇区(512字节)U8 Read_Single_Block(U32 blk_addr, U8 *rx_buf)
?????????? 写一个扇区(512字节)U8 Write_Single_Block(U32 blk_addr, U8 *tx_buf)
?????????? 获取SD卡基本信息,即读CSD寄存器信息(16字节):void SD_info()
?????????? SD卡初始化:U8 SD_Init(void)
********************************************************/
/********************************************功能:读取一个block输入:blk_addr为第几个block,rx_buf为数据缓存区首地址输出:返回NO_ERR则成功,其它则读取失败********************************************/U8 Read_Single_Block(U32 blk_addr, U8 *rx_buf){U16 rsp = 1;U8 i = 0;SD_sel();????? //使能SD卡while(rsp (i 100)){?? write_cmd(CMD17, blk_addr 9); //写命令CMD17?? rsp = Get_rsp(R1);???? //获取答应?? send_clk();}if(i 99)????? //如果命令超时,则执行超时处理????? {?? SD_desel();?? Uart_Printf(fail in writing CMD17\n);?? return WR_SGL_BLK_ERR;}spi_ro_mode(); send_clk();???????? //发送8个clkread_data(rx_buf); //读取512字节SD_desel();???Uart_Printf(succeed in reading the %dst block!!!\n, blk_addr);return NO_ERR;}/********************************************功能:写一个block输入:blk_addr为要写第几个block,tx_buf为数据区输出:返回NO_ERR则成功,其它则读取失败********************************************/U8 Write_Single_Block(U32 blk_addr, U8 *tx_buf){U16 rsp = 1;U8 i = 0;SD_sel();????? //使能SD卡while(rsp (i 100)){?? write_cmd(CMD24, blk_addr 9); //写命令CMD24?? rsp = Get_rsp(R1);???? //获取答应?? send_clk();}if(i 99)????? //如果命令超时,则执行超时处理????? {?? SD_desel();?? Uart_Printf(fail in writing CMD17\n);?? return WR_SGL_BLK_ERR;}spi_ro_m
您可能关注的文档
最近下载
- 博林特电梯MPK708C调试-故障说明手册.pdf VIP
- 《锅炉》课后习题答案-西安交大版.pdf VIP
- 唐山中浩化工有限公司利用锅炉余压发电技改项目环境影响报告书(简本).doc VIP
- 二年级(下)语文1-4单元一课一练含答案.docx
- Cultural!Learning!Alliance!! (联盟文化!学习! ! !).pdf VIP
- 人教版2024~2025学年七年级上册数学核心素养全册教案.doc VIP
- 项目经理部穿透式管理实施细则.doc VIP
- 2025自动化工程师岗试题及答案.doc VIP
- DLT2617-2023 20kV配电线路带电作业技术规范.pdf VIP
- 18黄伯荣、廖序东《现代汉语》增订6版课件_第5章 语法 第八、九、十节.pptx VIP
原创力文档

文档评论(0)