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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7256|回復: 0
打印 上一主題 下一主題
收起左側

嵌入式軟件開發編譯器的流行趨勢: GCC-ARM

[復制鏈接]
跳轉到指定樓層
樓主
ID:90014 發表于 2015-9-14 15:48 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
一般來說,程序的編譯要經歷預處理、編譯、匯編以及連接4個階段。無論是 C/C++ C# JAVA,還是各家PLC程序指令,最終都要轉化為CPU
的機器碼執行指令,各種語言工具都是實現功能需求的手段,在不同的場合,需要使用不同的工具:嚴格要求的場合或關鍵代碼,可使用匯編;
操作系統和驅動層使用C編程,中間件或應用層可使用C/C++ C# JAVA編程, 一般工廠自動化場合,可以使用PLC語言編程(屬二次開發)。

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

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頁的技術參考手冊,就能自動生成STM32F103/407底層固件庫
的源文件和頭文件,以及各模塊的初始化代碼,并輸出工程包。

stm32cubemx 4.7.1插件下載地址(可在windows環境下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

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

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

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

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

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

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


診斷-忽略:(關閉警告)
#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

二、新手學習STM32官方例程,可安裝以下軟件

TrueSTUDIO_for_ARM_Lite_win32_v5.3.0_20150316-1058.exe



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 黄在线免费观看 | 亚洲精品高清视频 | 日本成人免费观看 | 欧美中文字幕一区二区三区亚洲 | 成人免费淫片aa视频免费 | 亚洲va国产日韩欧美精品色婷婷 | 久久午夜精品福利一区二区 | 成人免费在线网 | 久久综合久 | 午夜视频在线观看网站 | 国产一区二区三区四区三区四 | av电影一区二区 | 欧美一级精品片在线看 | www.狠狠干| 久久国产精品久久国产精品 | 欧美寡妇偷汉性猛交 | 国产精品免费在线 | 欧美成人免费在线 | 视频1区2区 | 亚洲精品九九 | 夜夜精品浪潮av一区二区三区 | 99免费在线观看视频 | 亚洲一区二区 | 久久精品亚洲 | 免费在线播放黄色 | 国产成人精品久久二区二区 | 视频第一区| 97精品超碰一区二区三区 | 欧美久久一级特黄毛片 | 日日夜夜草 | 成人妇女免费播放久久久 | 91免费在线 | 免费中文字幕日韩欧美 | 91精品国产综合久久久久久蜜臀 | 国产一区在线视频 | 精品中文字幕一区 | 日本精品一区二区三区在线观看视频 | 国产久| 龙珠z在线观看 | 国产999精品久久久影片官网 | 国产伦精品一区二区三区四区视频 |