羅一平 于津 屈宏峰
摘要:隨著我國科學技術不斷發展,當今具有人機接口的嵌入式系統的應用也愈加廣泛。ARM單片機嵌入式系統能夠實現實時采集、處理信息,還能夠提升系統運行的安全性、穩定性,降低系統設計成本。基于此,本文重點探究基于ARM單片機的嵌入式系統設計方案。
關鍵詞:ARM單片機;嵌入式系統;設計;方案
一、引言
在信息產業不斷發展背景下,人們對人機接口嵌入式系統的需求量也不斷增加。在過去,ARM單片機嵌入式系統多數都是由國外引進,并且價格不菲。隨著我國科學技術不斷發展,我國所開發的ARM單片機嵌入式系統性能已經有了很大進步,可以實時采集、檢測系統設備運行要求,并且組態更加靈活、成本更低,設計系統框架體系經過了多輪優化設計,已經十分完善。嵌入式系統的中心是應用系統,以計算機為載體,進行軟硬件優化組合配置,可以同時對系統功能、成本、體積、功耗、可靠性進行管控,由于嵌入式系統的核心是應用系統,所以在硬件和軟件設計當中必須要以應用作為核心,從而保證ARM單片機嵌入式系統的性能。
二、基于ARM單片機的嵌入式系統硬件設計
(一)硬件結構組成
在嵌入式系統設計當中,首先需要考慮應用系統的運行要求,并全面考慮性能、成本、可擴展性、開發時間等各方要求,明確系統的主要控制元器件,從而設計硬件平臺框架。整個系統當中包括主控芯片、高性能電能計量芯片、存儲模塊、CAN模塊等,同時配有擴展接口,可以實現功能擴展。硬件系統內部應用電能檢測芯片,可以檢測各個元器件運行的電流和電壓,做好元器件各項參數運行的計量工作,具有精度高、實時性強等優勢,硬件系統結構如圖1。
(二)系統功能
該系統的功能表現在:①可見檢測系統電池充電、放電信號檢測與計量;②檢測連接設備的運行狀態,如果超出閾值會自動報警;③對元器件的荷電狀態、健康狀態進行計量評估;④檢測電池組漏電情況;⑤通信系統檢測;⑥人機交互功能,顯示被檢測對象的實時運行參數,還可以設置各個系統功能狀態,實現信息數據的上傳與下載。
三、基于ARM單片機嵌入式系統的軟件設計
(一)軟件系統設計理念
軟件核心是以一個可移植、固化、裁剪、剝奪的多任務內核,在實際應用開發中,要在上述所設計的硬件中成功移植。軟件內核在編寫當中要重點考慮可移植性,采用C語言編寫,將處理器相關代碼集中到OS–CPU、H.OS–CPU–A、ASM.OS–CPU–C.C三個文件中,結合硬件上特性對這些文件改寫,即可實現移植。在移植后,即可開展編程工作。采用RTOS軟件,將面向功能應用開發轉變成為面向任務的應用開發,將整個系統任務劃分為若干個子任務,然后實現每個任務要求,確定各個任務的優先級。如果系統對實時性操作要求非常高,需要編寫中斷服務程序。
(二)系統功能
在系統運行當中,要初始化系統,創建新的任務。所創建的任務設定為就緒形態,系統操作中會自動調用優先級的任務,并逐漸解決低級任務,保證現行運行的任務優先于其他沒有處理的任務。在實際運行當中某個任務因為意外事件被延時、掛起,或者有更高優先級任務進入到了系統當中,則系統會停止當前任務,處理最優先級的任務。如果系統中斷,此時會中斷服務程序,在中斷返回過程中,系統會自動展開任務調度,將最優先級任務轉化為運行狀態。
如控制系統當中出現了母線電壓AD采用中斷,程序自動進入到母線電壓AD中斷程序;中斷程序之后向郵箱發送母線電壓AD采樣參數,由于任務在就緒等待期間在郵箱中被掛起,所以此時任務狀態被轉化為就緒狀態。中斷返回中,內核自主進行任務調度,由于是系統內部是最優先級任務處于就緒狀態,所以無論哪個系統任務被中斷,都會運行最優先級任務,確保任務系統的響應速度滿足標準。在系統運行一個循環之后,會因為等待郵箱緣故轉化為掛起狀態,內核繼續調度,最先調度就緒狀態中的最優先任務。
四、系統開發設計
為了能夠保證系統運行的實時性,系統開發可以采用RTOS系統(實時操作系統)。該系統可以分為可剝奪內核與不可剝奪內核,由于商用多數都是采用可剝奪內核,所以本文重點探究可剝奪實時操作系統。實時操作系統會將任務劃分為多個子任務,并分為不同的優先級,將不同優先級的任務分配到不同模塊、棧空間。通常每個任務在結構上都是無限循環模式,可以實現多種狀態,包括就緒狀態、休眠狀態、運行狀態、掛起狀態、中斷狀態。系統始終讓優先級系統運行,中斷服務可以搶占CPU,待到中斷服務程序完畢之后,此時系統會自動處理最優先級任務。該開發模式可以優化系統的響應時間。最主要的是將面向功能形式轉化成為了面向任務的形式,整個系統操作邏輯結構更加簡單。再加上應用了實時操作系統,讓軟件底層硬件不可見,將過去雙層軟件系統轉化成為了三層架構,這樣更有助于未來系統的軟件功能拓展以及硬件升級。軟件操作系統采用較強的內核,如μC/OS–Ⅱ,該系統性能非常高支持上百個任務同時進行,提升了系統服務性能。
五、結束語
綜上所述,隨著我國科學技術不斷發展,當今ARM單片機嵌入式系統在各個領域中的應用十分廣泛。在ARM單片機嵌入式系統設計中,要重點考慮硬件、軟件設計以及系統開發,這樣才能夠保證整個系統的運行效率與可靠性,發揮ARM單片機與系統效能。
參考文獻
裴文祥,姚鑫,李超.基于ARM單片機的嵌入式系統設計[J].集成電路通訊,2015(1):112–113.
高夢龍.探究基于ARM單片機的觸摸屏嵌入式系統設計[J].通訊世界,2017(17):966–968.