a136498491 发表于 2017-12-20 13:09:50

STC Flash 不擦除写入会发生什么情况

直接上例子:
一个字节,擦除,变成0xFF
然后写入数值0x01,变成0x01
再然后写入0x00,实际存储的会变成什么?
我一直觉得应该是0x00,但是不确定,也没找到资料。

shuiluo2 发表于 2017-12-20 13:26:05

flash应该是只可以由1写成0,但是不能反过来。要变成1只能擦。

xingkong911 发表于 2017-12-20 13:29:14

你试试不就知道了

jiaowoxiaolu 发表于 2017-12-20 13:40:03

本帖最后由 jiaowoxiaolu 于 2017-12-20 13:57 编辑

例子举错了,编辑掉,只能1变0,不能0变1

tarzar 发表于 2017-12-20 13:49:50

以前在飞思卡尔芯片上试过:就会变成0x00.

0xFF写0xF0,再写0X0F,最后就会变成零,再写任何数据都是为0x00

小李非刀 发表于 2017-12-20 15:54:52

以前的系列,将1写成0,STC15系列开始,擦除后,给个字节只能写一次,再写无效。

JoshuaAstray 发表于 2017-12-20 16:05:39

STM32会进hardfault

a136498491 发表于 2017-12-20 19:45:04

shuiluo2 发表于 2017-12-20 13:26
flash应该是只可以由1写成0,但是不能反过来。要变成1只能擦。

这个我知道,我想问的是写入一次之后,再写一次会怎么样。

a136498491 发表于 2017-12-20 19:45:35

xingkong911 发表于 2017-12-20 13:29
你试试不就知道了

试了,结果虽然是0,但是不放心。

a136498491 发表于 2017-12-20 19:47:11

小李非刀 发表于 2017-12-20 15:54
以前的系列,将1写成0,STC15系列开始,擦除后,给个字节只能写一次,再写无效。 ...

再写无效的意思是,有电路判断不是0xFF就拒绝写入?
我试了是可以写成0的,但是有时候(很低概率)会出现其他数值。

a136498491 发表于 2017-12-20 19:47:50

JoshuaAstray 发表于 2017-12-20 16:05
STM32会进hardfault

貌似不是吧,至少我用的STM32F030没有进硬件错误中断。。。。
页: [1]
查看完整版本: STC Flash 不擦除写入会发生什么情况