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