你的浏览器版本过低,可能导致网站不能正常访问!为了你能正常使用网站功能,请使用这些浏览器。
举报
深谷幽泉 发表于 2017-6-4 19:56 7 L- x* w7 o' ~9 C( t) r3 Y我比较感兴趣的是FLASH不擦除直接写一个字节进去是怎么实现的
adlu 发表于 2017-6-5 09:01 4 ?0 ^" M: n2 ]& C" xFLASH的操作特性是先擦除后写入。 }9 t' I1 V, L! S$ J o* r+ ]' g 写操作可以将1bit改写成0bit,要将0bit改写成1bit只能用擦除操作。
FLASH的操作特性是先擦除后写入。
写操作可以将1bit改写成0bit,要将0bit改写成1bit只能用擦除操作。
/ _: [3 j+ i; d% }; B
如果想要实现按字节写FLASH,需要4个步骤:读->改->擦->写。
先读取整个扇区到缓存,* f, X- c' x+ a" W3 H6 R" ~
修改缓存对应的位置数据,4 J6 A( A n$ G0 n- t- O
然后擦除整个扇区,
最后在把缓存数据写入扇区。6 x3 _+ g4 s9 {" p2 \1 [" s* s
可以参考正点原子教程中关于FLASH读写的相关章节。
哈哈,居然是你回复我,刚才突然发现;
其实我不是问FLASH操作流程,我是看到你提到可以解锁FLASH,然后写一个字节到FLASH,中间没有擦除过程,觉得这个可以简化FLASH操作流程,并且节约了擦FLASH耗费的时间,所以想了解下是怎么实现的,以前还真没这么干过。
后来去百度了下,已经知道是怎么回事了,这样处理在某些场合可以用。