|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
×
本帖最后由 courageheart 于 2014-11-12 16:09 编辑
前提:1、eflash的program(write)操作只能将“1”替换成“0”,而不能对“0”进行处理,所以在program操作之前需要对eflash先进行erase(擦除),即将“0”替换成“1”; 2、用于控制的外设备eflash只有macro和page erase模式,没有block erase模式。
问题来了:每次program之前要么进行macro erase,要么进行page erase,但是,我只想对eflash进行一个字的写操作,如果简单进行macro/page erase操作,那么eflash里其他空间的数据就会丢失。
目前的做法:增加一个buffer,在每次erase操作之前将eflash的数据读取到buffer,但这样做的效果不好,增加写操作的时间,即每次写操作之前要增加读操作和erase操作,同时也增加了芯片的面积。
求各路朋友帮忙提个建议,如何更好处理blcok write operation! |
|