日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

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

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

應(yīng)用筆記|巧用 STM32CubeIDE 之編譯警告

STM32單片機(jī) ? 來(lái)源:未知 ? 2023-06-29 17:35 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

關(guān)鍵字:STM32CubeIDE,warning,編譯警告

目錄預(yù)覽

1 前言2 巧用 warning3 小結(jié)

1. 前言

編譯警告對(duì)于工程師們來(lái)說(shuō),是再常見(jiàn)不過(guò)的東西了。對(duì)于嚴(yán)謹(jǐn)?shù)墓こ處焸?,任?warning 都是不會(huì)忽視的。

2. 巧妙使用 warning

在 STM32CubeIDE 中可以通過(guò)warning(甚至 error)的方式來(lái)通知工程師,使得一些容易遺漏的配置得到重視。

例如,在釋放參考代碼給客戶時(shí),希望客戶注意到里面的項(xiàng)目名稱和項(xiàng)目版本,那么我們可以在代碼中,通過(guò)“#error ”來(lái)強(qiáng)調(diào)必須要修改的信息,通過(guò)“#warning”來(lái)備注需要注意的信息。具體代碼如圖 1:

078b9332-1660-11ee-962d-dac502259ad0.png

這樣,當(dāng)客戶編譯工程時(shí),會(huì)出現(xiàn) error 和 warning,見(jiàn)圖 2,只有將“#error”和“#warning”兩行分別注釋掉,才會(huì)分別消除這兩項(xiàng)編譯信息,以此達(dá)到警示客戶的目的。

07ab9d4e-1660-11ee-962d-dac502259ad0.png

2.1. 主動(dòng)屏蔽特定的 warning

在有些場(chǎng)景,我們還可以在特定的代碼或者文件作用域內(nèi),主動(dòng)屏蔽特定的warning。

例如,工程中寫了一個(gè)測(cè)試函數(shù)“void MyTestFunction(void)”,但是在工程中暫時(shí)沒(méi)有被調(diào)用,直接編譯會(huì)得到“Wunused-function”的 warning。

但是如果在代碼中添加這樣的語(yǔ)句:

#pragma GCC diagnostic ignored "-Wunused-function"。

/*此區(qū)間內(nèi),如果出現(xiàn)函數(shù)僅申明,但是沒(méi)有被調(diào)用時(shí),編譯不產(chǎn)生warning*/voidMyTestFunction(void){…}

#pragma GCC diagnostic pop

因?yàn)槲覀兣渲昧恕?Wunused-function”,那么在編譯時(shí),即使 MyTestFunction 沒(méi)有被調(diào)用,編譯也不產(chǎn)生 warning。

我們還可以在 STM32CubeIDE 中,通過(guò)“Help”->“Information Center”->“Read STM32CubeIDE Documentation”->“C/C++ Compiler”,找到 GCC 編譯器文檔,從而發(fā)現(xiàn)更多的 warning 選項(xiàng),根據(jù)需要主動(dòng)屏蔽更多的 warning。見(jiàn)圖 3 :

07e032f2-1660-11ee-962d-dac502259ad0.png

3. 小結(jié)

事實(shí)上,在編譯項(xiàng)目時(shí),warning 和 error 同樣重要,部分隱蔽的問(wèn)題可能就和warning 相關(guān)。當(dāng)我們對(duì)工程代碼和編譯器有了更深層次的了解后,可以巧妙地使用和屏蔽 warning,幫我們更好地管理項(xiàng)目。

完整內(nèi)容請(qǐng)點(diǎn)擊“閱讀原文”下載原文檔。

080f357a-1660-11ee-962d-dac502259ad0.png

長(zhǎng)按掃碼關(guān)注公眾號(hào)

更多資訊,盡在STM32

點(diǎn)擊“閱讀原文”,可下載原文檔


原文標(biāo)題:應(yīng)用筆記|巧用 STM32CubeIDE 之編譯警告

