近年來,電子技術的迅猛發展使PDA、MP4、高端手機等電子產品已經走進尋常百姓生活中。人們對這些產品的要求越來越高,而在MP4上實現GPS衛星導航功能,可以使持有者在享受音樂、圖片、電影、網絡通訊、郵件等娛樂功能之外,又多一個實用功能。通過把GPS (Global PositionSystem-全球定位系統)導航系統嵌人到MP4中,可以實現交通導航,衛星定位,獲得星歷時間,也可以放置在車輛中用于車載導航,并可為出游者提供掌上電子地圖等。本文以法國某公司的一款MP4 (愛可視AV700)為原型來說明將GPS導航系統嵌人到MP4硬件平臺的系統原理、結構、軟件模塊化設計及實現過程。 1 系統硬件要求 AV700型MP4中的核心芯片TMS320DM270是一款基于多處理器架構,并集成有DSP和ARM7RISC處理器的雙核結構。其中80MHz ARM7TDMI32位RISC微控制器作為整個系統的主控制器.以滿足控制和接口方面的處理需要。該控制器具有一級緩存(8 K字節)和片上程序/數據存儲器(32K字節),TI公司的90 MHz DSP芯片可編程TMS320C54 XTM則具有片上程序/數據存儲器(128 K字節),可用于處理音頻編碼與解碼。 TMS320DM270集成有專門用于高計算量要求的可編程協處理器,其中SIMD圖像處理引擎(iMX)可執行DCT、反向DCT以及眾多其它處理運算中的運動估計與補償。其它協處理器則執行可變長度編碼/解碼、量化與逆量化等。 該器件帶有用于實時查看和數字放大的預覽引擎(Preview Engine)、用于DSC系統的硬件像素預處理器、多功能屏幕顯示(OSD)、彩色LCD數字接口、支持高達64MB和32/16位接口的120MHz SDRAM、用于NTSC/PAL混合視頻輸出的10位DAC、8/16位數字RGB/YUV輸出、串行音頻編解碼接口(McBSP)、USB1.1功能控制器設備等,另外,ARM7還有一個JTAG接口,并提供了一個功能完善的調試手段。TMS320DM270以其強大的處理能力和多媒體性能可以滿足將CPS導航功能嵌入到MP4設備的需要。 綜上考慮,用嵌入式系統實現該GPS導航系統是一個上佳選擇。AV700的核心芯片是TMS320DM270應用處理器,輔之以一定的外部設備,構成一個功能完整的系統。 2 GPS系統原理和結構 整個GPS系統南空間衛星、GPS模塊和用戶設備三部分組成。空間部分即GPS衛星群,由21顆定位衛星和3顆備份衛星組成。這些衛星可以覆蓋全球,從而使地球上任何一點基本上都可以接收到4顆星的衛星信號,從而實現三維定位和測速。GPS模塊部分是接收衛星信號,并經過調制分離出經緯度、高度、速度和時間等信息,最后通過串口發送到數字處理芯片進行處理。用戶設備則通過接收衛星信號來實現自身定位,并通過預裝在芯片中的電子導航地圖實現路標指示,以引導使用者到達目的地。 圖1所示一個GPS導航系統的總體結構組成框圖。其中用戶設備部分有以下幾個模塊組成:GPS接收模塊、數字信號處理模塊、按鍵輸入模塊、液晶屏和音頻輸出模塊等組成。 核心硬件電路模塊以TMS320DM270處理器為核心和必要的附加設備組成,其結構如圖2所示。內存采用64 MB的SDRAM。為保證運算空間足夠大,系統還配置了64 MB的Flash閃存以用于存儲操作系統、應用程序和數據。此外還配置了相關的接口電路。 GPS模塊和TMS320DM270之間通過串口(U-ATR)進行通信。由于GPS導航系統被嵌入到MP4上,而實現定位導航功能只是增加了MP4的一個輔助功能,所以,本系統通過擴展按鍵來輸入鍵盤信號,以控制MP4功能的切換。 該軟件可在主機上開發,然后通過USB接口將程序和數據下載到系統中。 3 軟件模塊的設計與開發 本系統的軟件設計模塊如圖3所示。該軟件以電子地圖分析模塊和數據庫為中心,包括GPS模塊、通訊模塊以及顯示和聲音輸出模塊。 數據庫中記錄著各種地理信息和數據。事實上,整個城市可以看成一個以各路口和轉折點為節點的有向圖。各路段可用折線段表示,并可設立各轉折點的經緯度坐標,然后分配一定的“屬性字段”。當打開MP4且處于GPS接收狀態時,系統將由GPS模塊接收和分析衛星信號,同時計算當前的經緯度、速度、方向等數值,以得到MP4持有者在電子地圖上的當前位置。若能定時記錄位置移動情況,就可以在LCD上顯示直觀的運行路線。此外,可以得到精確的星歷時間,以便為出行、旅游提供極大的方便。 對于導航系統的軟件,考慮到uCLinux已經在90%以上的MP4中采用,而且uCLinux的開放性特點使得很大一部分軟件可以免費進行移植修改,這樣就可以節約大量的授權費用,許多Lin-ux高手也已經開發出非常豐富的應用數據包,如網絡瀏覽、電子郵件、游戲、個人事務處理甚至GPS電子地圖等。如果可以得到他們的支持,就能節省很多開發時間。所以本設計采用uCLinux作為操作系統,用Hitool for uCLilux作為軟件開發工具。其開發流程如圖4所示。 Hitool for uCLinux是Hitool System公司的開發套件,整個開發過程可以在Windows環境下完成,并采用JTAC方式來調試。這種方式可以調試內核和驅動程序,同時也可以調試應用程序。在硬件平臺(基于ARM7處理器)建立后,可以通過仿真器將已經準備好的uCLinux內核(linux.elf)下載到RAM上。可以像調試一個普通的嵌入式程序一樣調試Linux內核,再編譯生成“合身”的操作平臺(linux_bootrom.bin),最后燒錄到Flash中。 該系統軟件編譯好后,便可通過USB口把編譯好的軟件下載到目標板的文件中。經調試運行正常,即可投入試用,并可以開發新的功能。 4 結束語 GPS是當今世界應用最廣泛的導航定位系統,無論在車載導航系統還是在手持式導航設備,特別是在PDA、MP4、高端手機等電子產品中,用高速處理器和強大的多媒體功能來實現衛星導航,具有其廣闊的發展空間。 |