驱动三星的flash,型号是K5E1G13ACA。
为什么我读数据的时候读出来的数据是错位的呢?比如,我把0xFF号页面全部写0x11,然后读出来,结果是(我是把读的结果保存到一个unsigned int的数组里面的):
0x30303030
0x30303030
....
0x30303030
0x113030 //低16位的值是上一个数据的高16位
0x110000
0x110000//低16位的值0000,是上一个数据的高16位,本来每个数据都应该是0x11
0x110000
0x110000
...
现在已经确定是错位的问题,不是大小端问题。
还有一个问题就是为什么每页的前面几十个字节都是0x30303030这个东西呢?
谢谢。
对比一下手册里说明的读写顺序和你的代码里的读写顺序