精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

3天內不再提示

在 KEIL 中通過 opt.s 文件設置 Option Bytes

jf_pJlTbmA9 ? 來源:STM32單片機 ? 作者:STM32單片機 ? 2023-09-28 17:30 ? 次閱讀

1、引言

實際工程中如果需要對 MCU 的 option bytes 進行修改,可以有以下幾種方式:

? 通過 STLINK-Utility 或是 CubeProgrammer 圖形化工具進行配置

? 通過 ST-LINK_CLI.exe 命令行的方式進行配置

? 通過應用代碼中軟件修改寄存器的方式進行配置

以上的方式中前兩種都需要脫離 KEIL 或是 IAR 的開發(fā)環(huán)境進行操作,在實際項目的開發(fā)階段可以使用,但是到量產階段由于多了一道工序,增加了成本與出錯的風險;通過應用代碼軟件修改的方式在一定程度上也是增加了軟件的復雜度。

如果客戶使用 KEIL 作為軟件開發(fā)環(huán)境,則存在一種更簡單的方式,就是使用 opt.s 文件,采用該方法可以與應用工程融合在一起,一步完成 option bytes 的配置。

2、opt.s 文件介紹

Opt.s 文件存在于 KEIL 的開發(fā)包中,以 F3 系列 MCU 為例,可以在如下的路徑中找到。

1666769955539036.png

打開該文件后,可以看到如下部分截圖,類似匯編語言的方式對變量進行賦值,其實也就是對 option bytes 中的各個關鍵變量進行賦值操作。

1666769964550170.png

3、通過 opt.s 配置 option bytes

通過 opt.s 修改 option bytes 只能在 KEIL 開發(fā)環(huán)境下進行,接下來在 STM32F334R8 為例說明。

Step 1:新建或是任意打開一個基于 STM32F334R8 的工程,這里直接使用 CubeMx 例程中STM32F334R8-Nucleo 下的 GPIO_IOToggle 例程。

Step 2:將 STM32F3xx_OPT.s 添加到功能目錄中,如下:

1666769978991580.png

Step 3:雙擊打開 STM32F3xx_OPT.s 文件,如下圖所示。KEIL 提供了兩種編輯方式,如果對.s 文件的編程方式以及 option bytes 變量的每個 bit 都非常熟悉的話,可以直接在 text editor 下對.s 文件中進行修改;更加簡單的方式是直接在 Configuration Wizard 下進行配置。建議采用后面一種配置方式,更加簡單明了。

1666769990265882.png

Step 4:Configuration Wizard 下修改配置,比如將 RDP 由 level 0 更改為 level 1 并保存修改,此時可以通過 Text Editor 查看對應的 RDP 的值也變了。

1666770001104499.png

Step 5:重新編譯工程,可以看到 opt.s 文件被直接編譯到應用工程中。

1666770021261625.png

Step 6:將生成的燒錄文件直接下載到目標板中。此時需要注意的是,在燒錄前一定要將對應的 Flash options 的燒錄算法添加到 Programming Algorithm 中,如下所示,完成后直接連接目標板進行燒錄即可。

1666770028703345.png

完成以上的操作后,可以對上述進行的 option bytes 的修改進行驗證,可以直接打開CubeProgrammer 讀取目標板的 option bytes,得到的結果如下圖所示,可以看到,RDP 的結果與上述配置一致。

1666770039746029.png

4、小結

通過將 opt.s 文件添加到工程中實現 option bytes 的配置,好處是將配置融合到燒錄文件中,不需要通過其他工具或是在應用代碼中去操作 option bytes,簡化量產過程中的燒錄工序。但是目前該方法不是所有的 MCU 型號都適用,例如對 G4 雙 Bank 系列就存在問題,需要等待官方提供適合雙 Bank 的 option bytes 的燒錄算法與 opt.s 文件。

來源:STM32單片機

免責聲明:本文為轉載文章,轉載此文目的在于傳遞更多信息,版權歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權問題,請聯系小編進行處理

審核編輯 黃宇

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

    關注

    68

    文章

    1211

    瀏覽量

    166682
