吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何解決STM32芯片F(xiàn)lash寫保護的問題

FPGA之家 ? 來源:CSDN博客小麥大叔 ? 作者:CSDN博客小麥大叔 ? 2022-03-14 17:24 ? 次閱讀

本文介紹了如何解決STM32芯片Flash寫保護導致無法下載程序,無法在線調試的問題;如果您遇到相同的問題,希望本文可以帶來一些幫助。

1 FLASH的寫保護

如果對Flash設置了寫保護,那就無法對Flash進行編程和擦除。

在開發(fā)STM32的時候,如果出現(xiàn)這種情況,通常仿真器都支持對Flash進行解鎖,像jlink,stlink等仿真器都支持這個功能。

2 錯誤提示

在使用MDK進行調試的時候,出現(xiàn)報錯 ==Flash Timeout.Reset Target and try it again==,具體如下圖所示;

如何解決STM32芯片F(xiàn)lash寫保護的問題

折騰了一番之后,并沒有解決問題,因為使用的仿真器是stlink,因此下載了stlink utility嘗試解決問題;

3 stlink utility

3.1 基本功能

stlink utility是ST官方提供的免費軟件,支持STM32 ST-LINK的程序包括帶有命令行界面(CLI)的圖形用戶界面(GUI)。該工具還提供了較多的其他功能,具體如下;

可以對STM32 內部存儲器 (Flash,RAM,OTP和其他存儲器),外部存儲器進行編程;

驗證程序內容(校驗和,在編程期間和之后進行校驗,與文件進行比較等)

還能實現(xiàn) STM32編程自動化;

另外還提供其他的功能;

3.2 解鎖Flash

在stlink連接目標板的情況下,打開stlink utility,在菜單欄的Target下選擇connect,因為這時候Flash已經被鎖住了,所以同樣地也看到相應的錯誤提示 Can not read memory Disable Read Out Protection and retry,具體如下圖所示;

如何解決STM32芯片F(xiàn)lash寫保護的問題

OK,下面只需要接觸寫保護就行了,所以在菜單欄target里打開Option Bytes...選項,或者直接通過快捷鍵ctrl+B打開,請確保當前已經正確連接了stlink和目標板,否則會出現(xiàn)報錯;

正確連接的情況下,打開Option Bytes...,發(fā)現(xiàn)在這里Read Out Protection選項是enable,這個表示無法通過swd讀取STM32內部Flash的程序。

如何解決STM32芯片F(xiàn)lash寫保護的問題

關鍵點:將Read Out Protection選項設置為disable,點擊Apply,這時候Flash已經成功解鎖了。但是同時發(fā)現(xiàn),內部Flash已經被擦除了;

這可能STM32的保護機制有關,防止程序被拷機,然后進行反編譯破解,這樣也可以提高破解的門檻。具體顯示如下圖所示;

如何解決STM32芯片F(xiàn)lash寫保護的問題

完成以上步驟之后,在菜單欄Target下選擇Disconnect,或者通過快捷鍵ctrl+D斷開和目標板的連接;重新進入MDK,就能正常對目標板進行調試,仿真,以及程序的燒寫。

3.3 寫保護

在菜單欄target里打開Option Bytes...選項,我們還看到下面有Flash sector protection選項;選擇Select all之后,發(fā)現(xiàn)所有Page都已經寫保護了,只要選擇apply選項就可以對Flash進行寫保護;具體如下所示;

如何解決STM32芯片F(xiàn)lash寫保護的問題

4 總結

對于Flash寫保護的問題可以結合STM32參考手冊進行相應的學習,其內部Flash提供相應的保護機制,本文只是結合ST官方工具stlink utility解決一下常見的這個簡單的問題。

筆者能力和水平有限,文中難免有錯誤和紕漏之處,請大佬們不吝賜教;

原文標題:如何優(yōu)雅地解決STM32的Flash寫保護的問題?

文章出處:【微信公眾號:FPGA之家】歡迎添加關注!文章轉載請注明出處。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 芯片
    +關注

    關注

    456

    文章

    51170

    瀏覽量

    427241
  • FlaSh
    +關注

    關注

    10

    文章

    1642

    瀏覽量

    148669
  • STM32
    +關注

    關注

    2272

    文章

    10923

    瀏覽量

    357556

原文標題:如何優(yōu)雅地解決STM32的Flash寫保護的問題?

