久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標(biāo)題: 嵌入式軟件開發(fā)編譯器的流行趨勢: GCC-ARM [打印本頁]

作者: jialinx    時間: 2015-9-14 15:48
標(biāo)題: 嵌入式軟件開發(fā)編譯器的流行趨勢: GCC-ARM
一般來說,程序的編譯要經(jīng)歷預(yù)處理、編譯、匯編以及連接4個階段。無論是 C/C++ C# JAVA,還是各家PLC程序指令,最終都要轉(zhuǎn)化為CPU
的機(jī)器碼執(zhí)行指令,各種語言工具都是實現(xiàn)功能需求的手段,在不同的場合,需要使用不同的工具:嚴(yán)格要求的場合或關(guān)鍵代碼,可使用匯編;
操作系統(tǒng)和驅(qū)動層使用C編程,中間件或應(yīng)用層可使用C/C++ C# JAVA編程, 一般工廠自動化場合,可以使用PLC語言編程(屬二次開發(fā))。

GCC(GNU Compiler Collection)是一套功能強(qiáng)大、性能優(yōu)越的編程語言編譯器。GCC-ARM是GCC的一個分支,主要用于嵌入式平臺中。
對于常用的Cortex-M3/M4,使用GCC-ARM是流行趨勢?梢园惭b一個Eclipse IDE for C/C++ Developers,利用免費的GCC-ARM編譯器
完成所有的嵌入式開發(fā)工作。

Eclipse IDE for C/C++ Developers
32位 下載地址:
http://mirror.hust.edu.cn/eclips ... -luna-SR2-win32.zip
64位 下載地址:
http://mirror.neu.edu.cn/eclipse ... R2-win32-x86_64.zip

在Eclipse IDE中,可以安裝stm32cubemx 4.7.1插件,不用查看1200-1700頁的技術(shù)參考手冊,就能自動生成STM32F103/407底層固件庫
的源文件和頭文件,以及各模塊的初始化代碼,并輸出工程包。

stm32cubemx 4.7.1插件下載地址(可在windows環(huán)境下32位eclipse IDE中運行):
http://www.st.com/st-web-ui/stat ... y/stsw-stm32095.zip

stm32cubemx 4.7.1下載地址(在windows中獨立運行):
http://www.st.com/web/en/catalog/tools/PF259242
http://www.st.com/st-web-ui/stat ... ite/stm32cubemx.zip

當(dāng)然stm32cubemx 4.7.1輸出的工程,可以覆蓋到Eclipse IDE for C/C++ Developers中的一個工程文件夾中,不用調(diào)試就可以成功編譯。
對于一個公司來說,不用付錢買昂貴的商業(yè)軟件,無盜版風(fēng)險,無后顧之憂,又能培養(yǎng)高手。

GCC編譯器的警告輸出信息
編譯器的報錯和警告信息對于程序員來說是非常重要的信息,GCC包含完整的出錯檢查和警告提示功能,它可以幫助程序員盡快找出錯誤的或
潛在的錯誤代碼,從而寫過更優(yōu)美的代碼。  

GCC還提供了許多以-W開頭的選項,允許用戶指定輸出某個特定的警告,例如:

-Wcomment:出現(xiàn)注釋嵌套時發(fā)出警告。
-Wconversion:如果程序中存在隱式類型轉(zhuǎn)換,則發(fā)出警告。
-Wformat:檢查printf和scanf等格式化輸入輸出函數(shù)的格式字符串和參數(shù)類型的匹配情況,如果發(fā)現(xiàn)不匹配則發(fā)出警告。
-Winline:如果函數(shù)不能被內(nèi)聯(lián),則發(fā)出警告。
-Wlong-long:如果使用了long long型數(shù)據(jù),則發(fā)出警告。
-Wmain:如果main函數(shù)的返回類型不是int型,或者調(diào)用main函數(shù)時使用的參數(shù)數(shù)目不正確,則發(fā)出警告。
-Wmissing-declarations:如果定義了全局函數(shù),但卻沒有在頭文件中聲明,則發(fā)出警告。
-Wparentheses:在某些情況下,如果忽略掉了括號,則會發(fā)出警告。
-Wreturn-type:如果函數(shù)定義了返回類型,而默認(rèn)類型是int型,編譯器會發(fā)出警告。
-Wuninitialized:如果使用的自動變量沒有被初始化,則發(fā)出警告。
-Wundef:如果在#if宏中使用了未定義的變量做判斷,則發(fā)出警告。
-Wunused:如果聲明的變量或static型函數(shù)沒有使用,則發(fā)出警告。