收藏 人收藏

    評論

    相關推薦

    怎樣將keil的程序導出

    1. 準備工作 開始導出程序之前,需要確保已經完成了以下準備工作: 安裝Keil MDK-ARM軟件。 創(chuàng)建一個新的項目,并添加所需的源文件和庫文件。 配置項目
    的頭像 發(fā)表于 09-02 10:23 ?1150次閱讀

    如何把keil軟件設置成中文

    軟件。您將看到主界面,其中包含菜單欄、工具欄和項目窗口。 打開“選項”菜單: 菜單欄,找到并點擊“選項”菜單。這將打開一個下拉菜單,其中包含各種設置選項。 選擇“環(huán)境”選項:
    的頭像 發(fā)表于 09-02 10:21 ?4358次閱讀

    使用espconn_set_opt設置了TCP斷開連接后立刻釋放內存,好像不生效,怎么解決?

    使用espconn_set_opt設置了TCP斷開連接后立刻釋放內存,好像不生效。我用的是以下的設置方法: err=espconn_set_o
    發(fā)表于 07-10 07:21

    STVD如何設置預編譯選項?

    請問大家一個IDE 的問題 我目前使用的是STVD 的編譯器。 想請問一下, 預編譯選項 哪里有的設置。 例如 中斷向量 文件如果 定義了STM8
    發(fā)表于 05-13 07:30

    如何修改STM32f030F4option bytes

    (); FLASH_OB_Lock(); FLASH_Lock(); } 返回FLASH_ERROR_PROGRAM 錯誤! 庫: KEIL:STM32F0XX_DFP 1.4
    發(fā)表于 05-11 08:09

    STM32F103XX系統(tǒng)的mcu里,FLASH_OBR寄存器中有個USER【User option bytes】字段,這是什么意思?

    STM32F103XX系統(tǒng)的mcu里,FLASH_OBR寄存器中有個USER【User option bytes】字段,請問這個是什么意思?用于什么作用的?必須得配置還是可選的?能隨便配置嗎?
    發(fā)表于 05-10 06:13

    STVPstm8af6226的Option bytes與Datasheet不符是為什么?

    有沒有人用過stm8af6226,燒錄軟件STVP中選擇芯片只有STM8AF6226TXSSS這一款,但里面的Option bytes內容與stm8af6226的Datasheet不符,而是
    發(fā)表于 05-09 08:22

    STM8L051的LSI設置,用IAR沒法option byte設置LSI-EN怎么解決?

    option byte里面沒有LSI-EN選項,是軟件問題還是這個芯片有什么制約?我想用LSI作為系統(tǒng)時鐘該怎么設置
    發(fā)表于 04-26 07:26

    STM32G0x0_OPT.FLM文件怎么MDK工程里使用?

    STM32G0x0_128.FLM文件可以工程里直接添加實現代碼的燒錄調試,但是STM32G0x0_OPT.FLM不知道如何使用?MDK工程要怎么修改?有例程嗎?
    發(fā)表于 03-29 06:33

    如何使用OPT_FLM文件實現解除讀保護功能?

    MDK工程里debug選項選擇燒錄的FLM文件就可以下載調試代碼,那OPT_FLM文件該怎么工程里使用實現解除讀保護功能呢?直接在debug里選擇是不行的,求指點
    發(fā)表于 03-28 07:11

    使用STM32CubeMX生成的keil文件keil運行時報錯的原因?

    使用STM32CubeMX過程,生成的keil文件。 file:///C:/Users/Zhanggp/AppData/Local/Temp/ksohtml11808/wps1.j
    發(fā)表于 03-26 07:10

    怎么啦?你的Keil C51和Keil MDK還無法共存嗎?

    一、安裝KeilC51將安裝路徑設置為:D:\software\Keil\Keil_C51二、安裝KeilMDKCore安裝路徑設置為:D:\software\
    的頭像 發(fā)表于 03-24 08:09 ?3056次閱讀
    怎么啦?你的<b class='flag-5'>Keil</b> C51和<b class='flag-5'>Keil</b> MDK還無法共存嗎?

    CN0359例程的程序源碼,KEIL編譯時startup_ADuCM360.s文件報錯的原因?怎么解決?

    CN0359例程的程序源碼,KEIL編譯時,startup_ADuCM360.s文件報錯。
    發(fā)表于 01-12 07:08

    keil如何生成bin文件

    Keil是一種集成開發(fā)環(huán)境(IDE),專為ARM架構的嵌入式系統(tǒng)開發(fā)而設計。Keil中生成bin文件是將代碼編譯并轉換為可執(zhí)行文件的過程。
    的頭像 發(fā)表于 12-15 13:43 ?1.1w次閱讀

    MEASURE輸出文件的排版格式如何調整?

    Hspice可以通過.OPTION MEASFORM來指定排版格式,MEASFORM最大能到4,大于4后返回到MEASFORM=0。設置時選擇自己喜歡的就行。我自己喜歡設置為:.
    的頭像 發(fā)表于 11-30 12:39 ?963次閱讀
    MEASURE輸出<b class='flag-5'>文件</b>的排版格式如何調整?