|
1. sdcommand(0x01,0x00ffc0000,0xff); 改为 sdcommand(0x01,0x00ffc000,0xff); 你多了一个零。 2. for(i=0;i<9;i++) sdwrite(0xff); 改为 for(i=0;i<15;i++) sdwrite(0xff); 发74个以上时钟才稳妥。 3. 0x87和0x95不是区分卡大小的是USB2.0 还是1.0 啊 |
npn 发表于 2024-1-22 23:02 sdcommand(0x11,address,0xff);这句 CMD17命令 |
| 使用WinHex搜索这段数据: 3C ED FA 5B 95 DD 72 5B 3E E7 05 C6 E5 B9 B7 8F 看是否能找到。 |
|
你用什么指令读取的SD卡容量? 用逻辑分析仪检查下时序是否有错误,按照数据手册编写,随意编辑扇区可能会导致文件系统结构损坏。 |
| sdcommand(0x01,0x00ffc0000,0xff);好像初始化中这条指令有问题,response一直是1,挑不出while循环,怎么办??? |
| 反复测试 应该是卡在了初始化 sdcommand(0x01,0x00ffc0000,0xff);这个命令上,response一直是1,跳不出while循环,怎么办??? |