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