Flash特点:还具有快速读取和较慢的写入速度,以及有限的擦写次数。与传统的随机存取存储器(RAM)不同,闪存具有非易失性,这意味着即使在断电时也能保留存储的数据。
所以,被广泛用在嵌入式系统。
有的MCU(微控制器)将FLASH又分为Pflash(program flash)和Dflash(data flash),Pflash用于存储程序代码和只读数据。而Dflash则用于存储应用程序中的可变数据Dflash允许在运行时对数据进行擦除和编程,以满足应用的需求。
Flash 包含 256KB(64K x 32 位)主阵列,外加六个 1KB(256 x 32 位)NVR 扇区。
?一般操作为:1、解锁,通过相应的key1和key2
? ? ? ? ? ? ? ? ? ? ? ?2、擦除,当不处于busy时,开始擦除,SR的第0位寄存器处于0x1时表示还在执行操作中,当执行完毕,硬件自动将SR的第0位置0,表示操作完成
? ? ? ? ? ? ? ? ? ? ? ?3、擦除完可以读取rdata数据,看是否已经擦除完成,如果初始数据rdata=0x12345678变成了0xffffffff,即,擦除操作成功
? ? ? ? ? ? ? ? ? ? ? ?4、写,将指定addr和rdata写入,但是在写的时候需要加入延时等待,确保有足够时间
? ? ? ? ? ? ? ? ? ? ? ?5、读
? ? ? ? ? ? ? ? ? ? ? ?6、解锁? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??