STM32F05x加入RDP(LV1)后,Segger无法Unlock的解决办法
沿用之前CM3核的STM32F10X系列的加入RDP功能,之后在Segger的Unsecured Chip或者Unlock STM32的Cmd無法進(jìn)行去除RDP,而Unlock STM32則提示無法識別該型號。嘗試了很多方法,依然無法對其進(jìn)行Remove RDP,估計(jì)是型號比較新,Segger還未完全支持吧。所用 的Segger為官方最新的Release跟Beta版本V4.65d跟V4.67c/
估計(jì)可用的方法有以下三種:
? ? ? ?1、配置Boot區(qū),用System bootloader啟動(dòng),Boot1 = 0,Boot0=1,然后用串口ISP的A上位機(jī)對其進(jìn)行去除讀保護(hù);
? ? ? ?2、配置Boot區(qū),用SRAM運(yùn)行程序,在SRAM的主程序中執(zhí)行去除RDP操作;
? ? ? ?3、購買了STLink II,下載STVP,選擇Option Byte的編程,將Option Byte重新設(shè)定為LV0;
? ? ??
? ? ? ?以上只驗(yàn)證了第三個(gè)方法,因?yàn)橛布呀?jīng)固定。驗(yàn)證通過,完美去除RDP!
? ? ? 附上加入RDP的方法: ? ? ?
if(SET != FLASH_OB_GetRDP()){FLASH_Unlock(); //必須加,否則會(huì)出錯(cuò)FLASH_OB_Unlock();FLASH_OB_RDPConfig(OB_RDP_Level_1);FLASH_OB_Lock();FLASH_Lock();FLASH_OB_Launch(); //這句話一定加上,將自動(dòng)復(fù)位加載,否則第一次上電,RDP并未生效,需要復(fù)位后才能生效。}
重大更新:
寫這篇文章到現(xiàn)在有一年了,最近剛更新了KeilMDK5.0,也趁這個(gè)時(shí)候在Segger官網(wǎng)下載了最新的V4.78e,此時(shí)再加入RDP后,使用J-Flash的Unsecured chip功能,能成功的將之前J-Flash版本不能去除RDP的bug。
? ?
總結(jié)
以上是生活随笔為你收集整理的STM32F05x加入RDP(LV1)后,Segger无法Unlock的解决办法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CVPR2020/UDA/图像翻译-Cr
- 下一篇: 【题解】座位安排