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

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【GD32 MCU 入門教程】六、GD32 MCU 選項字節(jié)設(shè)置及解除方法

聚沃科技 ? 2024-08-26 09:43 ? 次閱讀

您在使用GD32過程中是否遇到過芯片反復(fù)復(fù)位,代碼無法更新,代碼一直執(zhí)行在0x1fffxxxx區(qū)域,或代碼執(zhí)行在SRAM區(qū)域的情況?如果有遇到這類現(xiàn)象是否找到原因呢?如果沒找到是否檢查過選項字節(jié)是否正常呢?這一章節(jié)我們針對各系列的選項字節(jié)設(shè)置和解除做一個相關(guān)說明,后續(xù)遇到上述問題可以考慮一下是否是選項字節(jié)配置錯誤導(dǎo)致。

1 .各系列選項字節(jié)說明

GD32L23x/GD32E50x系列選項字節(jié):

輸入圖片說明

GD32E103/GD32E11x/GD32VF103/GD32C103/GD32C113GD32F10x/GD32F20x/GD32F30x/GD32F403系列選項字節(jié)介紹:

輸入圖片說明

GD32F1x0/GD32F3x0/GD32E230/GD32E231/GD32E232系列選項字節(jié):

輸入圖片說明

GD32A503選項字節(jié):

輸入圖片說明

GD32F4xx系列選項字節(jié):

輸入圖片說明

2.通過代碼實現(xiàn)

具體做法這里不詳細(xì)介紹,具體參考5.11章FMC配置介紹,需要注意,讀保護(hù)的設(shè)置和解除需要芯片上下電才能生效,通過外部代碼解除讀保護(hù)需要將代碼運行在ram里面執(zhí)行。

3.通過 JTAG/SWD 接口實現(xiàn)

3.1.使用 Jlink 設(shè)置和解除選項字節(jié)

連好Jlink與目標(biāo)板連線,打開J-Link Commander命令提示窗工具“JLink.exe”

輸入圖片說明

按照提示輸入相應(yīng)信息 connect→?→s→100

輸入圖片說明

如果連接OK,可以識別到芯片的內(nèi)核信息,即可輸入mem命令獲取對應(yīng)的選項字節(jié)信息;

輸入圖片說明

Jlink command 常用命令簡介:

mem Read memory. Syntax: mem [:], (hex) mem8 Read 8-bit items. Syntax: mem8 [:], (hex) mem16 Read 16-bit items. Syntax: mem16 [:], (hex) mem32 Read 32-bit items. Syntax: mem32 [:], (hex) w1 Write 8-bit items. Syntax: w1 [:], (hex) w2 Write 16-bit items. Syntax: w2 [:], (hex) w4 Write 32-bit items. Syntax: w4 [:], (hex)

通過上位機(jī)J-Flash設(shè)置讀保護(hù):

a.在J-Flash中選擇對應(yīng)物料型號:

輸入圖片說明

b.接調(diào)試線,然后選擇Target→ Connect:

輸入圖片說明

c.選擇Target→ Manual Programming→Secure Chip,可完成芯片讀保護(hù)設(shè)置;

輸入圖片說明

d.讀保護(hù)設(shè)置完成后重新上電下電可以通過Jlink command回讀判斷;

輸入圖片說明

通過上位機(jī)J-Flash去除讀保護(hù):

將 目 標(biāo) 板 通 過 Jlink 與 目 標(biāo) 板 連 接 后 , 選 擇 對 應(yīng) 物 料 型 號 ,Target→ManualProgramming→Unsecure Chip

輸入圖片說明

注:(1)通過JFlash上位機(jī)僅能設(shè)置讀保護(hù),不能設(shè)置其他選項字節(jié);

(2)GD32F405/407/450系列之外的型號通過設(shè)置讀保護(hù),斷電,再解除讀保護(hù)可以實現(xiàn)其他選項字節(jié)的擦除;

通過J-Flash上位機(jī)其他辦法設(shè)置和去除讀保護(hù):(了解即可)

A、使用綠色版Jflash里面jflash的project工程,里面已經(jīng)寫好了Init setps,如果設(shè)置了讀保護(hù),將jlink與目標(biāo)板connect時會發(fā)送Init steps序列解除讀保護(hù);

輸入圖片說明

B、使用bat腳本調(diào)用.jlink文件來實現(xiàn)讀寫保護(hù)的設(shè)置,可以找技術(shù)支持提供相應(yīng)資源,原理不詳述;

輸入圖片說明

3.2.使用 GDlink 設(shè)置和解除選項字節(jié):

