IAR推出IAR Systems的開發(fā)工具
為什么要選擇IAR Embedded Workbench?
我們?yōu)槭裁匆艞壥蛊渌鞣N用免費(fèi)的開發(fā)工具,而選擇需要支付費(fèi)用來購買IAR Systems的開發(fā)工具?主要包括一下幾點(diǎn)原因:
1. IAR Embedded Workbench可以生成節(jié)省空間并且穩(wěn)定可靠的可執(zhí)行代碼
經(jīng)過反復(fù)實(shí)驗(yàn)證明,IAR Systems的C/C++編譯器可以生成高效可靠的可執(zhí)行代碼,并且應(yīng)用程序規(guī)模越大,效果明顯。與其他的工具開發(fā)廠商相比,系統(tǒng)同時使用全局和針對具體芯片的優(yōu)化技術(shù)。連接器提供的全局類型檢測和范圍檢測對于生成目標(biāo)的代碼的質(zhì)量是至關(guān)重要。
IAR Systems一貫使用精簡的優(yōu)化技術(shù)--基于我們最新技術(shù)架構(gòu)的,針對AVR的IAR Embedded Workbench4.10B版,生成的代碼的尺寸比3.20A版縮小了10%,遠(yuǎn)遠(yuǎn)小于其他同類編譯器生成的代碼尺寸(更為具體的評測結(jié)果近期將會公布)。IAR Embedded Workbench生成的可以執(zhí)行代碼可以運(yùn)行于更小尺寸、更低成本的為處理器之上,從而降低產(chǎn)品的開發(fā)成本。
由于我們在微處理器C/C++編譯器設(shè)計(jì)方面的豐富經(jīng)驗(yàn),目前沒有任何一家公司的產(chǎn)品可以接近我們公司針對8位、16位、32位處理器生產(chǎn)的30多種不同C/C++編譯器的水平。
2. 代碼尺寸決定產(chǎn)品成本
為什么小就意味著完美?因?yàn)榫o縮的代碼,就說明它可以很好的運(yùn)行在更小、更便宜的芯片上!假設(shè)公司要生產(chǎn)10,000設(shè)備,而每一臺因?yàn)槭褂昧烁〕叽缣幚砥鞯脑O(shè)備可以節(jié)省2美元,這對公司來說將是一筆很客觀的收入。
產(chǎn)品的成本對于設(shè)計(jì)部門來說不是最先考慮的因素也不是開發(fā)工具的任務(wù),但是它確實(shí)產(chǎn)品或銷售經(jīng)理最感興趣的內(nèi)容。
3、為產(chǎn)品的擴(kuò)展留有余地
尺寸小不僅僅意味著廉價,它也為各種附加的功能留下的充足的擴(kuò)展空間。假設(shè)你的客戶中途需要為他們的產(chǎn)品設(shè)計(jì)增加一些新的功能特性,而在這個階段再去選擇另一款芯片是不可行的。這時,IAR Systems提供的高效的編譯器加上代碼檢測服務(wù)為公司在最終期限之前完成任務(wù)提供了可能。我們應(yīng)該清楚這種情況在我們以前的工作中會經(jīng)常遇到。
4、開發(fā)者可以完全依賴IAR Systems所提供的工具
忽略項(xiàng)目的最終期限,開發(fā)者需要依靠一些可靠的開發(fā)工具來完成任務(wù)。未能按時完成進(jìn)度會給項(xiàng)目帶來不便,而惡性循環(huán)將會導(dǎo)致所有進(jìn)度安排的拖延,后果變得十分嚴(yán)重。IAR Embedded Workbench被認(rèn)為是一款穩(wěn)定可靠的開發(fā)工具:它緊密結(jié)合Atmel ICE 2000和Atmel JTAG ICE,同時去處了耗時的通信問題;它提供連續(xù)的工作流,使開發(fā)者可以專心于項(xiàng)目的開發(fā),而不比為工具帶來的問題而煩惱。
5、集成的開發(fā)環(huán)境提供了連續(xù)的工作流
IAR Embedded Workbench是一套完整的集成開發(fā)工具集合:包括從代碼編輯器、工程建立到C/C++編譯器、連接器和調(diào)試器的各類開發(fā)工具。它緊密結(jié)合了Atmel ICE 2000和Atmel JTAG ICE,使用戶在開發(fā)和調(diào)試過程中,僅僅使用一種開發(fā)環(huán)境。
6、僅用10步—從設(shè)想變?yōu)楝F(xiàn)實(shí)®
除上述的幾點(diǎn)之外,在IAR Embedded Workbench,IAR Systems還提供了visualSTATE®和IAR MakeApp®兩套圖形開發(fā)工具幫助開發(fā)者完成應(yīng)用程序的開發(fā),它可以根據(jù)設(shè)計(jì)自動生成應(yīng)用程序代碼和自動生成驅(qū)動程序,使開發(fā)者擺脫這些耗時的任務(wù)同時保證了代碼的質(zhì)量。詳細(xì)信息請參閱http://www.iar.com/網(wǎng)站的相關(guān)內(nèi)容。
7、IAR Systems是一個全球化的公司
不論的你的客戶在哪里,IAR Systems都可以為其提供完善的技術(shù)支持和設(shè)計(jì)服務(wù)。而對與大型的公司,他們可以從我們的全球計(jì)劃中獲利,同時也可以參與我們提供的VIP計(jì)劃。
8、IAR Systems對AVR充滿信心
針對AVR的IAR Embedded Workbench產(chǎn)品多種多樣。它包括許多令人興奮的新特性:對AVR JTAGICE mkII的調(diào)試支持;對C++和C++模板的擴(kuò)展支持;IAR C-SPY®調(diào)試其對STL容器的識別;對MISRA C的支持;OSEK運(yùn)行時接口(ORTI);預(yù)定義的工程模板等等。后續(xù)發(fā)布的版本將會包含更多的分支、改進(jìn)的優(yōu)化技術(shù)以及更多新的特性。
9、AVR和IAR Embedded Workbench相互合作共同開發(fā)
AVR微處理器家族是一個Atmel和IAR Systems合作設(shè)計(jì)項(xiàng)目的結(jié)晶。從來沒有一家芯片生產(chǎn)商和軟件開發(fā)商這樣緊密的合作過,從而使得芯片的每一位的設(shè)計(jì)都充分發(fā)揮了C語言的能力。AVR很早以前就開始使用IAR嵌入式開發(fā)平臺中提供的C編譯器,而IAR Systems相應(yīng)的也使其相關(guān)的產(chǎn)品可以適應(yīng)AVR的全部特性。
EWAVR 4.10B的突出特性
* 可??糠绞降囊晥D窗口管理
可??康拇翱谑勾翱诘牟季止芾硎趾唵巍4翱诳梢员环胖迷谝幌盗械倪x項(xiàng)夾頁面中。
* 集成的源碼控制系統(tǒng)
IAR Embedded Workbench可以使用微軟發(fā)布的SCC(Source Control Code)標(biāo)準(zhǔn)接口,可以檢測并訪問第三方提供的源碼控制系統(tǒng)。
* 支持MISRA C
MISRA C是汽車工業(yè)軟件可靠性聯(lián)合會(MISRA)定義了一套為提高安全可靠性的C語言編程方案標(biāo)準(zhǔn)。IAR Embedded Workbench目前可以自動檢測這個標(biāo)準(zhǔn)中的絕大部分規(guī)則。詳細(xì)的信息請參閱IAR Embedded Workbench MISRA C Reference Guide。
* IAR擴(kuò)展EC++支持
* 支持C++模板
* 支持標(biāo)準(zhǔn)模板庫(STL)
* 命名空間(Namespace)支持
* 支持C++所有的內(nèi)存屬性
* 支持類內(nèi)存,多重堆等
* 支持C++的cast變量的,包括static_cast<>, const_cast<>, 以及reinterpret_cast<>
* 支持多變性
* AVR的JTAGICE mkII調(diào)試器
新的版本EWAVR支持AVR的JTAGICE mkII,不過僅僅可以使用串口與主機(jī)通信。但是用戶可以通過與IAR System簽訂合同的方式來獲取一個可以通過USB口與主機(jī)通信的升級版本。
* 源代碼瀏覽器
瀏覽器通過建立函數(shù),變量,宏定義以及成員函數(shù)的目錄索引,方便用戶查找定位任意一個聲明或者定義。
* 增強(qiáng)的上下文相關(guān)幫助
改進(jìn)的在線幫助系統(tǒng)提供一個基于HTML的友好的用戶界面。幫助系統(tǒng)在對標(biāo)準(zhǔn)函數(shù)提供幫助信息的同時,也對編輯器中擴(kuò)展的關(guān)鍵和庫函數(shù)提供了高效的幫助檢索。
* 易于配置的C/EC++函數(shù)庫
新的版本中,DLIB C/EC++函數(shù)庫被劃分為兩個不同配置方案:標(biāo)準(zhǔn)配置和完全配置。并且,每一個版本都可以再進(jìn)行更進(jìn)一步的配置以達(dá)到功能和尺寸的最優(yōu)平衡。用戶可以修改函數(shù)庫的配置和單獨(dú)的源代碼文件,從而完成對函數(shù)庫的細(xì)節(jié)化調(diào)整工作。同時,系統(tǒng)提供完整的源代碼和模板方便用戶重新編譯CLIB和DLIB函數(shù)庫。
* 支持OSEK運(yùn)行時接口(ORTI)
ORTI接口描述一種為調(diào)試器提供OSEK系統(tǒng)的全部內(nèi)部寄存器信息的標(biāo)準(zhǔn)方法。通過該接口,新版本中的C-SPY可以在任意一款ORTI兼容的操作系統(tǒng)上提供更為完善的調(diào)試工作。
* 調(diào)試過程中STL容器的靈活顯示
STL容器中的所有的對象都可以被顯示和操作。
* 新增的多種調(diào)試信息窗口
* 自動顯示窗口
* 實(shí)時監(jiān)視窗口
* 跟蹤窗口
* 可用的斷點(diǎn)窗口
* 啟動畫面
在打開或者新建工程的時候,IAR Embedded Workbench可選擇性地顯示一個啟動畫面。而新的工程將建立在一個基于快速啟動的模板之上。
* 模板工程
在建立一個工程時,用戶可以選擇使用一個現(xiàn)有的工程模板。工程模板可以是一個C,C++,匯編或者函數(shù)庫的工程。同時,在開發(fā)過程中模板工程也可以用來預(yù)制一個工程的配置。
* 編譯器的優(yōu)化
改進(jìn)的優(yōu)化方法可以使用戶的代碼獲得更高的執(zhí)行效率和更小的使用尺寸。
* 與二進(jìn)制映像直接連接
連接器可以直接連接二進(jìn)制映像文件,為與多媒體文件之類的較大尺寸的二進(jìn)制文件的連接提供了方便。
* XLINK的范圍的校驗(yàn)和
XLINK現(xiàn)在可以產(chǎn)生任意數(shù)量的校驗(yàn)和,而每個校驗(yàn)和可以是由任意范圍的內(nèi)存內(nèi)容產(chǎn)生的。關(guān)于這個新增功能的信息可以參閱Checksums and Fillers (-H -J -h)。通過使用連接器命令行選項(xiàng)頁來指定具體的校驗(yàn)和選項(xiàng)。
* 改進(jìn)的調(diào)試器插件管理
增加了對所有可用插件的全局視圖,可用激活/禁止任何一個單獨(dú)的插件功能。
* 重新整理的用戶手冊
重新整理的用戶手冊以及編譯器參考,加入了對新增特性的詳細(xì)描述。同時改進(jìn)的文檔結(jié)構(gòu)和索引方式,使用戶可以更為方便閱讀相關(guān)的內(nèi)容。
* 支持新型的設(shè)備
加入了對以下新型設(shè)備的支持:ATtiny25,ATtiny45,ATtiny85,ATmega406,ATmega640, ATmega1280,ATmega1281。
評測結(jié)果
IAR Embedded Workbench for Atmel AVR 4技術(shù)突破!
這個評測比較了一下兩種編譯其生成代碼和CONST的總尺寸:
* IAR Systems EWAVR v4.10B
* GNU avr-gcc 3.4.1
測試結(jié)果顯示GNU avr-gcc 3.4.1的生成代碼的平均總尺寸要比EWAVR 4.10B.生成的代碼的平均總尺寸高出68%。
評測代碼樣例——下面的代碼樣例,基本上涵蓋了嵌入式相關(guān)所有應(yīng)用領(lǐng)域。它們將被用于本次評測:
bfix 向一個無符號字符指針?biāo)赶虻淖址當(dāng)?shù)組中插入或提取位
信息的程序
bittest 位操作
blowfish Blowfish算法
bt_stack 嵌入式協(xié)議棧
decrypt 解碼被加密多媒體信息的程序
fibo Fibonacci評測
gsm_efr GSM增強(qiáng)全速率(EFR)編碼、解碼程序
modeit 基于TCP/IP的因特網(wǎng)應(yīng)用程序
patricia Patricia trie算法的插入、刪除節(jié)點(diǎn)以及IP地址和子網(wǎng)掩碼搜索
函數(shù)
red-sol Reed Solomon編碼算法
regexp 正則表達(dá)式搜索器。用來在字符串中搜索指定字符模式
spiro 用戶自定義應(yīng)用程序,肺活量檢測儀。檢測肺部吸收、排放、
以及使用空氣的情況,以便監(jiān)測肺部疾病的發(fā)生
struct 其他結(jié)構(gòu)的訪問
susan 圖像處理軟件,偵測未認(rèn)證車輛的輪廓位置
temp_disp 用戶自定義應(yīng)用程序
whets Whetstone評測程序
評測結(jié)果:
IAR中國代理商:北京麥克泰軟件技術(shù)有限公司(www.bmrtech.com)
c語言相關(guān)文章:c語言教程
c++相關(guān)文章:c++教程
評論