文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    設置FLASH寫保護及解除的方法

    51.1 選項字節(jié)與讀寫保護在實際發(fā)布的產品中,在STM32芯片的內部FLASH存儲了控制程序,如果不作任何保護措施的話,可以使用下載器直接
    發(fā)表于 12-03 07:24

    STM32對內部Flash保護措施

    一、STM32對內部Flash保護措施所有STM32芯片都提供對Flash
    發(fā)表于 01-20 07:23

    STM32芯片解除寫保護的操作步驟有哪些

    STM32芯片解除寫保護的方法(親測有效)前言方法一、用J-Flash來解除寫保護1.設置2.操作步驟(1)下載安裝JFlash軟件,已安裝
    發(fā)表于 02-21 07:13

    FLASH_CRYPT_CNT寫保護何解除?

    驗證flash加密功能時不小心將FLASH_CRYPT_CNT字段設置成寫保護了,導致現(xiàn)在無法關閉flash加密。請問有什么方法取消寫保護
    發(fā)表于 02-10 07:53

    請問FLASH_CRYPT_CNT寫保護何解除?

    驗證flash加密功能時不小心將FLASH_CRYPT_CNT字段設置成寫保護了,導致現(xiàn)在無法關閉flash加密。請問有什么方法取消寫保護
    發(fā)表于 03-06 06:14

    何解STM32芯片Flash寫保護導致無法下載程序,無法在線調試的問題

    ? 本文介紹了如何解STM32芯片Flash寫保護導致無法下載程序,無法在線調試的問題;如果您遇到相同的問題,希望本文可以帶來一些幫助;
    的頭像 發(fā)表于 12-22 16:51 ?1.4w次閱讀

    第51章 設置FLASH的讀寫保護及解除

    51.1 選項字節(jié)與讀寫保護在實際發(fā)布的產品中,在STM32芯片的內部FLASH存儲了控制程序,如果不作任何保護措施的話,可以使用下載器直接
    發(fā)表于 11-23 17:51 ?12次下載
    第51章     設置<b class='flag-5'>FLASH</b>的讀<b class='flag-5'>寫保護</b>及解除

    STM32芯片解除寫保護的方法(親測有效)

    STM32芯片解除寫保護的方法(親測有效)前言方法一、用J-Flash來解除寫保護1.設置2.操作步驟(1)下載安裝JFlash軟件,已安裝
    發(fā)表于 12-24 19:38 ?22次下載
    <b class='flag-5'>STM32</b><b class='flag-5'>芯片</b>解除<b class='flag-5'>寫保護</b>的方法(親測有效)

    STM32Flash寫保護,SWD引腳鎖的各種解決辦法匯總(2020-03-10)

    問題現(xiàn)象:MDK,J-Flash,IAR等無法連接芯片,有時候鏈接上了,但是無法下載。注意:如果下載器線的接觸不良,也會有這個問題。問題描述:1、Flash寫保護根本原因是工程設計有
    發(fā)表于 12-27 18:45 ?14次下載
    <b class='flag-5'>STM32</b>的<b class='flag-5'>Flash</b>讀<b class='flag-5'>寫保護</b>,SWD引腳鎖的各種解決辦法匯總(2020-03-10)

    STM32Flash寫了保護怎么辦?

    為了防止對Flash的非法訪問,所有STM32芯片都提供對Flash保護,具體分為寫保護和讀
    發(fā)表于 02-08 16:39 ?7次下載
    <b class='flag-5'>STM32</b>的<b class='flag-5'>Flash</b>寫了<b class='flag-5'>保護</b>怎么辦?

    STM32Flash寫了保護怎么辦?

    STM32還提供了一個特別的保護,即對Flash存儲區(qū)施加讀保護后,即使沒有啟用寫保護Flash
    的頭像 發(fā)表于 04-02 15:55 ?4260次閱讀

    講講STM32單片機Flash的讀保護寫保護

    講講STM32單片機Flash的讀保護寫保護
    的頭像 發(fā)表于 10-26 15:52 ?8916次閱讀
    講講<b class='flag-5'>STM32</b>單片機<b class='flag-5'>Flash</b>的讀<b class='flag-5'>保護</b>和<b class='flag-5'>寫保護</b>

    STM32用串口下載后,不小心寫保護和讀保護了,如何解鎖?

    STM32用串口下載后,不小心寫保護和讀保護了,如何解鎖? 在STM32的開發(fā)過程中,有些時候可能會不小心開啟了
    的頭像 發(fā)表于 10-29 17:24 ?4788次閱讀

    STM32Flash寫了保護怎么辦?STM32如何設置讀保護和解除讀保護

    保護機制,然后才能更好地解決這個問題。 STM32Flash有兩種保護,一種是寫保護,一種是讀保護
    的頭像 發(fā)表于 10-29 17:24 ?1.3w次閱讀

    STM32加密問題:怎樣預置一段Flash保護和清除讀保護的程序

    STM32芯片中,我們可以通過設置BFB2和BFB1位來對Flash進行保護。BFB2位用于讀保護寫保
    的頭像 發(fā)表于 10-29 17:24 ?2743次閱讀
    百家乐没有必胜| 历史百家乐路单图| 电脑赌百家乐官网可靠吗| 抚顺市| 大发888真钱游戏下载| 王子百家乐的玩法技巧和规则 | 大发888娱乐鸿博娱乐| 百家乐的规则玩法| 百家乐下注时机| 新时代百家乐官网娱乐城| 百家乐官网全讯网娱乐城| 苗栗县| 注册娱乐城送彩金| 大发888娱乐场下载英皇国际| 电脑赌百家乐可靠吗| 百家乐下注所有组合| 奥斯卡百家乐官网的玩法技巧和规则| 百家乐官网模拟分析程序| 吴桥县| 利来| 娱乐城网站| 大发888虎牌官方下载| 全讯网zq06| 永利博百家乐的玩法技巧和规则| 百家乐三宝| 虚拟百家乐游戏下载| 斗首24山择日天机择日| 金樽百家乐官网的玩法技巧和规则| 真人百家乐官网赌博技巧| 百家乐官网怎样做弊| 百家乐官网投注法减注| 澳客网比分直播| 德州扑克庄家| 大发888提款| 大发888真钱游戏下载365| 大发888娱乐场下载dafaylcdown | 百家乐开闲几率| 百家乐知敌便能制胜| 百家乐庄闲最佳打法| 百家乐视频游戏金币| 澳门百家乐娱乐城信誉如何|