變量(代碼)級:指定某個變量警告
int a __attribute__ ((unused));
指定該變量為"未使用的".即使這個變量沒有被使用,編譯時也會忽略則個警告輸出.

文件級:在源代碼文件中診斷(忽略/警告)
#pragma GCC diagnostic ignored "-Wunused-parameter"
#pragma GCC diagnostic ignored "-Wmissing-declarations"
#pragma GCC diagnostic ignored "-Wreturn-type"  


診斷-忽略:(關(guān)閉警告)
#pragma  GCC diagnostic ignored  "-Wunused"
#pragma  GCC diagnostic ignored  "-Wunused-parameter"

診斷-警告:(開啟警告)
#pragma  GCC diagnostic warning  "-Wunused"
#pragma  GCC diagnostic warning  "-Wunused-parameter"

診斷-錯誤:(開啟警告-升級為錯誤)
#pragma  GCC diagnostic error  "-Wunused"
#pragma  GCC diagnostic error  "-Wunused-parameter"

https://gcc.gnu.org/onlinedocs/gcc/Diagnostic-Pragmas.html



一、Eclipse IDE for C/C++ Developers由以下安裝包組成:

1.Eclipse IDE for C/C++ Developers
Version:  Luna Service Release 2 (4.4.2)

32位 下載地址:
http://mirror.hust.edu.cn/eclips ... -luna-SR2-win32.zip
64位 下載地址:
http://mirror.neu.edu.cn/eclipse ... R2-win32-x86_64.zip


2.gcc arm 編譯器

文件名稱: gcc-arm-none-eabi-4_9-2015q1-20150306-win32.exe
下載地址: https://launchpad.net/gcc-arm-em ... -20150306-win32.exe


3.GNU ARM Eclipse Plug-ins

文件名稱: ilg.gnuarmeclipse.repository-2.8.1-201504061754.zip
下載地址: http://ncu.dl.sourceforge.net/pr ... .1-201504061754.zip

4.gnuarmeclipse-build-tools-win32
文件名稱: gnuarmeclipse-build-tools-win32-2.4-201503242026-setup.exe
下載地址: http://ncu.dl.sourceforge.net/pr ... 503242026-setup.exe

二、新手學(xué)習(xí)STM32官方例程,可安裝以下軟件

TrueSTUDIO_for_ARM_Lite_win32_v5.3.0_20150316-1058.exe








歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 播放一级黄色片 | 欧美精品一区三区 | 九九热精品在线 | 亚洲欧美在线观看 | 欧美日韩精品一区二区三区四区 | 五月激情六月婷婷 | 国产成人精品a视频一区www | 一区二区三区网站 | 久久精品国产精品青草 | 麻豆国产精品777777在线 | 在线资源视频 | 久久国产成人 | 久久精品国产99国产精品 | 日本三级做a全过程在线观看 | 亚洲天天干 | 一区二区三区视频在线 | av天天干| 久久精品国产一区二区三区 | 久久国产成人 | 久久亚洲综合 | 福利片在线观看 | 欧美不卡一区二区三区 | 色综合久久88色综合天天 | 国产成人综合网 | 黄a免费看 | 国产免费av网 | 国产一区二区三区免费视频 | 中文字幕视频在线观看 | 欧美日韩一区二区视频在线观看 | 欧美不卡一区二区 | 精品av| 日本不卡免费新一二三区 | 国产精品久久久久久久午夜 | 亚洲精品大全 | 欧美一区二区免费 | 日韩在线免费 | 日韩欧美亚洲 | 81精品国产乱码久久久久久 | 久久国产精品视频免费看 | 日本理论片好看理论片 | 日本aa毛片a级毛片免费观看 |