打印
[STM32F1]

SPI总线通过CD4066怎么读不到SD卡

[复制链接]
1152|17
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
CD4066是双向模拟开关,号称18M以上,怎么SPI总线过它,读取不到TF卡呢?求解。
沙发
zchong| | 2015-9-16 08:05 | 只看该作者
示波器测一下波形看看呢
实在不行就降速,看看是否是器件速度不够

使用特权

评论回复
板凳
lin34337151|  楼主 | 2015-9-16 08:49 | 只看该作者
现在已经是256分频了,最慢了,在家调,没示波器。

使用特权

评论回复
地板
jjjkkk00| | 2015-9-16 09:30 | 只看该作者
改用IO口模拟SPI通讯(低速通讯),再查找问题原因。

使用特权

评论回复
5
comm2010| | 2015-9-16 11:31 | 只看该作者
两边的电平是否正常?

使用特权

评论回复
6
lin34337151|  楼主 | 2015-9-16 12:02 | 只看该作者
用万用表测,SPI  CS片选使能端过4066电压3.3V是对的,也没什么减小变化,测时钟,读TF卡的时候万用表测电压2.95V这个应该也是对的,万用表反映没那么快,不读的时候3.3/0V电压也正常。按4066手册,应该是双向的,没有问题啊。我目的是还有一个芯片,跟MCU共用TF卡槽,不想做两个卡槽,做两个卡槽用户容易搞错,两个芯片用两片4066隔开,试了把另外一个4066拿掉也是一样,不过4066就行。

使用特权

评论回复
7
lin34337151|  楼主 | 2015-9-16 22:06 | 只看该作者
测试发现,MCU向TF卡发送的数据,指令TF都能收到,TF发送数据,MCU收不到。我把  SPI_MISO (从设备输出,主设备输入)不过CD4066,其余3根线都过4066读取正常,如果SPI_MISO过4066就不能正常读取,我把SPI_MISO 过4066的方向换了一下,也是一样。奇怪。

使用特权

评论回复
8
戈卫东| | 2015-9-16 22:59 | 只看该作者
电路贴来看看?

使用特权

评论回复
9
lin34337151|  楼主 | 2015-9-17 09:37 | 只看该作者

TF卡槽想给两个芯片使用,通过4066来隔开,图应该没什么问题。STM32直接SPI口连接到4066,4066再到TF卡槽,昨天发现读卡的时候,先把TF卡槽数据输出端口(STM32的数据输入端口)不过4066,正常读,之后就可以读了。我用FATS文件格式读,这个一直在很多地方应用了,没问题。不清楚4066在开始读卡之前是否要把所有的4066口线置高还是怎样,感觉4066不像普通的导通特性,速度应该是没问题,昨天没时间了,有时间在研究一下。

使用特权

评论回复
10
布谷鸟2015| | 2015-9-17 20:41 | 只看该作者
没有东西,还是建议楼主多测测,这样发现问题原因的可能性也会大些。

使用特权

评论回复
11
迪卡| | 2015-9-17 20:56 | 只看该作者
SPI时序有问题吗

使用特权

评论回复
12
lin34337151|  楼主 | 2015-9-17 23:59 | 只看该作者
把TF卡数出数据到MCU的口线不过4066一切正常,应该是没问题,如果说速度有影响,时钟过的4066也没问题,开始读卡时,用镊子短路这个口线,之后能读,如果不短路怎么也读不到,想放弃这个方案,奇怪,难道TF卡向MCU发送数据有什么特别之处?

使用特权

评论回复
13
米尔豪斯| | 2015-9-18 19:16 | 只看该作者
用IO口模拟SPI吧,也挺方便的

使用特权

评论回复
14
lin34337151|  楼主 | 2015-9-18 21:32 | 只看该作者
另外一个芯片通过CD4066读TF卡的MP3播放一点问题都没有,不过它时序自动产生的,不需要我控制,按手CD4066册上说,应该是没问题的,这几天忙,有空好好研究一下.MCU过4066也是在读文件开始的时候失败,开始时短路一下TF数据口线,之后读取也正常。没搞清问题。

使用特权

评论回复
15
wahahaheihei| | 2015-9-18 22:34 | 只看该作者
楼主时序不对吧,根本没有实现通信。

使用特权

评论回复
16
lin34337151|  楼主 | 2015-9-18 23:16 | 只看该作者
时序不对的话,有一跟数据口线不过4066,都正常读取。

使用特权

评论回复
17
lin34337151|  楼主 | 2015-9-18 23:51 | 只看该作者
问题原因没找到,我的应用得到解决了,直接把一片4066的10,11脚短路,不影响我另外一个片子读卡,MCU也能正常读卡,就也就OK了,把时钟短路两个片子都不能读卡。多弄几个样板进行测试,没问题的话大家评估一下,应该OK吧。

使用特权

评论回复
18
仙女山| | 2015-9-21 14:05 | 只看该作者
不加cd4066就没问题吗?
用示波器看前后波形的变化

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

113

主题

285

帖子

3

粉丝