1、引言
實(shí)際工程中如果需要對(duì) MCU 的 option bytes 進(jìn)行修改,可以有以下幾種方式:
? 通過 STLINK-Utility 或是 CubeProgrammer 圖形化工具進(jìn)行配置
? 通過 ST-LINK_CLI.exe 命令行的方式進(jìn)行配置
? 通過應(yīng)用代碼中軟件修改寄存器的方式進(jìn)行配置
以上的方式中前兩種都需要脫離 KEIL 或是 IAR 的開發(fā)環(huán)境進(jìn)行操作,在實(shí)際項(xiàng)目的開發(fā)階段可以使用,但是到量產(chǎn)階段由于多了一道工序,增加了成本與出錯(cuò)的風(fēng)險(xiǎn);通過應(yīng)用代碼軟件修改的方式在一定程度上也是增加了軟件的復(fù)雜度。
如果客戶使用 KEIL 作為軟件開發(fā)環(huán)境,則存在一種更簡(jiǎn)單的方式,就是使用 opt.s 文件,采用該方法可以與應(yīng)用工程融合在一起,一步完成 option bytes 的配置。
2、opt.s 文件介紹
Opt.s 文件存在于 KEIL 的開發(fā)包中,以 F3 系列 MCU 為例,可以在如下的路徑中找到。
打開該文件后,可以看到如下部分截圖,類似匯編語言的方式對(duì)變量進(jìn)行賦值,其實(shí)也就是對(duì) option bytes 中的各個(gè)關(guān)鍵變量進(jìn)行賦值操作。
3、通過 opt.s 配置 option bytes
通過 opt.s 修改 option bytes 只能在 KEIL 開發(fā)環(huán)境下進(jìn)行,接下來在 STM32F334R8 為例說明。
Step 1:新建或是任意打開一個(gè)基于 STM32F334R8 的工程,這里直接使用 CubeMx 例程中STM32F334R8-Nucleo 下的 GPIO_IOToggle 例程。
Step 2:將 STM32F3xx_OPT.s 添加到功能目錄中,如下:
Step 3:雙擊打開 STM32F3xx_OPT.s 文件,如下圖所示。KEIL 提供了兩種編輯方式,如果對(duì).s 文件的編程方式以及 option bytes 變量的每個(gè) bit 都非常熟悉的話,可以直接在 text editor 下對(duì).s 文件中進(jìn)行修改;更加簡(jiǎn)單的方式是直接在 Configuration Wizard 下進(jìn)行配置。建議采用后面一種配置方式,更加簡(jiǎn)單明了。
Step 4:Configuration Wizard 下修改配置,比如將 RDP 由 level 0 更改為 level 1 并保存修改,此時(shí)可以通過 Text Editor 查看對(duì)應(yīng)的 RDP 的值也變了。
Step 5:重新編譯工程,可以看到 opt.s 文件被直接編譯到應(yīng)用工程中。
Step 6:將生成的燒錄文件直接下載到目標(biāo)板中。此時(shí)需要注意的是,在燒錄前一定要將對(duì)應(yīng)的 Flash options 的燒錄算法添加到 Programming Algorithm 中,如下所示,完成后直接連接目標(biāo)板進(jìn)行燒錄即可。
完成以上的操作后,可以對(duì)上述進(jìn)行的 option bytes 的修改進(jìn)行驗(yàn)證,可以直接打開CubeProgrammer 讀取目標(biāo)板的 option bytes,得到的結(jié)果如下圖所示,可以看到,RDP 的結(jié)果與上述配置一致。
4、小結(jié)
通過將 opt.s 文件添加到工程中實(shí)現(xiàn) option bytes 的配置,好處是將配置融合到燒錄文件中,不需要通過其他工具或是在應(yīng)用代碼中去操作 option bytes,簡(jiǎn)化量產(chǎn)過程中的燒錄工序。但是目前該方法不是所有的 MCU 型號(hào)都適用,例如對(duì) G4 雙 Bank 系列就存在問題,需要等待官方提供適合雙 Bank 的 option bytes 的燒錄算法與 opt.s 文件。
來源:STM32單片機(jī)
免責(zé)聲明:本文為轉(zhuǎn)載文章,轉(zhuǎn)載此文目的在于傳遞更多信息,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問題,請(qǐng)聯(lián)系小編進(jìn)行處理
審核編輯 黃宇
-
keil
+關(guān)注
關(guān)注
68文章
1207瀏覽量
166173
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論