SPI方式驱动TF卡问题

2019-07-21 03:45发布

    用STM32的SPI方式驱动TF卡,TF卡是512M的,已经初始化成功:成功写入CMD0和CMD8(V2.0卡)和CMD55。。。
    在写入扇区数据的时候写入CMD24成功读到了0x0的回应,然后写入0xFE开始数据+512个数据+2个CRC,然后就是判断SD卡是否接收到了数据,这里始终读不到低5位是00101的情况,即(data&0x1F)==0x05。。。求指导,,,这是什么原因,,,TF卡用读卡器在电脑上可以正常操作,TF卡应该是没问题的。。。
     跳过写直接读扇区发送CMD17收到回应0x0的回应,然后收到0xFE起始数据,然后收到512的数据和2字节的CRC,这个没问题。。。
    写入的数据再读出来不对,估计是没有写进去。。。


这是写入扇区代码:


这是读取扇区代码:


求指导!!!!!!!!!!!!!!!


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
正点原子
1楼-- · 2019-07-21 05:43
 精彩回答 2  元偷偷看……
八度空间
2楼-- · 2019-07-21 05:55
回复【楼主位】yougen1314:
---------------------------------
我的TF卡是1G的,用原子哥的例程可以读写,上文件系统也没问题,你下载原子哥的例程下去看下能不能读取
yougen1314
3楼-- · 2019-07-21 07:04
回复【2楼】正点原子:
---------------------------------
意思是这个现象光从软件代码上找问题没有用???

好吧,我试试其它卡,谢谢原子哥。。。
正点原子
4楼-- · 2019-07-21 10:35
回复【4楼】yougen1314:
---------------------------------
先换个卡试试,你的代码貌似不是用的我们的,所以也不确定你的代码是否OK。
追破风的小石头
5楼-- · 2019-07-21 13:43
最近在倒腾16G的tf卡,已经移植到c8t6上面,直接飞线到mini开发板的sd卡槽下,通过大卡转接卡是可以识别到tf卡的,但是因为自己板子设计的是tf卡槽,初始化无论如何调试不通过,MOSI引脚一直高电平,但是用示波器测量sck,mosi等引脚全是没问题的,看了原子哥的回复,心凉了半截,难道必须要用sdio方式驱动?
SHUKANGKANG
6楼-- · 2019-07-21 19:08
 精彩回答 2  元偷偷看……

一周热门 更多>