OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4242|回复: 3

STM32F429 SD卡,NAND挂载FATFS问题

[复制链接]

7

主题

65

帖子

2

精华

论坛元老

Rank: 8Rank: 8

积分
3193
金钱
3193
注册时间
2013-12-8
在线时间
439 小时
发表于 2018-12-31 16:06:17 | 显示全部楼层 |阅读模式
10金钱
我的开发板是阿波罗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都挂载正常。

我想问下出现这些问题的大概原因是什么。

最佳答案

查看完整内容[请看2#楼]

实验56 USB U盘实验(Host) 的NAND驱动是1.4版的 实验40 NAND FLASH实验 的NAND驱动是1.5版的 实验62 综合测试实验 的NAND驱动是1.5版的 把实验56 USB U盘实验(Host)的NAND驱动换为1.5版就正常了。 应该是你的驱动有了更新后没有把所有的实验用到的驱动更新为最新的。造成实验56 USB U盘实验(Host)NAND不正常
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

7

主题

65

帖子

2

精华

论坛元老

Rank: 8Rank: 8

积分
3193
金钱
3193
注册时间
2013-12-8
在线时间
439 小时
 楼主| 发表于 2018-12-31 16:06:18 | 显示全部楼层
实验56 USB U盘实验(Host) 的NAND驱动是1.4版的
实验40 NAND FLASH实验 的NAND驱动是1.5版的
实验62 综合测试实验          的NAND驱动是1.5版的

把实验56 USB U盘实验(Host)的NAND驱动换为1.5版就正常了。
应该是你的驱动有了更新后没有把所有的实验用到的驱动更新为最新的。造成实验56 USB U盘实验(Host)NAND不正常
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165536
金钱
165536
注册时间
2010-12-1
在线时间
2117 小时
发表于 2019-1-1 02:45:08 | 显示全部楼层
1,换个新卡试试。不一定所有的卡都能支持的。2,下载NAND FLASH实验,全片擦除NAND,然后下载FATFS实验,重新格式化NAND,再试试。
回复

使用道具 举报

7

主题

65

帖子

2

精华

论坛元老

Rank: 8Rank: 8

积分
3193
金钱
3193
注册时间
2013-12-8
在线时间
439 小时
 楼主| 发表于 2019-1-1 12:23:19 | 显示全部楼层

实验40 NAND FLASH实验 串口回复:
total block num:4096
good block num:4096
valid block num:3809
err hd,rd:0x0,0xffffffff
eccnum,eccstart:1,2
PageNum,ColNum:0,1024
2bit ecc error or more
系统正常。
实验41 FATFS实验:

total block num:4096
good block num:4096
valid block num:3809
total block num:4096
good block num:4096
valid block num:3809

mf_scan_files("2:")
=0X0;
系统正常

实验56 USB U盘实验(Host) 串口回复:
USB OTG HS MSC Host
> USB Host library started.
  USB Host Library v2.1.0

复位设备...
检测到USB设备插入!
复位设备...
全速(FS)USB设备!
VID: 0781h
PID: 5567h
从机地址分配成功!
可移动存储器设备!
Manufacturer: SanDisk
Product: Cruzer Blade
Serial Number: 4C530001290110113523
设备枚举完成!

跳过用户确认步骤!
开始执行用户程序!!!

mf_scan_files("2:")bad block index:212
format nand flash...
good_blocknum:2769
bad block index:540
bad block index:1043
bad block index:2806
bad block index:3936
format failed!
=0X3;
NAND不正常,不能format。
所有程序为寄存器版,只是把SD卡的初始化和挂载FATFS注释掉,其他没改东西,U盘HOST试验NAND就是过不去。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-9 08:49

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表