[STM32F4] NAND FLASH经常损坏,求助各位大牛!

[复制链接]
2868|16
 楼主| wt8800 发表于 2016-3-15 12:25 | 显示全部楼层 |阅读模式
NAND FLASH使用keil自带的文件系统RL-FLASHFS,跑一段时间之后,FLASH就挂掉了,FLASH的片选线C\E\无法拉低,R/B线一直都是低电平(表示FLASH处于BUSY状态)FLASH无法操作。问一下各位大神,这个是什么问题?
泰山特曲123 发表于 2016-3-15 12:33 来自手机 | 显示全部楼层
是不是有两个任务同时访问nand flash,而没有做共享资源保护!
neeringstu 发表于 2016-3-15 15:23 | 显示全部楼层
具体程序是怎么写的啊,不会是硬件的问题
23jiekou 发表于 2016-3-15 16:01 | 显示全部楼层
Garen2 发表于 2016-3-15 16:42 | 显示全部楼层
跑一段时间之后,FLASH就挂掉了

FLASH挂掉,还会恢复吗
 楼主| wt8800 发表于 2016-3-15 17:28 | 显示全部楼层
现在设定的是同时可以有6个任务访问nand flash,我现在只用了一个,只有当一个任务释放了,另外的任务才能访问。
 楼主| wt8800 发表于 2016-3-15 17:31 | 显示全部楼层
而且FLASH挂掉后无法使用,片选线始终高电平,RB检测FLASH BUSY线始终低电平,相当于现在FLASH完全不可操作。
 楼主| wt8800 发表于 2016-3-15 17:33 | 显示全部楼层
使用文件系统,基本的操作就只有fopen---> 读写---->fclose
ideafor 发表于 2016-3-15 20:37 | 显示全部楼层
说明flash读写速度太慢,你用的程序是官网的吗
zhuomuniao110 发表于 2016-3-16 08:51 | 显示全部楼层
你要做好区块分配,不要总是在一个位置读写,要用链表的方式存储。这样可以延长寿命。
hyhmh 发表于 2016-3-16 09:26 | 显示全部楼层
写算法问题,写是有次数限制的
分块、均衡存贮,用工具看硬件是否……
 楼主| wt8800 发表于 2016-3-16 17:06 | 显示全部楼层
这个均衡等都由FLASHFS文件系统来处理
nicholasldf 发表于 2016-3-17 13:50 | 显示全部楼层
yaffs2之专门针对nandflash的文件系统,里面实现了均衡算法,,,,
其次要规划好应用程序,尽量单任务访问文件系统,,,,
 楼主| wt8800 发表于 2016-3-18 10:56 | 显示全部楼层
谢谢楼上给出的建议,现在文件系统没法更改了,YAFFS2要求的RAM空间太高,在我这个系统里面无法实现。目前只能检查代码,在单人舞访问文件系统方面着手。
 楼主| wt8800 发表于 2016-3-18 11:11 | 显示全部楼层
2月份时放了20台机子做测试。现出现的问题如下:
1.2台机子FLASH无法操作,片选电平无法拉低,RB(ready/busy)电平一直为低,FLASH处于BUSY状态。
2.2台机子FLASH可操作,可以查看FLASH中有文件,无法打开文件(fopen操作总是失败),格式化后恢复正常。
3.1台机子FLASH中没有文件,检查FLASH剩余空间,发现空间不足(片子为128MB空间,剩余不足10MB),格式化后恢复正常。

大家看看,有什么建议?
 楼主| wt8800 发表于 2016-3-18 11:12 | 显示全部楼层
是不是我的FLASH操作中存在重大的问题?
 楼主| wt8800 发表于 2016-3-18 11:13 | 显示全部楼层
我把代码放上来,大家帮忙看一下、

FLASH操作相关C文件.rar

17.47 KB, 下载次数: 8

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

本版积分规则

1

主题

9

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部