MCU進(jìn)入高速發(fā)展階段 軟件開(kāi)發(fā)百花齊放
中國(guó)MCU正進(jìn)入自2011年以來(lái)開(kāi)始的快速發(fā)展階段。有數(shù)據(jù)顯示,2012年中國(guó)MCU市場(chǎng)營(yíng)業(yè)收入已經(jīng)達(dá)到35.3億美元,略高于2011年的34.9億美元。到2016年,中國(guó)MCU市場(chǎng)將達(dá)到49.5億美元,年復(fù)合增長(zhǎng)率為7.3%。這其中以ARM核為代表的32位MCU成長(zhǎng)最快,同時(shí)嵌入式物聯(lián)網(wǎng)設(shè)備應(yīng)用的MCU也在迅速增加,這為MCU軟件開(kāi)發(fā)平臺(tái)提出了新的要求。
開(kāi)發(fā)平臺(tái)呈現(xiàn)新趨勢(shì)
開(kāi)發(fā)工具集成了軟件中間件,隨著MCU應(yīng)用軟件需求的增加,除了編譯、調(diào)試和集成開(kāi)發(fā)環(huán)境外,開(kāi)發(fā)工具還包含了RTOS(實(shí)時(shí)多任務(wù)操作系統(tǒng))、文件系統(tǒng)、TCP/IP、USB和GUI等軟件中間件的支持,比如ARM keil 工具一直以來(lái)在不斷豐富自己的軟件庫(kù),如新增USB和CAN總線(xiàn)協(xié)議等。目前ARM工具全面捆綁在MCU市場(chǎng)頗具影響力的μC/OS RTOS,并以開(kāi)發(fā)者坐席方式銷(xiāo)售和授權(quán),大大降低了用戶(hù)使用μC/OS的費(fèi)用。
目前開(kāi)發(fā)工具還增加了軟件工程、代碼分析和軟件測(cè)試特性。嵌入式軟件代碼量和復(fù)雜性不斷增加,以汽車(chē)電子和航空航天為代表的電子系統(tǒng)的許多關(guān)鍵部件也多基于MCU設(shè)計(jì)而成,MCU軟件開(kāi)發(fā)也正面臨著復(fù)雜性和可靠性的挑戰(zhàn)。Atollic TrueSTUDIO開(kāi)發(fā)工具,既有針對(duì)MCU優(yōu)化的編譯、調(diào)試和集成開(kāi)發(fā)環(huán)境,還有內(nèi)置的復(fù)雜性管理功能,它可以減少開(kāi)發(fā)者的負(fù)擔(dān),以保持代碼重用。并且,它還提供包括軟件測(cè)試、MISRA C檢查和軟件度量功能,擁有動(dòng)態(tài)代碼分析和自動(dòng)化測(cè)試等工具。
嵌入式與移動(dòng)互聯(lián)網(wǎng)開(kāi)發(fā)融合
基于智能手機(jī)的移動(dòng)互聯(lián)網(wǎng)App(應(yīng)用軟件)已經(jīng)迎來(lái)發(fā)展的高潮。我們知道,基于Android和IOS的應(yīng)用軟件是使用了Java和Object C(類(lèi)似C++)編程語(yǔ)言,而MCU開(kāi)發(fā)語(yǔ)言目前還主要是C語(yǔ)言。隨著基于MCU物聯(lián)網(wǎng)設(shè)備日益成熟和普及,MCU端的開(kāi)發(fā)將與智能手機(jī)和云計(jì)算開(kāi)發(fā)融合在一起,采用統(tǒng)一的編程語(yǔ)言和接口的需求將逐漸提到日程上來(lái),以Java和C++為代表的面向?qū)ο蟮募夹g(shù)無(wú)疑將是最好的選擇。比較其他的互聯(lián)網(wǎng)編程語(yǔ)言(比如Python、Ruby、Javascript等),它們便于與C代碼融合和過(guò)渡。
ST公司2012年推出的STM32Java 是一套在STM32 MCU上開(kāi)發(fā)和運(yùn)行Java 應(yīng)用的完整解決方案,用戶(hù)花費(fèi)不多就可以獲得全套開(kāi)發(fā)工具、1年的技術(shù)支持和在STM32特定芯片的使用授權(quán)。Oracle公司收購(gòu)Sun獲得了Java知識(shí)產(chǎn)權(quán)后,也在不斷針對(duì)MCU優(yōu)化其Java技術(shù),推出了Java ME Embedded版本,它可以運(yùn)行在Cortex M3 MCU上。針對(duì)物聯(lián)網(wǎng)應(yīng)用的服務(wù)器端,Oracle還提供了Java Embedded Suite,這樣兩端的應(yīng)用都可以基于Orcale架構(gòu)進(jìn)行開(kāi)發(fā),充分發(fā)揮了Orcale在數(shù)據(jù)中心的優(yōu)勢(shì)。
總之,嵌入式系統(tǒng)因?yàn)槠渥陨c產(chǎn)品高度融合性和產(chǎn)品持久性,使得MCU軟件開(kāi)發(fā)還將繼續(xù)呈現(xiàn)出百花齊放的形式。一方面,傳統(tǒng)以基于C語(yǔ)言的MCU裸機(jī)開(kāi)發(fā)依然還是主流,但是代碼復(fù)雜性日益增加,對(duì)于開(kāi)發(fā)工具代碼分析和測(cè)試的需求越來(lái)越大。另一方面,隨著無(wú)線(xiàn)互聯(lián)需求增加,包括無(wú)線(xiàn)網(wǎng)絡(luò)協(xié)議在內(nèi)的軟件庫(kù)需求已經(jīng)顯現(xiàn)。Java開(kāi)發(fā)平臺(tái)將在無(wú)線(xiàn)互聯(lián)的消費(fèi)電子產(chǎn)品這樣的垂直市場(chǎng)試水,然后逐漸延伸到相關(guān)行業(yè)。
評(píng)論