新手入门
- 积分
- 17
- 金钱
- 17
- 注册时间
- 2017-10-26
- 在线时间
- 1 小时
|
1金钱
芯片型号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();
|
|