STM32F429 SD卡,NAND挂载FATFS问题

2019-07-20 04:17发布

我的开发板是阿波罗STM32F429 ,所有例程全部是寄存器版,并没有修改任何代码。
1. SD卡问题,例程是 实验39 SD卡实验 寄存器版。我SD卡是以前32M的老卡,用sdio能够初始化成功,并能够读出卡的容量。用sd_test_read(0,1) 能够读出数据,虽然最后2位数据是55 AA但感觉FAT表数据不对,但是用sd_test_read(1,1)就无法读出数据,卡在 SD_ReadBlocks函数的 “while(!(SDIO->STA&((1<<5)|(1<<1)|(1<<3)|(1<<8)|(1<<9))))//无上溢/CRC/超时/完成(标志)/起始位错误“  这个超时里,挂载FATFS也是卡在这里。
2. NAND FLSH问题,我用例程 实验53 USB读卡器(Slave)实验 寄存器版能够正常初始化NAND,并能够在电脑上读写NAND,用 实验41 FATFS实验,也能正常挂载NAND,串口命令回复:
mf_scan_files("2:")
2:/测试用文件
=0X0;

但是我在  实验56 USB U盘实验(Host) 中NAND初始化就失败无法挂载FATFS. 串口命令回复:
mf_scan_files("2:")bad block index:689
bad block index:945
format nand flash...
good_blocknum:2687
format failed!
=0X3;
其他的SPI FALSH和U盘HOST都挂载正常。

我想问下出现这些问题的大概原因是什么。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。