4609|9

1

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

nandflash 驱动 碰到奇怪问题? 那位大虾帮忙看看 [复制链接]

nandflash用的是 K9F1G08
每个页是2K ,写一个页,然后再读这个页,发现只有前512是一样的

没办法!只能先确定是 写有问题还是读有问题

用烧录工具(此工具没有问题)将一个文件,写入nand的一个固定地址, 然后再用我自己的代码去读这个地址的一个页,
用读出来的值和这个文件想比较
拿前16个字节来举例

错误的
0x45  0x1b  0x20  0x2b  0x24  0xfe  0x10  0x9  0x8e  0x11  0x80  0x1  0xff  0xff  0xff  0xff

正确的
0x45  0x0  0x0  0xea  0x1b  0x0  0x0  0xea  0x20  0x0  0x0  0xea  0x2b  0x0  0x0  0xea

以此类推
就是每4个字节,后3个都丢了,
高人快现身吧,

最新回复

三星的2440,我们也用过啊,有Nand Flash控制器,写命令、写地址、写数据、读数据都是操作寄存器的,不用直接控制IO,应该很好操作啊,不应该有这样的情况啊。 楼主你仔细看看你的代码,看是否有上面各位大侠说的用错数据类型的问题。  详情 回复 发表于 2010-1-27 22:58
点赞 关注

回复
举报

1

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
详细看一下FLASH的DATASHEET,看下写整个页的时序到底是什么。
要想测试读是否有问题的话你可以先把FLASH擦了,或者是拿个空FLASH,然后把一个缓冲区的数据全设置成0xAA之类的非0和非FF的数据,然后将FLASH的整页读到这个缓冲区,看看读出来的是不是FF,如果是FF的话估计就是读成功了。然后再去试写。
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
数据类型要定义为Byte,不能用char
 
 
 

回复

4

帖子

0

TA的资源

一粒金砂(中级)

4
 
你用的CPU是什么型号?
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

5
 
SAMSUNG 2440
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

6
 
估计是数据类型搞错了  4字节的和单字节的
lz好好检查一下
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

7
 
先擦除FLASH,再用你的代码去读出来看看是否是全FF。另外要注意一下FLASH的位宽是多少,每页真的是2K?
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

8
 
1. 检查数据类型是否正确
2. 确定MCU的nandflash controler读写数据格式和字节数是否正确
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

9
 
你的问题很可能是数据类型的错误,我用的K9f1208的,读写都是一个字节一个字节进行的,所以你最好看下你程序,再就是操作命令是否正确。
如还有疑问,可与我联系,很乐意帮人
 
 
 

回复

18

帖子

0

TA的资源

一粒金砂(高级)

10
 
三星的2440,我们也用过啊,有Nand Flash控制器,写命令、写地址、写数据、读数据都是操作寄存器的,不用直接控制IO,应该很好操作啊,不应该有这样的情况啊。
楼主你仔细看看你的代码,看是否有上面各位大侠说的用错数据类型的问题。
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表