你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

SPI操作SD卡,CMD0无响应

[复制链接]
qianfan 提问时间:2015-3-28 15:31 /
使用STM32的SPI模式0操作SD卡,但是发送CMD0没有响应,一直回应0XFF。有人遇到过这种情况吗?

操作过程:

1. 设置SPI时钟分频256.
2.CS引脚置1.
3.发送10个0xFF。

4.CS引脚拉低。
5.发送0X40,  0X00,0X00,0X00,0X00,  0X95
6.读取MISO引脚数值,发现一直是0XFF。
7.CS置1.


收藏 评论13 发布时间:2015-3-28 15:31

举报

13个回答
qianfan 回答时间:2015-3-28 17:06:31
本帖最后由 QianFan 于 2015-3-28 17:07 编辑

折腾了一天,终于明白是怎么回事了。之前玩arduino的时候,买了一个网口的扩展版,上面自带一个SD小卡的卡槽,看板子上写着兼容MEGE,一开始没怎么注意,后来发现这些没注意的细节浪费了整整一下午的时间。


以为是时序的问题,但是用逻辑分析仪分析确实没有什么问题,但是CMD0一直没有应答。无心插柳,访问Arduino官网,看到了mege的引脚之后才恍然大悟。请看图。图是我从淘宝上扒的,把图片上商家的广告擦去了,有点难看,大家就将就吧。


131211.png
这一张是正面图,Arduino一般来说13,12,11是SPI的引脚,我想当然的以为SD卡也是使用了这三个引脚。当插入Nucleo之后也是使用13,12,11三个引脚来操作。万恶的bug正是从这里出来的。其实SD SPI的接口并不是这三个,而是下图那奇葩的地方。


下面这一张是背面图。
505152.png
图中圈出的地方是SD卡的接口部分,也是mege2560 SPI的默认引脚。当然,这个引脚在Nucleo上面是没有的。所以不管时序对还是不对,肯定是没有结果的。




虽然Nucleo兼容了Arduino的硬件接口,但是希望大家之后再为Nucleo挑选Arduino扩展版的时候注意一下,不要像我这样劳民伤财。


好了,不说了,我先去哭会。。。




nocoyou 回答时间:2015-3-28 19:22:44
................
wamcncn 回答时间:2015-3-28 20:05:52
哭吧,泪干了 ,还得继续
拼命三郎 回答时间:2015-3-28 21:51:35
顶顶顶顶顶顶顶顶顶大大大.jpg
kqh1120 回答时间:2015-3-29 10:42:24
学习了啊 smile.gif
qianfan 回答时间:2015-3-29 10:42:28
wambob 发表于 2015-3-28 20:05
哭吧,泪干了 ,还得继续

人生总是这么精彩。。。
MouseCat 回答时间:2015-3-30 08:49:25
贱人就是矫情
xieyixieyi81093 回答时间:2015-3-30 09:00:07
男人哭吧哭吧,不是罪。
chaplin1999-262 回答时间:2015-3-30 09:59:47
有时候就是大意了!
qianfan 回答时间:2015-3-30 12:42:32

还能不能愉快的玩耍了
MouseCat 回答时间:2015-3-30 13:34:40
QianFan 发表于 2015-3-30 12:42
还能不能愉快的玩耍了
“好了,不说了,我先去哭会。。。”

哈哈,玩的很愉快
qianfan 回答时间:2015-3-30 14:16:30
MouseCat 发表于 2015-3-30 13:34
“好了,不说了,我先去哭会。。。”

哈哈,玩的很愉快

明天有活动,知道吗?
MouseCat 回答时间:2015-3-31 08:44:51
QianFan 发表于 2015-3-30 14:16
明天有活动,知道吗?

知道,但是数量很少,估计很给抢到

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版