總述
這是之前ST芯片載keil下開發(fā)時(shí)候總結(jié)的一些代碼文件options配置小筆記,雖然不是很復(fù)雜但是在使用的過程中很方便,這里給大家介紹一下。一個(gè)是一個(gè)bug介紹,第二個(gè)是多個(gè)同名代碼文件的條件編譯,第三個(gè)是“文件的解鎖/開鎖”。
一、bug解釋
keil編譯遇到這樣的提示
FCARM - Output Name not specified,please check 'Options for Target - Utilities'
一般是原因是加載文件時(shí)為了選擇.md .TXT等非.c.h.lib說明文件,而且在配置選項(xiàng)選擇了代碼文件被一同編譯。
解決方法如下:
將工程目錄里面非程序的文件,右鍵并選擇第一項(xiàng)Options,
在file Type選項(xiàng)中,將文件設(shè)置為Text文本屬性,問題解決。
二、多個(gè)同名的代碼文件的選擇編譯設(shè)置
我們經(jīng)常可以在group里面看到一些有紅色橫杠或者雪花一樣的圖標(biāo),而且一般這些文件都是同樣的作用,我們不禁想問,同樣作用甚至相同名稱的文件為什么可以在一個(gè)group下可以編譯通過。
下面我就教大家如何把相同的文件進(jìn)行不同條件的編譯:
和第一個(gè)技巧的操作類似,第一步先選擇文件,右鍵選擇Options選項(xiàng),這個(gè)時(shí)候如果是正常顯示的文件,則在Properties一欄的右上角,Include in Target Build 和 Always Build是灰色勾選的狀態(tài),代表此文件在keil下編譯是否會(huì)被視作需要編譯的文件,否則該文件不被編譯。
下面我就選擇了system_stm32f0xx.c的文件進(jìn)行去掉被編譯的選項(xiàng),然后在groups一欄中文件顯示紅色禁止橫杠,顯示該文件待會(huì)編譯的時(shí)候不進(jìn)入編譯。
使用場(chǎng)景:一般我們代碼進(jìn)行條件編譯會(huì)用#if #endif,但是有時(shí)候出現(xiàn)不同條件下代碼差異巨大,必須用文件來進(jìn)行區(qū)分的時(shí)候,我們就可以用這樣的配置進(jìn)行條件編譯,我之前底層代碼有些用STD庫,有些用LL庫,我為了方便就選擇了使用批量設(shè)置文件不進(jìn)入編譯選擇。
三、文件的解鎖與開鎖
我們?cè)陂_發(fā)的時(shí)候有時(shí)候會(huì)遇到groups下面的文件上方有一個(gè)小鎖的標(biāo)志,那么這個(gè)鎖意思是什么呢?
這個(gè)在keil的實(shí)時(shí)環(huán)境配置(因?yàn)檫@些文件都來自keil安裝目錄下,一旦修改所有調(diào)用的代碼都被更改)的文件中很常見,是為了防止使用者修改代碼。說白了,就是該文件只可被讀,不可被寫,這樣使用者就無法修改文件里面的內(nèi)容了。
但是有些時(shí)候我們使用的時(shí)候也需要修改,甚至我們也想把代碼給其他人使用的時(shí)候提前設(shè)置成只讀模式(還有l(wèi)ib文件,這個(gè)以后再說),這樣給別人使用就比較安全。
解決方法:這個(gè)也很簡(jiǎn)單,就是找到該文件的存放目錄,選擇右鍵屬性,取消設(shè)置只讀即可。
這就是我分享的幾種開發(fā)小技巧
上一篇:03 STM32的串口設(shè)置步驟
下一篇:STM32 通過 I2C PCF8574 使用 4線LCD1602不顯示文字?
推薦閱讀最新更新時(shí)間:2025-06-24 09:27







