OpenEdv-开源电子网

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

求助关于SD卡检测问题!!!

[复制链接]

3

主题

6

帖子

0

精华

新手上路

积分
46
金钱
46
注册时间
2014-4-17
在线时间
1 小时
发表于 2014-4-17 23:57:27 | 显示全部楼层 |阅读模式
移植了原子哥的一个SD卡的驱动程序(就改了CS输出引脚为PB7)!但是在卡的检测时检测不准!有谁遇到同样的问题吗?
retry=20;
do
{
    r1=SD_SendCmd(CMD0,0,0x95);//进入IDLE状态
    for(i=10;i>0;i--);
}while((r1!=0X01) && retry--);
 SD_Type=0;//默认无卡
retry=20;这个参数设置成20时有卡时检测是正常的!但是没卡的有时候会检测到有卡?20时串口打出来的数据如下:


我把这个值设为1的时什么检测都正常了,但是我见网上很多代码这个值都是200,但是我设为200串口直接没数据发出了,请问原子哥这是怎么回事呢?



主函数是我是这样写:
int main(void)
{  
u32 sd_size;
USART_init(9600);
while(SD_Initialize())//检测不到SD卡
{
printf("\r\nSD Card Failed!");
printf("\r\nPlease Check!  ");
}
printf("\n\rSD Card Checked OK ");//检测SD卡成功    
sd_size=SD_GetSectorCount();//得到扇区数
sd_size=sd_size>>11;//扇区数*512Kb/1024/1024=扇区数>>11
printf("\n\rSD Card Size: %dMb\n\r",sd_size);
}

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

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2014-4-18 08:38:47 | 显示全部楼层
回复【楼主位】hwwlyl:
---------------------------------
我的是300,照样正常
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165475
金钱
165475
注册时间
2010-12-1
在线时间
2115 小时
发表于 2014-4-18 20:24:26 | 显示全部楼层
1的时候,兴许你就没进入IDLE了,反正也就一次,后续可能发送指令,你的SD卡也识别到了。
设置为1的时候,你多测试几次看看吧(按复位)。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

3

主题

6

帖子

0

精华

新手上路

积分
46
金钱
46
注册时间
2014-4-17
在线时间
1 小时
 楼主| 发表于 2014-4-18 20:44:18 | 显示全部楼层
回复【3楼】正点原子:
恩恩谢谢原子哥!
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-5-10 05:52

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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