OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5337|回复: 6

sd卡中的命令ACMD41参数问题

[复制链接]

9

主题

17

帖子

0

精华

初级会员

Rank: 2

积分
91
金钱
91
注册时间
2015-12-15
在线时间
20 小时
发表于 2016-1-1 21:52:48 | 显示全部楼层 |阅读模式
2金钱
[mw_shl_code=applescript,true]{                                                                                                                                  
                //SD卡,发送ACMD41 SD_APP_OP_COND,参数为:0x80100000
                while((!validvoltage)&&(count<SD_MAX_VOLT_TRIAL))
                {                                                                                             
                  SDIO_CmdInitStructure.SDIO_Argument = 0x00;//发送CMD55,短响应
      SDIO_CmdInitStructure.SDIO_CmdIndex = SD_CMD_APP_CMD;          //CMD55
      SDIO_CmdInitStructure.SDIO_Response = SDIO_Response_Short;
      SDIO_CmdInitStructure.SDIO_Wait = SDIO_Wait_No;
      SDIO_CmdInitStructure.SDIO_CPSM = SDIO_CPSM_Enable;
      SDIO_SendCommand(&SDIO_CmdInitStructure);                        //发送CMD55,短响应         
                       
                        errorstatus=CmdResp1Error(SD_CMD_APP_CMD);                  //等待R1响应  
                       
                        if(errorstatus!=SD_OK)return errorstatus;           //响应错误

      //acmd41,命令参数由支持的电压范围及HCS位组成,HCS位置一来区分卡是SDSc还是sdhc
      SDIO_CmdInitStructure.SDIO_Argument = SD_VOLTAGE_WINDOW_SD | SDType;        //发送ACMD41,短响应       
      SDIO_CmdInitStructure.SDIO_CmdIndex = SD_CMD_SD_APP_OP_COND;
      SDIO_CmdInitStructure.SDIO_Response = SDIO_Response_Short;  //r3
      SDIO_CmdInitStructure.SDIO_Wait = SDIO_Wait_No;
      SDIO_CmdInitStructure.SDIO_CPSM = SDIO_CPSM_Enable;
      SDIO_SendCommand(&SDIO_CmdInitStructure);[/mw_shl_code]
程序中的红色部位中的参数为什么是0x80100000   最高为不是保留位吗?1代表什么?

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165475
金钱
165475
注册时间
2010-12-1
在线时间
2115 小时
发表于 2017-5-12 00:54:11 | 显示全部楼层
回复

使用道具 举报

187

主题

324

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1123
金钱
1123
注册时间
2012-6-4
在线时间
120 小时
发表于 2017-12-4 19:03:41 | 显示全部楼层
我也觉得奇怪,sd卡协议.pdf里面明明说保留为必须为0,这里为什么要发送1??
回复

使用道具 举报

40

主题

137

帖子

0

精华

高级会员

Rank: 4

积分
579
金钱
579
注册时间
2019-8-4
在线时间
187 小时
发表于 2019-12-9 13:24:48 | 显示全部楼层
为什么了
回复

使用道具 举报

3

主题

7

帖子

0

精华

新手上路

积分
42
金钱
42
注册时间
2019-9-3
在线时间
10 小时
发表于 2020-3-19 16:10:39 | 显示全部楼层
本帖最后由 520hahaha 于 2020-3-19 16:38 编辑

这个问题也困扰了我很久,不知道贴主是否已经解决了,我刚看了正点原子SD卡资料文件夹里的“”SD卡资料.pdf“”找到了关于ACMD41和OCR寄存器有关部分,由于我不会发图片,但我可以告诉你们在哪里可以找到,打开原子哥给我的SD卡资料文件夹,找到SD卡资料.pdf,在第76 / 121页(我用的是福晰阅读器),可以看到,CMD命令表,找到ACMD41命令,可以看到ACMD41指令的参数应该填OCR寄存器的值,0x80100000根据OCR寄存器介绍就可以知道,第31位表已经上电,第15位表工作电压在2.7-2.8V,这个电压范围在CMD8命令时我们就确定了,这也是我的猜想
回复

使用道具 举报

3

主题

7

帖子

0

精华

新手上路

积分
42
金钱
42
注册时间
2019-9-3
在线时间
10 小时
发表于 2020-3-19 16:53:31 | 显示全部楼层
520hahaha 发表于 2020-3-19 16:10
这个问题也困扰了我很久,不知道贴主是否已经解决了,我刚看了正点原子SD卡资料文件夹里的“”SD卡资料.pdf ...

还有MMC卡的那个0x80FF8000在哪可以找到,也可以问我
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165475
金钱
165475
注册时间
2010-12-1
在线时间
2115 小时
发表于 2020-3-20 01:05:32 | 显示全部楼层
520hahaha 发表于 2020-3-19 16:10
这个问题也困扰了我很久,不知道贴主是否已经解决了,我刚看了正点原子SD卡资料文件夹里的“”SD卡资料.pdf ...

牛逼
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-3 17:19

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表