文章出處:【微信公眾號(hào):STM32單片機(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。


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

    關(guān)注

    6078

    文章

    45590

    瀏覽量

    673939
  • STM32
    +關(guān)注

    關(guān)注

    2313

    文章

    11195

    瀏覽量

    374741

原文標(biāo)題:應(yīng)用筆記|巧用 STM32CubeIDE 之編譯警告

文章出處:【微信號(hào):STM32_STM8_MCU,微信公眾號(hào):STM32單片機(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    【正點(diǎn)原子STM32N647開(kāi)發(fā)板試用】+ 上電測(cè)試

    基于STM32cubeide開(kāi)發(fā)的,所以各位你要先安裝相關(guān)的IDE包括STM32cubeideSTM32cubeMX。這樣才能編輯和編譯相關(guān)代碼。此外還要搭配下載器,STlink和j
    發(fā)表于 01-31 12:14

    常見(jiàn) MCU 開(kāi)發(fā)環(huán)境對(duì)比:Keil、IAR、VS Code 該選誰(shuí)?

    開(kāi)發(fā)環(huán)境對(duì)比表,幫助你快速掌握。01STM32系列主要IDE:STM32CubeIDE、KeilMDK、IAREWARM特點(diǎn):官方支持STM32CubeMX生成初
    的頭像 發(fā)表于 01-09 19:03 ?2056次閱讀
    常見(jiàn) MCU 開(kāi)發(fā)環(huán)境對(duì)比:Keil、IAR、VS Code 該選誰(shuí)?

    意法半導(dǎo)體:STM32CubeMX將不再集成到STM32CubeIDE

    實(shí)際集成后會(huì)出現(xiàn) 性能低下 、跨操作系統(tǒng) 穩(wěn)定性差 和 更新包龐大 等問(wèn)題。因此我們應(yīng)該讓STM32CubeIDE回歸本源,繼續(xù)專注于 編輯/編譯/調(diào)試 等核心功能。 STM
    的頭像 發(fā)表于 09-01 17:18 ?3943次閱讀

    求助,關(guān)于NanoEdge AI Studio生成的庫(kù)交叉編譯器版本疑問(wèn)求解

    20231009\", 那么問(wèn)題來(lái)了,怎么在NanoEdge AI Studio設(shè)定交叉編譯器呢,比如設(shè)置為armcc、armclang、iccram,因?yàn)槲倚枰獙?kù)加到keil或者iar工程里面。 看樣子這個(gè)軟件生成的庫(kù)是arm-gcc編譯的,那它只能用于官方的
    發(fā)表于 08-08 07:25

    STM32 CubeIDE編譯、運(yùn)行(燒錄程序)的快捷鍵是什么?

    CubeIDE編譯、運(yùn)行(燒錄程序)的快捷鍵是什么?
    發(fā)表于 07-25 07:04

    stm32cubeide官網(wǎng)賬號(hào)登錄一直顯示登錄失敗是怎么回事?

    stm32cubeide官網(wǎng)下載軟件需要登錄賬號(hào),今天突然登錄不了,且不能找回密碼。
    發(fā)表于 07-23 07:52

    STM32CubeIDE報(bào)錯(cuò)編譯STM32MP135(Projects\\STM32MP135C-DK\\External_Loader)的原因?

    _1.18.1/STM32CubeIDE/plugins
    發(fā)表于 07-11 06:19

    使用STM32CubeIDE調(diào)試STM32MP157D的M4內(nèi)核時(shí)報(bào)了下圖這個(gè)錯(cuò)誤,怎么解決?

    我使用STM32CubeIDE調(diào)試STM32MP157D的M4內(nèi)核時(shí)報(bào)了下圖這個(gè)錯(cuò)誤: 經(jīng)過(guò)我的排除后發(fā)現(xiàn),應(yīng)該是STM32CubeIDE上傳&quot
    發(fā)表于 06-18 06:57

    安裝STM32CUBEIDE時(shí)提示Error launching installer,為什么?

    安裝STM32CUBEIDE時(shí)提示Error launching installer,我的電腦設(shè)置的是中文簡(jiǎn)體,殺毒軟件也推出了,怎么才能安裝軟件?
    發(fā)表于 06-18 06:06

    請(qǐng)問(wèn)stm32cubeide中如何查看版本日志?

    stm32cubeide中如何查看版本日志?看能支持哪些芯片型號(hào)?
    發(fā)表于 06-09 07:44

    stm32cubeIDE使用malloc失敗是什么原因?

    我在stm32cubeIDE環(huán)境下,已經(jīng)分配了足夠的棧與堆空間,但是我在的使用malloc分配內(nèi)存時(shí),一直分配不成功,這是什么原因?
    發(fā)表于 06-09 07:24

    GPDV6624C應(yīng)用筆記1.0版

    電子發(fā)燒友網(wǎng)站提供《GPDV6624C應(yīng)用筆記1.0版.pdf》資料免費(fèi)下載
    發(fā)表于 06-06 17:20 ?0次下載

    請(qǐng)問(wèn)STM32CubeIDE能直接在軟件中升級(jí)嗎?

    STM32CubeIDE能直接在軟件中升級(jí)嗎?
    發(fā)表于 06-06 07:40

    stm32cubeIDE使用malloc失敗是什么原因?

    我在stm32cubeIDE環(huán)境下,已經(jīng)分配了足夠的棧與堆空間,但是我在的使用malloc分配內(nèi)存時(shí),一直分配不成功,這是什么原因?
    發(fā)表于 06-04 07:18

    請(qǐng)問(wèn)STM32CubeIDE能直接在軟件中升級(jí)嗎?

    STM32CubeIDE能直接在軟件中升級(jí)嗎?
    發(fā)表于 05-14 06:06
    乾安县| 山西省| 固镇县| 绥芬河市| 南江县| 开化县| 全南县| 亚东县| 德阳市| 南陵县| 巧家县| 江油市| 板桥市| 青铜峡市| 绥宁县| 台东县| 玉田县| 五寨县| 满城县| 濉溪县| 乌什县| 千阳县| 建平县| 梁河县| 玉田县| 正镶白旗| 榆中县| 阳泉市| 桂东县| 赤城县| 宝兴县| 柳州市| 隆林| 四平市| 元阳县| 壶关县| 渭南市| 太仆寺旗| 廊坊市| 乌兰县| 中阳县|