基于嵌入式技術(shù)的靶場(chǎng)破片測(cè)速系統(tǒng)設(shè)計(jì)
ARM處理器與FPGA通過(guò)總線方式實(shí)現(xiàn)通信。FPGA作為一個(gè)外部存儲(chǔ)器掛載在ARM的存儲(chǔ)器總線上,這樣ARM處理器通過(guò)存儲(chǔ)器指令可直接訪問(wèn)FPGA,從而通過(guò)讀寫(xiě)FPGA的數(shù)據(jù)和控制寄存器實(shí)現(xiàn)對(duì)FPGA的控制和對(duì)數(shù)據(jù)的讀取。
ARM與FPGA接口如圖2所示。本文引用地址:http://m.butianyuan.cn/article/151014.htm
為了便于交互,系統(tǒng)配置了一塊5.7英寸帶觸摸屏的LCD顯示屏作為顯示控制設(shè)備,并且提供了USB口實(shí)現(xiàn)與主機(jī)通信。
通過(guò)試驗(yàn)測(cè)試,本系統(tǒng)能夠充分發(fā)揮ARM的強(qiáng)大處理能力和FPGA的并行處理能力,成功達(dá)到試驗(yàn)?zāi)康摹?/p>
2 系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)軟件結(jié)構(gòu)圖如圖3所示。
在設(shè)計(jì)具體應(yīng)用程序前首先要對(duì)操作系統(tǒng)進(jìn)行裁減。嵌入式Linux內(nèi)核,是一種完全開(kāi)源、功能強(qiáng)大的操作系統(tǒng)內(nèi)核,與時(shí)下流行的Wi-nce等嵌入式操作系統(tǒng)相比,其優(yōu)點(diǎn)之一就在于內(nèi)核的可裁減性,使用者完全能夠根據(jù)自己的需要對(duì)內(nèi)核進(jìn)行裁減,刪減去不必要的功能,完成自定義設(shè)計(jì)。本文經(jīng)過(guò)裁減后的內(nèi)核大小僅有1.2 MB,大大減少了對(duì)系統(tǒng)存儲(chǔ)空間的占用。
GUI為用戶提供了與應(yīng)用系統(tǒng)交互的可視化通道,在嵌入式軟件系統(tǒng)中占據(jù)重要地位。針對(duì)嵌入式設(shè)備資源有限的特點(diǎn),嵌入式GUI要求提供這樣一種交互接口,即它占用資源少且反應(yīng)迅速,具備高度的可移植性和可裁減性。目前國(guó)內(nèi)主流的嵌入式GUI系統(tǒng)有MINIGUI,MICRO WINDOW,Qt/Embedded等幾種,各有優(yōu)缺點(diǎn)。綜合比較各種GUI系統(tǒng)的優(yōu)劣,從GUI系統(tǒng)的封裝性、可移植性和系統(tǒng)設(shè)計(jì)的便捷性考慮,最終選取Qt/Embedded進(jìn)行GUI的設(shè)計(jì)。
Qt/Embedded(以下簡(jiǎn)稱Qt/E)是由著名的Trolltech公司專門(mén)針對(duì)pda等嵌入式移動(dòng)手持設(shè)備開(kāi)發(fā)的開(kāi)放源碼的一套應(yīng)用程序包和開(kāi)發(fā)庫(kù),具有可視化強(qiáng),界面美觀,類庫(kù)完善豐富,封裝性好的優(yōu)點(diǎn)。與其他嵌入式GUI系統(tǒng)相比,Qt/E開(kāi)發(fā)方便,尤其是Qt/E提供了一種類型安全的基于signal和slot的真正組件化編程機(jī)制,簡(jiǎn)化了編寫(xiě)過(guò)程,有助于開(kāi)發(fā)人員把握核心功能,使程序編寫(xiě)更加靈活;Qt/E程序可移植性強(qiáng),具有極好的跨平臺(tái)特性,完全可以“一處編寫(xiě),處處編譯”。許多基于計(jì)算機(jī)Qt的X Window程序在交叉編譯后都可以非常方便地移植為Qt/E版本,這樣完全可以在主機(jī)上完成程序開(kāi)發(fā),查看效果后經(jīng)交叉編譯直接在嵌入式設(shè)備上運(yùn)行,大大簡(jiǎn)化了開(kāi)發(fā)流程,節(jié)約了開(kāi)發(fā)時(shí)間。
3 嵌入式GUI程序?qū)崿F(xiàn)
3.1 Qt/E具體程序設(shè)計(jì)
系統(tǒng)在試驗(yàn)前需要根據(jù)現(xiàn)場(chǎng)情況進(jìn)行參數(shù)設(shè)置,尤為重要的是完成標(biāo)靶的分組設(shè)置:在同一方向上的兩個(gè)或多個(gè)標(biāo)靶分為一組,靶間距事先確定,同一破片將先后通過(guò)同組標(biāo)靶,產(chǎn)生觸發(fā)信號(hào),控制對(duì)應(yīng)通道計(jì)數(shù)器的計(jì)數(shù)起停。破片測(cè)速完成后,F(xiàn)PGA獲得的通道觸發(fā)計(jì)數(shù)值除以FPGA計(jì)數(shù)頻率即為通道的觸發(fā)時(shí)刻值。用同一標(biāo)靶組內(nèi)兩個(gè)相鄰標(biāo)靶之間的間距除以相鄰標(biāo)靶之間觸發(fā)時(shí)刻值的差值,即可得到破片在兩個(gè)標(biāo)靶之間的平均飛行速度。每個(gè)標(biāo)靶組可測(cè)得一組破片穿過(guò)本標(biāo)靶組時(shí)的速度值,通過(guò)進(jìn)一步的計(jì)算,可獲得破片的速度分布、速度降等參數(shù)。
根據(jù)系統(tǒng)測(cè)速過(guò)程,系統(tǒng)軟件的工作流程如圖4所示。
評(píng)論