请教关于flash的读写问题!

keen_2000_0 2005-02-28 11:47:15
请问有人做过inter-e28f128j3a flash的读写编程工作么
请问一个block的大小可以自己指定么?如果可以,那么当用户从flash中读出一个block的数据到ram,怎么将它里面的内容按要求归类呢?比如我里面存的是一个电话本,如何知道什么是用户名,什么是电话号码!
谢谢高手指点。
...全文
242 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
sun4216 2005-03-15
  • 打赏
  • 举报
回复
同样是一个块,AMD的FLASH叫SECTOR,INTEL的FLASH叫BLOCK。读的时候可以任意位置读,写的时候也可以任意位置写,但是写之前一定要先擦除。
hiphop 2005-03-10
  • 打赏
  • 举报
回复
不叫block 叫sector 每个flash都有自己的标准
读的时候 可以任意位置读
写的话必须按sector写 一定要先擦后写

简单的方法是mmap flash到内存 直接对内存操作就是对flash的操作

它会每隔一段时间自己同步

也可以用函数进行强制同步以防止数据丢失
ThinkLover 2005-03-07
  • 打赏
  • 举报
回复
你所说的已经是文件系统的问题了.这个一般跟Flash本身的驱动是分开的.如果你要做的话,建议也分成两个独立的模块做.flash可以通过word或byte读写,这跟block读写是两个概念.前者是CPU访问Flash(RD/WR),这个后者没有什么必然的联系.
xichen 2005-03-01
  • 打赏
  • 举报
回复
flash是一个存储区域,如果你的系统里面有文件系统,当然可以制定文件名,一般是没有的。
不一定都要全部copy到ram,你可以用指针读对应的flash地址然后取出相关数据阿。
flash读可以任意读,但是写必须是按block写的。
keen_2000_0 2005-03-01
  • 打赏
  • 举报
回复
另外,flash可以通过word或byte读写,请问这样比block读写比较有什么优缺点。
keen_2000_0 2005-03-01
  • 打赏
  • 举报
回复
请问楼上,这个把数据从ram拷贝到flash可以指定文件名么?如果可以怎么指定。上面的这个结构你的意思是说读取数据的时把flash的一个block的内容拷贝到ram,然后通过指针来访问。我理解的对么?这是对flash读写数据唯一的方法么?
大熊猫侯佩 2005-02-28
  • 打赏
  • 举报
回复
帮顶~~~
xichen 2005-02-28
  • 打赏
  • 举报
回复
不能自己指定block大小,这个是flash芯片决定的; 一般保存的资料都是有数据结构的,你分析出这个结构就可以了,例如以下结构:
struct ex
{
char name[8];
char tel[12];
}
那么就是用8个字节保存用户名,12字节保存电话号码。

21,597

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
  • 驱动开发/核心开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