a.接好GDLINK與目標(biāo)芯片的連線,然后打開Target→Connect

輸入圖片說明

b.Connect后會在信息窗口自動回讀芯片信息和選項字節(jié)信息;

輸入圖片說明

c.選擇Target里面的Configure OptionBytes點開即可編輯選項字節(jié)(僅三合一的GDLINK支持)

輸入圖片說明輸入圖片說明

板載的GDlink不支持Configure OptionBytes,僅可設(shè)置和解除讀保護(hù);

板載GDLINK connect時出現(xiàn)如下界面選擇“確定”,然后設(shè)置”Securtiy”和”Insecurity”

輸入圖片說明輸入圖片說明

4.通過 ISP 命令選項字節(jié)設(shè)置和解除

通過ISP命令選項字節(jié)設(shè)置和解除:

a.將修改芯片BOOT電平,接好串口/USB,讓芯片處于ISP狀態(tài)

輸入圖片說明

b.如果芯片處于讀保護(hù)狀態(tài),接下來會直接讓你選擇去除讀保護(hù),否則無法繼續(xù)往后執(zhí)行;

輸入圖片說明

c.讀保護(hù)去除成功后會彈出Readout unprotected successfully!界面。

輸入圖片說明

d.選擇下一步芯片會讀取寫保護(hù)狀態(tài),如果被鎖上W會被置位;

輸入圖片說明

e.選擇Edit Option Bytes可以對選項字節(jié)進(jìn)行編輯下載和讀取

輸入圖片說明輸入圖片說明

教程GD32 MCU方案商聚沃科技原創(chuàng)發(fā)布,了解更多GD32 MCU教程,關(guān)注聚沃科技官網(wǎng)

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

    關(guān)注

    6030

    文章

    44491

    瀏覽量

    632023
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    16900

    瀏覽量

    349944
  • 嵌入式
    +關(guān)注

    關(guān)注

    5059

    文章

    18975

    瀏覽量

    302088
