找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4267|回复: 4
打印 上一主题 下一主题
收起左侧

sd卡中的命令ACMD41参数问题

[复制链接]
跳转到指定楼层
楼主
ID:489652 发表于 2019-12-9 13:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1黑币
       //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代表什么?

最佳答案

查看完整内容

这个问题也困扰了我很久,不知道贴主是否已经解决了,我刚看了正点原子SD卡资料文件夹里的“”SD卡资料.pdf“”找到了关于ACMD41和OCR寄存器有关部分,由于我不会发图片,但我可以告诉你们在哪里可以找到,打开原子哥给我的SD卡资料文件夹,找到SD卡资料.pdf,在第76 / 121页(我用的是福晰阅读器),可以看到,CMD命令表,找到ACMD41命令,可以看到ACMD41指令的参数应该填OCR寄存器的值,0x80100000根据OCR寄存器介绍就可以知道,第 ...
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

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

使用道具 举报

板凳
ID:258483 发表于 2020-3-19 16:53 | 只看该作者
你猜我猜不猜123 发表于 2020-3-19 16:38
这个问题也困扰了我很久,不知道贴主是否已经解决了,我刚看了正点原子SD卡资料文件夹里的“”SD卡资料.pdf ...

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

使用道具 举报

地板
ID:258483 发表于 2020-3-19 16:54 | 只看该作者
还有MMC卡的那个0x80FF8000在哪可以找到,也可以问我
回复

使用道具 举报

5#
ID:336232 发表于 2020-7-6 19:05 | 只看该作者
你猜我猜不猜123 发表于 2020-3-19 16:54
还有MMC卡的那个0x80FF8000在哪可以找到,也可以问我

MMC卡的0x80FF8000在哪里找到位表述呢
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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