mini2440SD卡读写驱动程序分析.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
mini2440SD卡读写驱动程序分析

mini2440SD卡读写驱动程序分析 断断续续的把2440test的sdi.c程序看完了,顺带着写上自己的注释,主要参考2440中文手册第19章SDI部分,还有SD卡读写规范,按照上面的一步一步来做,完成SD卡读取。 SD操作(这个是SD卡读取的核心思想,所有的工作都按照这个最高指示来进行) 串行时钟线同步在五根数据线上的信息移位和采样。传输频率通过设定 SDIPRE 寄存器的相应位的设定来控制。你可以修改频率来调节波特率数据寄存器值。 编程过程(普通) 对 SDI 模块编程,按以下基本步骤: (1)设置 SDICON 寄存器来配置适当的时钟及中断使能 (2)设置 SDIPRE 寄存器配置适当的值。 (3)等待 74个SDCLK 时钟以初始化卡。 CMD 路径编程 (1)写命令参数 32位到SDICmdArg (2)决定命令类型并通过设置 SDICmdCon开始命令传输 (3)当 SDICmdSta 的特殊标志被置位,确认 SDICMD 路径操作的结束。 (4)如果命令类型是不相应??标志是 CmdSent。 (5)如果命令类型是相应,标志是 RspFin。 (6)通过对相应位写 1,清除 SDICmdStaD的标志。 数据路径编程 (1)写数据超时期间到 SDIDTimer (2)写模块大小(模块长度)到 SDIBSize(通常是 0x80字) (3)确定模块模式,宽总线,DMA等且通过社子 SDIDatCon来开始数据传输 (4)发送数据-写数据到数据寄存器(SDIDAT),当发送 FIFO 有效(TFDET 置位),或一半(TFHalf置位),或空(TFEmpty置位)。 (5)接收数据-从数据寄存器(SDIDAT)读数据,当接收 FIFO 有效(RFDET 置位),或满(RFFull置位)。或一半(RFHalf置位),或准备最后数据(RFLast 置位)。 (6)当 SDIDatSta寄存器的 DatFin标志置位,确认SDIDAT路径操作结束。 (7)通过对相应位写 1,清除 SDIDatSta 的标志。 代码比较长,一篇日志贴不完,贴两篇。 下面先写一下我对SD_Card_Init()的理解。 在Test_SDI()中,先设置rGpEup(设置SD卡读取的波特率),---rGpECON(设置E口为特殊功能)---SD_Card_Init(),SD_Card_Init()中,设置rSDIPPE(预分频器)---字节序B型,SDCLK输出使能,SDIFIFO复位,模块大小设置为512byte,---再设置rSDIDTIMER(数据/忙定时寄存器),再等待74个SDCLK周期。---发送CMD0(),CMD0()的作用是使得卡处于IDLE状态,---chk_SD_OCR(),先发送CMD55(),表明下个命令为特殊命令ACMD,而不是普通的CMD。由ACMD41()协商SD卡读取电压范围。---发送CMD2()获取每一个卡的唯一标识CID号,---发送CMD3(),给卡分配RCA,---发送CMD7(),选中卡,使得卡处于传输状态,---发送ACMD6(),宽总线选择,选择传输位宽为1位或者4位。 至此,卡的初始化SD_Card_Init()完成。 下面贴上我自己注释的代码。 C CODE :mini2440的2440test程序中的SD卡读取程序注解(上)1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 1

文档评论(0)

zw4044 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档