歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

[Cortex-A9開發板]迅為Exynos4412開發板擴展GPS應用的方法

 
利用GPS定位衛星,在全球范圍內實時進行定位、導航的系統,稱為全球衛星定位系統,簡稱GPS。
GPS導航系統的組成如下:
1、路徑引導:引導用戶沿著所規劃的路徑行駛;
2、人機接口:提供友好的界面允許用戶與系統進行人機交互;
3、無線通訊模塊:允許用戶與監控中心等部門實時交換信息;
4、電子地圖數據庫:包含以預定格式存貯的數字地圖信息,是系統的軟件平台;
5、地圖匹配模塊:通過適當的匹配和識別過程來確定車輛在地圖上的位置;
6、路徑規劃:根據地圖數據庫及實時定位信息幫助駕駛員規劃路線;
7、定位模塊:通過GPS、慣性導航系統或移動通信等方法對車輛進行定位。
 
結合實際的軟硬件結構,本系統分成了四個層:最底層為硬件平台層,包含了ETX嵌入式CPU模塊以及必要的傳感器/子模塊。
 
上面三層為軟件層,其中設備驅動層在硬件平台和操作系統之間充當橋梁的作用,為上一層提供了與硬件設備無關的統一接口;Android系統層提供庫函數、應用程序接口、任務調度機制等為用戶程序提供支持;應用軟件層是用戶自行開發的程序,這裡主要包括電子地圖和導航應用程序,也是本系統的核心部分。
 
下面從硬件和軟件兩方面來對系統進行介紹。
 
一、系統硬件
 
Exynos 4412是當前流行的三星四核處理器,目前已被廣泛應用於消費電子、工業控制、醫療器械、儀器儀表等行業。它強大的性能以及出色的穩定性贏得嵌入式行業廣泛贊譽。
 
下面對恩智浦低功耗單芯片GNS7560 A-GPS解決方案做下簡單介紹。
 
恩智浦GNS7560是小巧、功耗極低、並且系統成本很低的GPS解決方案。 它采用90 NM工藝架構,包含一個高性能CMOS RF前端以及相關器引擎,大大降低了系統成本和功耗。先進的電源管理模式將地圖更新的功耗減少到每秒13mW,大大低於其它GPS方案。GNS7560的外封裝尺寸不到9 mm2,是現有最小的GPS芯片,當與恩智浦蜂窩系統解決方案7210相整合時,亦不失為最小的整體解決方案。
與其它GPS解決方案不同,GNS756可根據信號強度、多通道與速率,自動調整跟蹤靈敏度,從而提供一流的采集與跟蹤靈敏度和首次定位時間(TTFF),即使是在人口密集的市區,如所謂“城區峽谷(urban canyon)”,也能確保室內縱深(deep-indoor)的靈敏度和可靠覆蓋的精確度。
GNS7560通過串口和處理器4412進行通訊,把搜到的衛星信號及時間等信息傳給處理器,相應的電路原理圖如下所示:

 
在天線側需要增加LNA(低噪聲放大器電流),如圖所示:

為了增加信號強度,抑制雜散信號干擾,最好增加聲表面帶通濾波器,原理如下圖:

這樣,處理器4412就可以和GPS芯片一起正常工作了。在實際應用中,硬件PCB布線和抗干擾屏蔽是特別需要關注的問題的。
這裡結合實際調試經驗,給出幾點建議,希望給大家帶來一些幫助:
1、天線分為有源和無源天線兩種。對於有源天線,需要在電路中增加電源,通過一個電感接到天線側,這樣可以給有源天線供電。需要說明的是,在使用有源天線時,電路原理圖可以去掉LNA電路,因為這部分電路在天線中已經存在了。
2、在PCB布線時一定要注意50歐姆阻抗設計,這對於天線信號的強度是有很大影響的。
3  對於GNS7560以及LNA和濾波電路,最好放在屏蔽罩中,並遠離數字信號區域,以防止電路干擾所帶來的信號損耗。
 
二、系統軟件
對於android系統,GPS軟件的架構如下:

頭文件定義在:hardware/libhardware/include/hardware/gps.h,定義了GPS底層相關的結構體和接口。
測試整個系統時,可打開android配套的測試軟件,如下圖:

 
 
 
 
 
Copyright © Linux教程網 All Rights Reserved