a一级爱做片免费观看欧美,久久国产一区二区,日本一二三区免费,久草视频手机在线观看

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 基于EP7211構建通用嵌入式處理平臺

基于EP7211構建通用嵌入式處理平臺

作者:■ 解放軍信息工程大學 卜佑軍\河南工業大學 李清麗\河北臨城縣第二中學 李文風 時間:2005-03-04 來源:電子設計應用2004年第12期 收藏

摘    要:本文介紹了的通用處理平臺的設計,該平臺適用于開發便攜式電子產品。文中具體闡述了系統的硬件構成、軟件平臺選取和系統的初始化過程。這些設計原則具有普遍性,適合于一般的嵌入式系統開發。
關鍵詞:

本文引用地址:http://www.j9360.com/article/4539.htm

引言
目前,已經普遍應用于工控領域,構建一個可以方便更換的通用嵌入式處理器模塊,既便于設計又便于維修、使用,可以提高工作效率,同時節省資金投入。

軟硬件選用
本通用嵌入式處理平臺主要是用于開發便攜式電子產品,此類產品不僅要求功能完備、用戶界面友好、操作方便簡潔,而且要求壽命長、功耗低。這就要求在設計初期從硬件和軟件兩個方面來考慮,具體來說就是要從嵌入式處理器、實時操作系統和電路形式等幾個方面來綜合選取。
嵌入式處理器的選用
在便攜式通信、便攜式計算機、多媒體數字消費和需要嵌入式解決方案的市場中,ARM的微處理器核心正在迅速成為RISC計算設計的標準,越來越多的廠家選擇心處理器開發自己的下一代產品。在本通用開發平臺中選用Cirrus Logic公司的嵌入式微處理器作為CPU,該器件是專為低成本、超低功耗的應用設計的。
電路形式的選用
一種方案是在通用模塊中設置盡可能全的功能,但在工控應用領域中,將所有功能全部用上的場合并不多,因此,功能太全只能是浪費,并會加長開發周期。本平臺的板卡電路由CPU、程序存儲器Flash、RAM、CPU輔助電路(如晶振、復位)和電源電路構成,特殊功能可由特殊模塊自行設計。
將嵌入式處理器EP7211、Flash、Dram、串口和電源電路作為一個通用模塊,數據、地址總線、空閑的I/O和其他的外圍接口信號做成標準的接口插座。如果要實現以太網接口或液晶顯示等功能,只需要做以太網相關模塊的電路,并將其與EP7211相關的信號做成和通用模塊匹配的接口即可。這樣既減少了調試CPU、內存等部分電路的重復勞動,也有利于電路故障的排除。
實時操作系統的選用
以嵌入式處理器為中心,當搭建好硬件電路時僅提供了裸機運行平臺,要使整個系統中有限的硬件資源充分利用起來,還需要嵌入式實時操作系統的軟件支持。針對本項目,的選擇有兩個方案:一是使用已經購買的用在油田測井系統SL3000型產品的商用Nucleus;二是使用自主開發的、專門面向嵌入式應用系統的XGW軟件開發平臺。
在本通用開發平臺中采用了XGW平臺,這是因為XGW開發平臺是自主研發的,軟件產品升級和故障排除等都比較容易,產品成本費用相對較低。另外,EP7211嵌入式處理器和XGW的組合,在“GPS汽車導航系統”和“鐵路交通信息系統PDA”項目中已經獲得了成功應用,具有較成熟的開發經驗。
XGW嵌入式操作系統針對以ARM7為內核的硬件平臺來進行系統開發,用C語言實現完成,并借鑒了Windows的消息驅動機制。XGW功能強大、模塊化設計、擴展性強、產品升級容易,其總體框架如圖1所示。XGW軟件開發平臺包括事件消息驅動機制(XGW軟件開發平臺中的消息分為鼠標消息、鍵盤消息和定時器消息等三類)、內存管理、字符和圖形顯示輸出、圖形組件庫等。圖形組件庫中的編輯框、列表框、按鈕、進度條等圖形控件為用戶應用程序開發提供了應用編程接口API。不過,XGW平臺對于系統硬件的中斷響應沒有提供統一的入口和出口,需要開發人員單獨處理。

通用模塊的設計
本系統的通用模塊主要包括嵌入式處理器、DRAM和非易失性存儲器如ROM或FLASH、電源電路、CF卡接口、彩色LCD顯示器接口、以太網接口和串行接口等。系統的結構框圖如圖2所示。
圖中各部分的主要功能為:紅外(IrD)接口用來完成便攜式系統之間的無線數據交換;串行接口用于程序和數據的下載及進行軟件升級;傳呼譯碼芯片用來接收個人傳呼及公共信息;LCD和觸摸屏提供顯示和輸入的人機界面;Flash RAM與SRAM用于存儲程序和數據,為程序運行提供緩存;電源電路可將電池或外加電源變換為嵌入式處理器和外圍電路所需要的3.3V、2.5V和5V;CF卡用作大容量存儲器;以太網接口用于跟計算機或其他模塊進行通信;MP3播放器用于播放MP3音樂。

通用模塊的初始化
由于嵌入式系統的資源有限,程序通常都是固化在ROM中運行。ROM中的程序在執行前需要由啟動程序建立軟件運行環境,主要包括:對系統硬件進行初始化,將出錯中止程序或重啟動的程序段由ROM拷貝到RAM中;在RAM中創建主程序運行時使用的堆棧和數據區;建立C程序運行的環境,如對段寄存器和堆棧指針初始化、對靜態變量和RAM區清零、建立堆(heap);設置必要的中斷向量,并將每個未使用的中斷指向一個只含RET指令的啞函數,以防止錯誤中斷引起系統的混亂。另外,雖然字符串等常數與程序一起固化在ROM中,系統運行時主程序可以訪問它們,但RAM的存取速度比ROM快,因此串數據也應在程序執行前被拷貝到RAM中,以提高讀出速度。為了提高執行速度、方便地存取各寄存器,啟動程序由匯編語言來編寫。
啟動程序是嵌入式程序的開頭部分,應該與應用程序一起固化在EPROM中,并在系統加電后首先執行。具體步驟如下:
1. 設置入口指針
應用程序首先必須定義入口指針,而且整個應用程序只有一個入口指針。
2.設置中斷向量
ARM7要求中斷向量表必須設置在從0地址開始,連續8



評論


相關推薦

技術專區

關閉