FLASh 必须是先擦后写
下面的函数是分析案例
void FLASH_WriteByte(u32 addr ,u16 flashdata1)
{
FLASH_Status FLASHstatus = FLASH_COMPLETE;
FLASH_Unlock();//解锁FLASH编程擦除控制器
// FLASH_ClearFlag(FLASH_FLAG_EOP | FLASH_FLAG_PGERR | FLASH_FLAG_WRPRTERR);//清除标志位
FLASH_ClearFlag(FLASH_FLAG_BSY|FLASH_FLAG_EOP|FLASH_FLAG_PGERR|FLASH_FLAG_WRPRTERR);
/
FLASHstatus=FLASH_ErasePage(addr);//擦除指定地址页
FLASHstatus=FLASH_ProgramHalfWord(addr, flashdata1);//从指定页的addr地址开始写
//FLASH_ClearFlag(FLASH_FLAG_BSY|FLASH_FLAG_EOP|FLASH_
1