FLASH
FLASH 页擦除
1,检查FLASH_CR 的LOCK是否解锁
2, 检查FLASH_SR 的BSY位 确定无其他闪存操作
3,设置FLASH_CR 的PER位为1
4,用FLASH_AR 的寄存器擦除页
5,设置FLASH_CR的STRT位为1
6,等待BSY位变成 0
7,读出被擦除的页 验证是否擦除。
FLASH 的全片擦除
1,检查FLASH_SR 的BSY位
2,设置FLASH_CR 的MER位为1
3,设置FLASH_CR的STRT为1
4,等待BSY为0,
5,读取验证。
FLASH 的编程过程
1,检查FLASH_CR的LOCK是否解锁
2,检查FLASH_SR的BSY位 判断有无其他操作
3,设置FLASH_CR的PG位为1 在指定的地址写入 16位的数据
4,等待BSY位为 0
5 读出写入的地址并验证数据