打印

NAND FLASH丢数据问题!!!

[复制链接]
8399|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jshong|  楼主 | 2009-12-21 22:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
遇到NAND FLASH丢失数据的问题,一时没有什么好的解决办法,向各位寻求帮助,请明白的兄弟指点一下。

1、FLASH型号:K9F1G08UOB(128Bytes);
2、MCU带有NAND FLASH控制器;
3、发生概率:200分之一左右,也就是两百台机器会出现一台FLASH丢数据的情况。
4、在工厂内部老化、测试均没有FLASH丢数据的情况,丢数据的情况都是发生在用户手中且都是产品刚到用户手中不久发生的。
5、将丢数据的FLASH通过编程器将其内的数据读出,发现都是第0个BLOCK内的数据丢失,第0个BLOCK全变为0XFF;
6、代码中没有擦除FLASH的动作。
7、初步怀疑是上电或掉电IO乱动作引起的,但还没有办法验证。

相关帖子

沙发
johnwjl| | 2009-12-21 22:37 | 只看该作者
1# jshong

顶一下。

使用特权

评论回复
板凳
古道热肠| | 2009-12-21 23:19 | 只看该作者
试试写保护引脚.

使用特权

评论回复
地板
xymxym| | 2009-12-22 09:54 | 只看该作者
1.打开或者增加单片机的低电压复位
2.不要把数字写在BLOCK0,嘿嘿!

使用特权

评论回复
5
大道至简| | 2009-12-22 11:01 | 只看该作者
关注一下

使用特权

评论回复
6
ejack| | 2009-12-22 12:56 | 只看该作者
4L的方法很直接……也应当很有效……

2、MCU带有NAND FLASH控制器;

MCU是否有从Flash Boot的功能?

使用特权

评论回复
7
jshong|  楼主 | 2009-12-22 13:04 | 只看该作者
FLASH BLOCK0是BOOT区!

使用特权

评论回复
8
jshong|  楼主 | 2009-12-22 21:28 | 只看该作者
各位路过的大虾请给出一点建议呀!!!

使用特权

评论回复
9
wangkj| | 2009-12-22 21:33 | 只看该作者
找block0保证没问题的片子。

使用特权

评论回复
10
tulipyyf| | 2014-9-25 16:34 | 只看该作者
楼主解决了吗?我也遇到这个问题,
天天运行的2440核心板,今天突然开机显示“Wrong Linux kernel",不知道为什么?求解
2440核心板上使用的是 K9F2G08  我自己怀疑是不是程序运行的时候,在某种情况下误写入FLASH 的内核区域,导致开机检测内核错误导致的  K9F2G08在驱动上没有写保护。
K9F2G08在驱动上没有写保护。
希望大家一块看看是什么原因。  
2440 理论上运行时不会操作到K9F2G08的内核区域的。

本人在根文件系统上执行的应用程序,在QT中使用SQLITE数据库,是不是操作数据库时会偶然写入K9F2G08时遭到写入错误地址,写到内核区域呢?

BOOTLOADER是好的 ,仍然能运行BOOTLOADER,重新写一下内核又好了,不知道什么原因  

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

23

主题

46

帖子

1

粉丝