新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于ARM7的RTU微控制器的設計

基于ARM7的RTU微控制器的設計

作者: 時間:2011-02-14 來源:網(wǎng)絡 收藏

3 軟件整體層次結(jié)構(gòu)

中的程序有應用程序、μC/OS-II 操作系統(tǒng)、文件系統(tǒng)、硬件驅(qū)動程序,整體層次關系如圖2。μC/OS-II 沒有提供硬件驅(qū)動程序的內(nèi)核接口和用戶接口,為了讓程序移植性好,需要對設備驅(qū)動程序按類型進行統(tǒng)一的封裝,提供統(tǒng)一的編程接口,使應用程序開發(fā)人員可以不考慮具體硬件的細節(jié)就可以編程。給上層應用程序提供統(tǒng)一的系統(tǒng)設備調(diào)用接口,需要對設備的訪問操作進行抽象,應用程序通過硬件驅(qū)動程序的上層訪問抽象接口來訪問底層硬件。驅(qū)動程序的借鑒了Linux 系統(tǒng)的成功經(jīng)驗,同時考慮到嵌入式操作系統(tǒng)的特殊性,為μC/OS-II 建立了如圖2 中所示的驅(qū)動框架模型。驅(qū)動主要分兩個層次:驅(qū)動程序的上層訪問抽象接口和硬件設備驅(qū)動層。

(1)上層訪問抽象接口層:這層包括抽象接口和設備管理核心數(shù)據(jù)兩部分。通過對設備訪問操作的抽象,為上層應用提供了5 個訪問接口API 函數(shù): Open、Read、Write、Ioctrl、Close,用于打開、讀、寫、控制和關閉設備。設備管理核心數(shù)據(jù)結(jié)構(gòu)是驅(qū)動框架的核心,為系統(tǒng)中的每個硬件設備分配唯一的設備名,上層應用程序通過將設備名作為參數(shù)傳遞給API 函數(shù)實現(xiàn)對相應設備的核心管理數(shù)據(jù)結(jié)構(gòu)的定位尋址,實現(xiàn)對設備的統(tǒng)一訪問控制。

(2)硬件設備驅(qū)動模塊層:這層是硬件設備驅(qū)動模塊功能的實現(xiàn)層,對各個硬件設備的驅(qū)動在相應的硬件設備驅(qū)動模塊中完成。分別完成設備的打開、讀、寫、控制和關閉功能。

為了使程序具有良好的可讀性、可維性,采用了結(jié)構(gòu)化程序方法,即自頂向下,逐步求精的程序方法和單入口單出口的控制結(jié)構(gòu),從問題本身開始,經(jīng)過逐步細化,將解決問題的步驟分解為由基本程序結(jié)構(gòu)模塊組成的結(jié)構(gòu)化程序框圖,使每一個模塊的功能變單純而明確,為下一步軟件的功能擴充和修改打下了良好的基礎。

4 功耗的管理設計

4.1 外設的功耗管理

功耗管理,除CPU 核的控制外,還要保證外設在需要使用時及時上電,使用完后立即關閉,從而達到降低功耗的目的。對外設的功耗管理通過IO 輸出口來控制MOS 管的通斷,從而打開或關斷外部設備的電源。

通信電臺的功耗最大,占系統(tǒng)耗電量的比例大,需要嚴格的計算控制。電臺設備從上電啟動到關閉分三個階段:上電啟動階段T1,數(shù)據(jù)發(fā)送階段T2,等待數(shù)據(jù)發(fā)送階段T3。

(1)設備上電的時機: 信道編碼后,需要發(fā)送數(shù)據(jù)時打開。

(2)設備啟動時間T1:設備從上電到可以發(fā)送數(shù)據(jù)需要一個過渡時間,具體的時間值與設備有關,需要看具體設備的手冊。

(3)數(shù)據(jù)發(fā)送時間T2:這里的數(shù)據(jù)發(fā)送時間是指數(shù)據(jù)通過串口發(fā)送出去的時間,當數(shù)據(jù)從串口發(fā)出后,程序會返回一個數(shù)據(jù)發(fā)送完畢的信息,T2 時間由接口設備自動控制。

圖3 通信設備功耗控制示意圖



評論


相關推薦

技術(shù)專區(qū)

關閉