STM32 Flash无法擦除,求指教

2019-08-11 17:20发布

芯片型号STM32F030C8T6
芯片从产线用烧录器烧录后,拿回实验室时,连接STLink的read保护等级是1
自己写代码进行在线升级,Application收到在线烧录命令后,擦除flash,代码如下,返回失败码02。
并不是每块板子都会这样,而且有些板子第一次在线烧录是OK的,第二次在线烧录就不OK了,失败的时候,每次FLASH_ErasePage函数返回的值都是2,求原子哥指教
另外,#define BOOT_FLAG_ADDR          (uint32_t)0x0800E800

FLASH_SetLatency(FLASH_Latency_1);      
FLASH_Unlock();
FLASH_ClearFlag(FLASH_FLAG_EOP | FLASH_FLAG_PGERR | FLASH_FLAG_WRPERR);  
temp=FLASH_ErasePage(BOOT_FLAG_ADDR);
//while(1)
  //{Send_Number(temp);}
SoftReset();
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。