關於MDK和IAR的恩恩怨怨

2021-06-21 14:53:09 字數 2105 閱讀 9766

軟體的編輯需要文字編輯器,編譯需要編譯器,彙編需要彙編器,鏈結需要編譯器,可執行檔案需要軟體工具來載入檔案,同時軟體還需要一些函式庫,中介軟體等。為了使開發更便捷,簡單,幾乎所有的mcu

晶元都會有對應的整合開發環境(ide

stm32

主流的整合開發環境有兩種:iar

和mdk

。我在這裡不想討論哪一種ide

好,談論這個沒有意義,就像你認為版主多優秀,但是版主依然單身;你認為這個人多蛋疼,他卻有鮮花默默的陪伴在身邊,所以沒有好與不好,只有喜歡與不喜歡,適合與不適合。如果你是一名剛接觸stm32

的同學,我將發揮我媒婆的本色,為你分別介紹下這兩款開發環境,看看有沒有相中的,如果沒有,我就無能為力,請你自己尋覓吧;如果你是一名老鳥,也許下面的介紹會讓你移情別戀也說不定。

無論mdk

還是iar

,功能都很強大,除非有些比較特殊需求之外,基本上都能滿足日常的工作和學習。兩者的區別這處,可能會主導我們比較傾向於選擇哪乙個。

1、mdk

是keil公司的產品,keil公司的整合環境,我們學習的51微控制器的開發環境就是keil c,所以上手很容易,ide

中的各個功能很容易找到,再加上大量的中文出版圖書都使用了keil,因此,其中文資料相當豐富,對於英語稍差的童鞋,絕對是乙個不錯的選擇;iar

對於大多數網友們來說使用的並不多,所以需要一段時間的學習和適應,而且最近其更新的加密措施,原有的和諧程式無法使用了,對於初學者來說,造成了不少的麻煩。

2、 mdk的文字編輯與iar的文字編輯,自我感覺都不怎麼樣,相對於source insight的文字,差的太遠了(順便吐槽)。即使最新版的兩者開發環境在文字編輯器方面都做了改善,但bla~~ bla~~

3 、mdk的工程管理和平常用的vc,keil c,pic等開發環境沒有多大的區別,而iar的工程管理檔案,採用了層疊的技術,更容易理清**的層次,方便工程管理,這事iar的亮點。兩者的檔案管理檢視如下:

4、 mdk的預設工具欄工具多,方便查詢;iar的工具欄的工具比較少,看起來是乾淨整潔了,用到的時候就不太方便了。兩者都支援外部工具鏈的呼叫。

5、 mdk的源程式的最後一行要是空行,否則就會有乙個警告:warning: #1-d: last line of file ends without a newline,類似與unix的gcc的c語言規範;而iar則不需要最後一行是空格。

6、 iar有eclipse 外掛程式,可以使用eclipse進行開發。

7、 iar的優化效率較高,code-data**區較小,而mdk的rw-data區較小。採用同一段程式,分別採用mdk和iar開發環境,在不同的優化級別下,得到了如下的資料:

mdk 開發環境

優化級別

code data memory

ro data memory

rw data memory

zi-data memory 0

2032

252 0

608 1

1888

252 0

608 2

1876

252 0

608 3

1872

252 0

608

iar開發環境

優化級別

code data memory

ro data memory

rw data memory

none

2208 84

8708

low2176 84

8708

medium

992 84

8708

high

952 84

8708

無論使用哪種開發環境都應該將該環境熟練使用,對其配置引數、功能要理解透徹,對其提供的庫函式要熟悉,對該程式設計環境支援的c或者c++**的規範要深入理解。最後一句,兩者的說明文件都是非常全面,英語好的話,千萬不要差過。

Keil和MDK的安裝與共存

keil c51的安裝 這個編譯器是51系列用的,可以用於開發stc89c52,stc12c5a系列,at89c51系列等微控制器。mdk5.10的安裝 這個編譯器主要用於arm系列的微控制器開發,stm32的官方庫檔案就是用這個軟體寫的。安裝到你的安裝目錄下即可。序號產生器 關於keil c51和...

關於ARM的開發環境IAR工程的配置問題

1設定路徑使iar能夠自動關聯你的標頭檔案 a 將自己的標頭檔案 c檔案 s檔案放在不同的檔案當中。此處的.c檔案和.s檔案以及標頭檔案都是開始乙個專案所必須有的檔案。例如每乙個專案都需要對uart串列埠,定時器timer以及arm系統時鐘的配置和arm的引腳初始化配置等 比如標頭檔案所在的檔案名字...

細數研究生和導師的那些恩怨情仇

閱讀本文大概需要 5 分鐘。去年有個新聞大家應該都聽說過,在武漢有一所學校,裡面有乙個碩士生導師,和他的學生有一些矛盾,事情經過大概是這樣的,這老師對某位性格軟弱的學生極其嚴苛,整天對其呼來喚去,每天讓他幫自己端茶送飯。這樣忍受了幾年之後,這位同學最終不堪受辱,選擇了結束自己年輕的生命,這真是個悲劇...