使用LabVIEW加速基于ARM的嵌入式系統(tǒng)開發(fā)
大量嵌入式系統(tǒng)——從醫(yī)療設(shè)備到消費(fèi)電子——都需要為那些昂貴的、低功耗的微控制器設(shè)計(jì)軟件。當(dāng)?shù)?strong>功耗是主要設(shè)計(jì)目標(biāo)時(shí),ARM是一種主流的硬件設(shè)計(jì)的微控制器結(jié)構(gòu)。事實(shí)上自1991年來,已經(jīng)有100多億ARM處理器應(yīng)用到嵌入式系統(tǒng)中。開發(fā)基于ARM的嵌入式系統(tǒng)時(shí),若采用用于ARM微控制器的NILabviewEmbeddedModule,可以幫助提高效率,而且使用LabVIEW中所提供的高級(jí)抽象功能還可以保證軟件的高質(zhì)量。
[+]放大圖片
圖1.LabVIEW采用高級(jí)的抽象功能,簡化了低功耗ARM硬件的算法設(shè)計(jì)。
利用兼容性和更多的通信選項(xiàng)
用于ARM微控制器的LabVIEWEmbeddedModule支持ARM7、ARM9和Cortex-M3結(jié)構(gòu),并且為ARM7和Cortex-M3控制器提供硬件評(píng)估選項(xiàng)。最新的軟件版本即1.1版本,增加了對KeilMCB2460評(píng)估板(擁有一個(gè)32MB的外部RAM)的兼容性,以幫助設(shè)計(jì)更大更復(fù)雜的ARM應(yīng)用系統(tǒng)。
嵌入式系統(tǒng)需要使用一系列協(xié)議在各種通信總線上進(jìn)行數(shù)據(jù)通信。CAN是一種用于多個(gè)應(yīng)用領(lǐng)域(包括自動(dòng)化設(shè)備和醫(yī)療設(shè)備)的常見總線技術(shù)。在1.1版本中增加了對CAN的支持,從而對現(xiàn)有的通信選項(xiàng)(如I2C)進(jìn)行了擴(kuò)展。另外,因?yàn)槿缃窨梢垣@得網(wǎng)絡(luò)發(fā)布的共享變量,所以你可以容易地設(shè)計(jì)一些嵌入式應(yīng)用系統(tǒng),通過TCP/IP協(xié)議在整個(gè)網(wǎng)絡(luò)上讀寫共享變量,然后進(jìn)一步與其他系統(tǒng)(如NICompactRIO控制器)進(jìn)行通信。
圖2.憑借LabVIEW評(píng)估硬件所提供的高起點(diǎn),開發(fā)人員可以迅速原型化系統(tǒng)。
使用預(yù)設(shè)的構(gòu)造規(guī)范配置進(jìn)行最優(yōu)化
就好像你為桌面PC或者PXI開發(fā)一個(gè)應(yīng)用程序一樣,當(dāng)你采用用于ARM微控制器的LabVIEWEmbeddedModule進(jìn)行開發(fā)時(shí),將創(chuàng)建一個(gè)圖形化程序。然而,當(dāng)將應(yīng)用系統(tǒng)配置到ARM硬件上時(shí),將會(huì)發(fā)現(xiàn)一個(gè)明顯的不同。LabVIEW生成相應(yīng)于LabVIEW應(yīng)用程序的ANSIC代碼,然后采用Keilμ版本的C編譯器對所生成的代碼進(jìn)行編譯,接著再將這些代碼下載到硬件上,最后只需運(yùn)行虛擬儀器就可以了。項(xiàng)目的構(gòu)造規(guī)范指引LabVIEW來生成并編譯C代碼,再使用LabVIEW和μ版本來,從二進(jìn)制代碼長度、代碼可靠性或執(zhí)行時(shí)間等方面來優(yōu)化所生成的嵌入式應(yīng)用程序。
用于ARM微控制器1.1版本的LabVIEWEmbeddedModule采用預(yù)設(shè)的構(gòu)造規(guī)范配置(用于優(yōu)化代碼長度或速度),使得代碼優(yōu)化更為簡易。如果選中一個(gè)不相容的構(gòu)造規(guī)范選項(xiàng),則構(gòu)造規(guī)范窗將會(huì)提示有沖突出現(xiàn),這樣你可以根據(jù)應(yīng)用系統(tǒng)的要求創(chuàng)建出有效、可靠的嵌入式代碼。
評(píng)論