为什么要擦除 if((WriteAddress&0x1FF)==0x000) FLASH_Erase_OnePage(WriteAddress);
时间: 2024-04-11 20:30:35 浏览: 108
NX二次开发UF-DRAW-erase-sxview-objects 函数介绍
在嵌入式系统中,对于Flash存储器的写操作通常是以页为单位进行的。在写入新的数据之前,需要先擦除目标页,以确保目标页中的所有数据均被清除。否则,如果直接进行写操作,可能会导致数据的混合或残留。
因此,这段代码的作用是在写入新数据之前,检查要写入的地址是否是目标页的起始地址。如果是起始地址,就调用FLASH_Erase_OnePage函数来擦除该页,以确保旧数据被清除,然后再进行写操作。这样可以保证每次写入的数据都是从空白页开始存储,避免了数据混合或残留的问题。
阅读全文