收藏 人收藏

    評論

    相關(guān)推薦

    GD32 MCU 入門教程GD32 MCU 常見外設(shè)介紹(12)FMC 模塊介紹

    閃存控制器(FMC),提供了片上閃存需要的所有功能。FMC 也提供了頁擦除,整片擦除,以及32 位整字或 16 位半字編程閃存等操作。 GD32 MCU 支持不同類型編程的具體說明如下表 GD32
    的頭像 發(fā)表于 08-21 09:56 ?933次閱讀
    <b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入門教程</b>】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 常見外設(shè)介紹(12)FMC 模塊介紹

    GD32MCU介紹

    吧,但是基本上有99%,有部分寄存器比特位存在區(qū)別。另外兆芯的手冊寫的實在是不夠精確,很多時候出現(xiàn)一種情況就是,我命名特么的用的是GD32MCU,寫個驅(qū)動還要參考ST的手冊?!真是見了鬼了。比如USB的這個寄存器,兆芯的描述簡直了。很多時候吧,真的想支持國產(chǎn),奈何國產(chǎn)芯
    發(fā)表于 11-01 06:03

    GD32 MCU原理及固件庫開發(fā)指南》+讀后感

    。 第2章介紹GD32 MCU快速入門與開發(fā)平臺搭建的方法,包括對軟硬件開發(fā)平臺、調(diào)試工具、GD32 M
    發(fā)表于 06-06 21:52

    推出采用GD32 RISC-V的MCU

    推出采用GD32 RISC-V的MCU ppt分享
    發(fā)表于 07-14 17:15 ?0次下載

    兆易創(chuàng)新GD32 MCU選型手冊,適用于GD32全系列MCU

    兆易創(chuàng)新GD32MCU選型手冊,適用于GD32全系列MCUGD32MCU選型手冊,適用于GD32全系列MCU
    發(fā)表于 10-19 17:26 ?49次下載

    你了解GD32 MCU的命名規(guī)則嗎

    下面為大家介紹GD32 MCU的通用命名規(guī)則,以GD32F303ZGT6為例,其中,GD32代表GD32
    的頭像 發(fā)表于 01-13 09:38 ?3381次閱讀
    你了解<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b>的命名規(guī)則嗎

    GD32 MCU選項字節(jié)是什么?

    GD32 MCU選項字節(jié)是什么,有什么功能呢?選項字節(jié)被誤篡改如何回復(fù)?
    的頭像 發(fā)表于 01-17 09:42 ?1199次閱讀
    <b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b>的<b class='flag-5'>選項</b><b class='flag-5'>字節(jié)</b>是什么?

    不同型號的GD32 MCU如何區(qū)分?

    大家是否碰到過以下應(yīng)用場景:同一套軟件代碼希望跑在不同型號的GD32 MCU中,但有些地方需要根據(jù)MCU型號進(jìn)行調(diào)整?或者上位機(jī)或其他MCUGD3
    的頭像 發(fā)表于 01-27 09:32 ?923次閱讀
    不同型號的<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b>如何區(qū)分?

    GD32 MCU 入門教程】一、GD32 MCU 開發(fā)環(huán)境搭建(1)使用Keil開發(fā)GD32

    GD32系列為通用型MCU,所以開發(fā)環(huán)境也可以使用通用型的IDE,目前使用較多的是KEIL、IAR、 GCC和Embedded Builder,客戶可以根據(jù)個人喜好來選擇相應(yīng)的開發(fā)環(huán)境。
    的頭像 發(fā)表于 08-08 15:01 ?937次閱讀
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入門教程</b>】一、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 開發(fā)環(huán)境搭建(1)使用Keil開發(fā)<b class='flag-5'>GD32</b>

    GD32 MCU 入門教程】一、GD32 MCU 開發(fā)環(huán)境搭建(2)使用 IAR 開發(fā) GD32

    GD32系列為通用型MCU,所以開發(fā)環(huán)境也可以使用通用型的IDE,目前使用較多的是KEIL、IAR、 GCC和Embedded Builder,客戶可以根據(jù)個人喜好來選擇相應(yīng)的開發(fā)環(huán)境。
    的頭像 發(fā)表于 08-08 15:40 ?539次閱讀
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入門教程</b>】一、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 開發(fā)環(huán)境搭建(2)使用 IAR 開發(fā) <b class='flag-5'>GD32</b>

    GD32 MCU 入門教程】一、GD32 MCU 開發(fā)環(huán)境搭建(3)使用 Embedded Builder 開發(fā) GD32

    GD32系列為通用型MCU,所以開發(fā)環(huán)境也可以使用通用型的IDE,目前使用較多的是KEIL、IAR、 GCC和Embedded Builder,客戶可以根據(jù)個人喜好來選擇相應(yīng)的開發(fā)環(huán)境。
    的頭像 發(fā)表于 08-08 16:03 ?780次閱讀
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入門教程</b>】一、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 開發(fā)環(huán)境搭建(3)使用 Embedded Builder 開發(fā) <b class='flag-5'>GD32</b>

    GD32 MCU 入門教程】二、GD32 MCU 燒錄說明(1)ISP 燒錄

    ISP:In System Programing,在系統(tǒng)編程,通過MCU片內(nèi)的引導(dǎo)程序進(jìn)行Flash編程。 GD32片內(nèi)有一個只讀信息塊,用于存放引導(dǎo)裝載程序,引導(dǎo)程序在MCU出廠前就會提前燒錄好
    的頭像 發(fā)表于 08-08 16:20 ?683次閱讀
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入門教程</b>】二、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 燒錄說明(1)ISP 燒錄

    GD32 MCU 入門教程GD32 MCU 常見外設(shè)介紹(14)RTC 模塊介紹

    GD32 MCU內(nèi)部提供了一個RTC(實時時鐘)模塊,通過RTC可以實現(xiàn)日歷時鐘、鬧鐘等功能。RTC也可以用于深度睡眠或待機(jī)模式的低功耗喚醒。不同系列的GD32 MCU在RTC設(shè)計和功
    的頭像 發(fā)表于 08-23 09:18 ?356次閱讀
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入門教程</b>】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 常見外設(shè)介紹(14)RTC 模塊介紹

    GD32 MCU 入門教程GD32 MCU FPU 使用方法

    GD32 MCU FPU 使用方法
    的頭像 發(fā)表于 08-25 09:24 ?437次閱讀
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入門教程</b>】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> FPU 使用<b class='flag-5'>方法</b>

    GD32 MCU入門教程GD32 MCU GPIO 結(jié)構(gòu)與使用注意事項

    本文是專門為基于GD32 MCU開發(fā)的工程設(shè)計人員提供,主要介紹了GPIO的功能配置、內(nèi)部結(jié)構(gòu)以及在不同場景使用時的注意事項,旨在幫助GD32 MCU開發(fā)者優(yōu)化對通用型輸入輸出端口(G
    的頭像 發(fā)表于 09-07 10:34 ?525次閱讀
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b><b class='flag-5'>入門教程</b>】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> GPIO 結(jié)構(gòu)與使用注意事項