- 熱門資源推薦
- 熱門放大器推薦
-
【Follow me第三季第一期】STM32F429I-DISC1任務(wù)匯總
-
【Follow me第三季第1期】任務(wù)三:Arduino環(huán)境運(yùn)動(dòng)傳感器數(shù)據(jù)讀取
-
【Follow me 第三季第1期】任務(wù)二——Arduino控制板載LED燈,并實(shí)現(xiàn)呼吸燈效果
-
【Follow me 第三季第1期】任務(wù)一 源碼-——Arduino環(huán)境Hello EEWorld
-
射頻電路設(shè)計(jì)
-
器件應(yīng)力降額總規(guī)范(艾默生)
-
5G通信系統(tǒng)定位技術(shù)原理與方法
-
笨辦法學(xué)C語言
設(shè)計(jì)資源 培訓(xùn) 開發(fā)板 精華推薦
- Microchip 升級(jí)數(shù)字信號(hào)控制器(DSC)產(chǎn)品線 推出PWM 分辨率和 ADC 速度業(yè)界領(lǐng)先的新器件
- 意法半導(dǎo)體STM32MP23x:突破成本限制的工業(yè)AI應(yīng)用核心
- 意法半導(dǎo)體推出用于匹配遠(yuǎn)距離無線微控制器STM32WL33的集成的匹配濾波芯片
- ESP32開發(fā)板連接TFT顯示屏ST7789跳坑記
- 如何讓ESP32支持analogWrite函數(shù)
- LGVL配合FreeType為可變字體設(shè)置字重-ESP32篇
- 使用樹莓派進(jìn)行 ESP32 Jtag 調(diào)試
- ESP32怎么在SPIFFS里面存儲(chǔ)html,css,js文件,以及網(wǎng)頁和arduino的通訊
- ESP32 freeRTOS使用測(cè)試
- 基于霍爾傳感器的自行車測(cè)速
- LT3470AIDDB 12V 降壓轉(zhuǎn)換器的典型應(yīng)用電路
- OP295GSZ 4.5V、低壓差運(yùn)算放大器基準(zhǔn)的典型應(yīng)用
- STEVAL-ISA098V1,使用 L7985A 的演示板,HSOP8 封裝中的 2 A 降壓開關(guān)
- NCP2811 NOCAP高級(jí)立體聲耳機(jī)放大器典型應(yīng)用電路
- STM3210C-EVAL,基于 STM32F107VCT STM32 ARM Cortex-M3(256KB 閃存)連接線 MCU 的評(píng)估板
- 使用 ROHM Semiconductor 的 BD45321 的參考設(shè)計(jì)
- EVAL40WFLYP7950VTOBO1、40W 適配器評(píng)估板在無緩沖器反激中使用 950V CoolMOS P7 和 ICE2QS03G QR 反激控制器以提高效率
- L296P大電流開關(guān)穩(wěn)壓器典型應(yīng)用電路
- 用于便攜式應(yīng)用的 RT9524 線性單節(jié)鋰離子電池充電器 IC 的典型應(yīng)用電路
- 國(guó)芯科技發(fā)布全球首款48V安全氣囊芯片,引領(lǐng)智能汽車新紀(jì)元
- 亞馬遜全球部署100萬臺(tái)機(jī)器人
- 自動(dòng)駕駛只用激光雷達(dá)進(jìn)行感知會(huì)有哪些問題?
- 為什么電源紋波測(cè)試結(jié)果與理論設(shè)計(jì)如此之大?
- UWB信標(biāo)與LoRa基站網(wǎng)關(guān)數(shù)據(jù)區(qū)別在哪里?
- 什么是AI 同傳技術(shù)
- 人工智能處理器和加速器到底是什么?
- PWM控制(脈沖寬度調(diào)制)的基本原理是什么
- 如何設(shè)計(jì)帶集成運(yùn)放構(gòu)成的方波發(fā)生器
- DSP調(diào)度算法的基本概念和原理
- 聯(lián)電8英寸代工漲價(jià),背后的運(yùn)行邏輯是什么?
- 除了半導(dǎo)體、大數(shù)據(jù),還有哪些亮點(diǎn)話題值得關(guān)注?
- 華為研發(fā)等部門從深圳搬至東莞 2700人集體搬遷
- 2018年上半年無人機(jī)產(chǎn)業(yè)政策法規(guī)盤點(diǎn)
- 技術(shù)創(chuàng)新和人才儲(chǔ)備并重 英飛凌加速布局機(jī)器人領(lǐng)域
- 驗(yàn)證STM32是小端存儲(chǔ)
- STM32報(bào)錯(cuò)、報(bào)錯(cuò)狀況以及解決辦法
- stm32芯片啟動(dòng)文件類型的選擇
- STM32工程不同系列芯片間的移植
- stm32f105外部晶振由8MHz調(diào)整到12MHz庫的修改