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