《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 一種GPS移動設備的設計和實現
一種GPS移動設備的設計和實現
摘要: 文章以VS2005為軟件平臺,利用基于arm處理器的WinCE 5.0嵌入式開發平臺和GPS接收模塊,通過合理使用串口通信,實現了GPS數據信號的接收與解碼,并利用觸摸屏進行顯示,已基本具備GPS移動設備的雛形。
Abstract:
Key words :
 

  GPS是英文Global Positioning System(全球定位系統)的簡稱,而其中文簡稱為"球位系".GPS是20世紀70年代由美國陸海空三軍聯合研制的新一代空間衛星導航定位系統 .其主要目的是為陸、海、空三大領域提供實時、 全天候和全球性的導航服務,并用于情報收集、核爆監測和應急通訊等一些軍事目的,是美國獨霸全球戰略的重要組成。在機械領域GPS則有另外一種含義:產品幾何技術規范(Geometrical Product Specifications)-簡稱GPS.由于GPS技術所具有的全天候、高精度和自動測量的特點,作為先進的測量手段和新的生產力,已經融入了國民經濟建設、國防建設和社會發展的各個應用領域。如何設計一個帶有GPS功能的移動設備,實現對GPS衛星數據的接收和解碼,已經是現在CPS應用的熱點。

  1 開發平臺

  1.1 軟件平臺

  為適應大多數Windows用戶的使用習慣,我們設定移動設備運行環境為嵌入式操作系統Windows CE 5.0,開發過程在Windows XP操作系統下進行。開發軟件為Visual Studio 2005,編程語言為C++。VS2005是Windows操作系統下的一套完整的開發工具,用于生成ASP Web應用程序、XML Web services、桌面應用程序和移動應用程序。通過使用這些工具和.NETFramework精簡版,可以在個人數字助理(PDA)、移動電話和其他資源受約束的設備中,創建、生成、調試和部署在.NET Framework精簡版上運行的應用程序。

  WindowsCE是微軟公司嵌入式、移動計算平臺的基礎,它是一個開放的、可升級的32位嵌入式操作系統,是基于掌上型電腦類的電子設備操作系統,它是精簡的Windows 95,Windows CE的圖形用戶界面相當出色。Windows CE 被設計成針對小型設備(它是典型的擁有有限內存的無磁盤系統)的通用操作系統,Windows CE 可以通過設計一層位于內核和硬件之間代碼來用設定硬件平臺,這即是眾所周知的硬件抽象層(HAL)(在以前解釋時,這被稱為 OEMC (原始設備制造)適應層,即 OAL; 內核壓縮層,即 KAL. 以免與微軟的 Windows NT 操作系統 HAL 混淆) .

  1.2 硬件平臺

  1.2.1 嵌入式開發板

  由于設定移動設備使用的運行環境為WINCE 5.0,過程中需要處理大量的數據,所以對開發板要求較高。目前WinCE 5.0支持的處理器主要有ARM、X86、PowerPC、MIPS等,其中ARM是近年來在嵌入式系統中很有影響力的微處理器架構。考慮到本系統移動終端的體積、功耗、成本等因素,最后決定選用arm內核的處理器,開發板為光嵌公司的GEC2440,主要參數如表l所示。

GEC2440主要參數

  1.2.2 GPS接收模塊

  GPS接收模塊負責接收GPS射頻信號,將信號下變頻和解調,輸出標準的串口信號供處理器進行下一步處理。本設計中用到的GPS接收模塊為Levave公司的GPS-R36-AT模塊,性能參數如表2所示。該接收模塊主要包含基帶芯片和射頻芯片,采用了SIRF III模塊,整合片狀陶瓷芯片,無需外加天線,接收C/A碼衛星信號,輸出的信號為NMEA0183協議數據,通過串口與主設備進行通信。

GPS接收模塊性能參數

  2 整體設計

  設計主要依照GPS數據信號的流向來進行。GPS數據信號通過串口讀入到開發板主程序,然后經過對數據信號進行解碼獲得當前位置的經緯度信息,再在經緯度數據庫中查詢獲得當前位置的地名,整個過程由觸摸屏進行顯示,并通過觸摸屏完成人機交互。

  2.1 串口驅動

  Microsoft eMbedded Tools封裝了Windows API函數,便于Windows CE應用程序的開發。在Windows CE中,所有的設備都被看成是文件。串口通信可以像訪問普通文件那樣通過API通信函數來實現,系統的虛擬驅動程序負責執行特定的工作。在Windows CE下串行端口被視為用于打開、關閉、讀寫串行端口的常規可安裝的流設備,是串行設備接口的常規I/O驅動程序調用和與通信相關的具體函數的結合。Windows CE的通信函數和其它大多數Windows的通信函數相似,值得注意的是,Windows CE不支持直接對串行端口的寄存器進行編程。

  2.1.1 打開和關閉串口

  CreateFile函數用于打開串行口。m_hDSComm=CreateFile(_T("COM2:")),GENER2IC_READ|GENER IC_WR ITE,0,NULL,OPEN_EXISTIN-G,0,NULL)。注意COM2后面要有一個冒號。第三個參數dwShareMode也必須為O,通信端口不能像文件一樣被共享。最后一個參數dwFlagsAnd-Attributes必須為0,因為Windows CE只支持非重疊I/O。這個函數的返回值是已打開的串行端口的句柄或者是INVALLD_HANDLE_VALUE。關閉串口可以調用CloseHandle(m_hDSComm)。

  2.1.2 串口參數設置

  串口設置主要是用DCB構配置端口設置,包括波特率、停止位、數據位長度、校驗位、流量控制和超時值等等。首先打開串行端口,用GetCommState函數獲得當前打開的串口配置,然后根據需要修改DCB成員,最后用SetCommState函數設置新的串口配置。

  2.1.3 設置緩沖區大小和超時

  對串口來說,必須設置超時值,否則程序可能陷入到一個循環來等待來自串口的字符。這對采用WindowsCE的設備來說,將大大減少設備電池的使用時間,所以超時值是必須配置的。另外一種解決辦法就是采用多線程。通常,配置超時值和配置串口類似。首先用GetCommTi-meouts函數獲得當前串口的超時值,然后修改COM2MTIMEOUTS成員,最后用SetCommTimeouts函數設定超時值。

  2.1.4 讀寫串口

  利用ReadFile和WriteFile函數讀寫串口。需要注意的是Windows CE不支持重疊I/O,所以如果在主線程進行大量讀寫串口操作時,有可能使整個程序陷入緩慢的串口等待中去,因此一般都采用多線程來進行讀寫串口操作。

  2.2 GPS數據處理

  GPS數據處理模塊的設計方案如圖1所示。GPS接收模塊通過串口2將定位數據(NMEA0183 Ver2.0)傳給開發板,然后應用程序對數據進行處理。在VS2005中,直接利用串口通信方法將定位數據讀入,接著進行定位數據的分類,并提取出所需要的信息,同時將這些有用的信息傳給主應用程序,主應用程序再將GPS接收模塊的控制信息整理成NEMA0183 VER2.0語句。

GPS數據處理模塊設計方案示意圖

  2.3 信號接收與處理

  GPS接收到位置信號后,系統將對GPS的定位信息進行分解并提取出有用數據。GPS信號接收和處理的過程是:通過串口2將GPS輸出的數據傳遞給開發板,開發板主程序獲得目標當前的位置(經緯度坐標),將接收機獲得的GPS數據進行分解,從中得到目標當前的位置和格林威治時間(該時間加上8小時即為我國標準時間),再將當前位置在經緯度數據庫查詢,獲得當前的具體地點名。

  經緯度隨著開發板的移動是不斷變化的,在控件顯示時要設定一個TIMER來更新值,本程序設置的是1s,如果在實際應用中移動速度非常快的話可以把TIMER更新值設得更小。

  2.4 人機界面設計

  系統采用三星TFT顯示屏,分辨率為420×272。人機界面基本功能包括串口選擇控件、波特率選擇控件、經緯度顯示框、地點顯示框、“搜星”按鈕、“地點查詢”按鈕、文本框等,具體交互界面設計如圖2所示。串口和波特率兩個控件為串口選擇和波特率的選擇,其中串口選擇控件提供串口l和串口2進行選擇;波特率控件提供有三種設置,分別為4800、9600、19200。“搜星”按鈕為打開對應串口,開始從GPS接收模塊接收數據。“地點查詢”按鈕用來顯示當地的實際地點名,當搜到星后,按這個按鈕,通過查詢經緯度數據庫,就可以查到對應地名。最下面的文本框顯示原始的數據流。

  人機界面(Human–Machine Interaction,簡稱HMI),是人與計算機之間傳遞、交換信息的媒介和對話接口,是計算機系統的重要組成部分。是指人和機器在信息交換和功能上接觸或互相影響的領域或稱界面所說人機結合面,信息交換,功能接觸或互相影響,指人和機器的硬接觸和軟觸,此結合面不僅包括點線面的直接接觸,還包括遠距離的信息傳遞與控制的作用空間。人機結合面是人機系統中的中心一環節,主要由安全工程學的分支學科安全人機工程學去研究和提出解決的依據,并過安全工程設備工程學,安全管理工程學以及安全系統工程學去研究具體的解決方法手段措施安全人機學。

  3 操作系統移植

  WinCE 5.0操作系統的移植主要是基于硬件平臺進行BSP開發。BSP是基于WinCE 5.0平臺系統的主要部分,它主要由一些源文件和二進制文件組成,又稱主板支持軟件包,它是一個主要由包含啟動程序(bootloader)、OEM適配層程序(OAL)相關硬件設備的驅動程序的軟件包,另外還可以把上層的應用也放到BSP中。在BSP內部,通過OAL鏈接到系統核心,而驅動程序和系統配置文件是與OAL層相互關聯來完成驅動設備和配置系統的功能。在BSP外部,我們可以看到一個建立在硬件平臺上的主板支持包。在開發過程中可以利用開發板運營商提供的BSP包進行操作系統的定制,定制完成后固化到Nandflash中。

  4 測試

  因為開發板的串口2直接與GPS接收模塊的串口相連,所以串口設置選擇串口2。波特率應與GPS接收模塊匹配,設置為4800。GPS模塊為上電即啟動,并且不能關閉,所以點擊“搜星”按鈕即可接收數據。啟動“搜星”按鈕后1min左右,就能顯示正確的經緯度。點擊“地點查詢”按鈕,能正確顯示地點信息。最下面的文本框可以顯示原始的數據流。測試時實拍的照片如圖2所示。

測試時實拍的照片

  5 總結

  文章以VS2005為軟件平臺,利用基于arm處理器的WinCE 5.0嵌入式開發平臺和GPS接收模塊,通過合理使用串口通信,實現了GPS數據信號的接收與解碼,并利用觸摸屏進行顯示,已基本具備GPS移動設備的雛形。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
极品尤物av久久免费看| 99精品视频免费观看| 欧美日韩精品综合| 老司机久久99久久精品播放免费 | 欧美在线视频二区| 亚洲一区在线观看免费观看电影高清 | 亚洲精品久久久久久久久久久久 | 亚洲狼人综合| 亚洲精品视频在线播放| 亚洲国产欧美日韩精品| 亚洲国产日本| 亚洲国产激情| 亚洲精品久久久久久一区二区 | 一本色道久久88综合亚洲精品ⅰ| 日韩亚洲精品视频| 夜夜嗨网站十八久久| 亚洲精品字幕| 99国产欧美久久久精品| 9色国产精品| 一区二区三区视频在线| 亚洲一区www| 亚洲欧美视频在线| 香蕉久久a毛片| 午夜精品久久久久久久| 香蕉国产精品偷在线观看不卡| 亚洲欧美成人一区二区三区| 亚洲图片欧洲图片日韩av| 一区二区不卡在线视频 午夜欧美不卡在 | 欧美在线999| 欧美一区二区三区四区高清| 一区二区三区回区在观看免费视频| 欧美在线视频日韩| 亚洲一区二区三区精品动漫| 亚洲精品国产精品国自产观看| 黑丝一区二区三区| 嫩草影视亚洲| 久久综合亚州| 蜜月aⅴ免费一区二区三区 | 国产精品亚洲美女av网站| 欧美午夜剧场| 国产精品www色诱视频| 欧美性开放视频| 国产精品久久久久久久久久三级| 国产精品每日更新| 国产免费观看久久黄| 国产欧美日韩一区二区三区| 欧美黄网免费在线观看| 欧美激情在线免费观看| 欧美日韩免费高清| 国产精品久久久久久久久久久久久| 国产精品日韩欧美大师| 国产乱码精品1区2区3区| 国产女人aaa级久久久级| 国产日韩久久| 精品粉嫩aⅴ一区二区三区四区| 亚洲二区精品| 99热免费精品| 亚洲免费在线精品一区| 欧美在线观看一区| 亚洲国产精品久久| 亚洲精品无人区| 亚洲影院高清在线| 欧美专区在线| 美女主播一区| 欧美日韩另类字幕中文| 国产精品午夜电影| 国产一区二区三区在线观看精品| 伊人成年综合电影网| 亚洲三级色网| 亚洲一区二区三区久久| 久久国产精品久久国产精品| 欧美在线地址| 久久精品日韩欧美| 亚洲精品视频在线观看免费| 亚洲视频精选| 久久国产精品久久国产精品| 欧美激情91| 国产精品视频网| 在线精品视频一区二区| 99精品国产一区二区青青牛奶 | 在线视频你懂得一区二区三区| 午夜综合激情| 日韩香蕉视频| 久久国产视频网| 欧美久色视频| 国产精品国产三级国产专播品爱网 | 久久综合伊人77777麻豆| 欧美日韩1080p| 国产欧美va欧美va香蕉在| 在线国产精品一区| 亚洲视频在线播放| 久久国产免费| 亚洲欧美日韩精品久久亚洲区| 免费亚洲电影在线观看| 国产精品卡一卡二卡三| 亚洲国产二区| 先锋影音国产精品| 亚洲深夜福利在线| 欧美一区二区三区成人 | 亚洲专区在线| 久久精品国产欧美激情| 欧美激情在线有限公司| 国产精品欧美风情| 在线免费观看一区二区三区| 亚洲无亚洲人成网站77777| 亚洲国产精品一区二区www在线| 亚洲欧美制服中文字幕| 欧美激情综合在线| 激情综合自拍| 亚洲综合日本| 一区二区三区高清在线观看| 鲁大师影院一区二区三区| 国产欧美日韩视频| av成人免费在线| 亚洲乱码精品一二三四区日韩在线| 亚洲一区在线直播| 六十路精品视频| 国产伦精品一区二区三区在线观看 | 亚洲毛片av在线| 91久久中文字幕| 久久久久久久综合狠狠综合| 国产精品久久综合| 99国产精品国产精品久久| 亚洲精品国产精品国自产在线 | 国产精品国产a级| 在线观看国产精品网站| 久久成人免费电影| 性欧美video另类hd性玩具| 国产精品高清免费在线观看| 亚洲精品一二三| 亚洲美女电影在线| 久久久精品国产免费观看同学| 日韩性生活视频| 欧美日韩亚洲综合在线| 一区免费在线| 欧美专区在线观看一区| 欧美一区日韩一区| 国产精品一区=区| 亚洲一区二区影院| 亚洲欧美日韩国产一区二区三区| 欧美日韩免费高清| 日韩一级黄色片| 亚洲午夜激情在线| 欧美午夜视频在线观看| 一本久久综合| 亚洲女同同性videoxma| 国产精品国产精品国产专区不蜜| 一区二区日韩免费看| 亚洲一区亚洲二区| 国产精品久久久久久福利一牛影视| 一区二区日韩精品| 亚洲一区精品视频| 欧美三日本三级三级在线播放| 亚洲高清毛片| 日韩一二三区视频| 欧美日韩国产美女| 亚洲一区二区三区色| 性18欧美另类| 国产精品看片你懂得| 亚洲国产成人av在线| 亚洲美女精品一区| 欧美色图一区二区三区| 亚洲一区二区三区免费在线观看 | 欧美激情在线有限公司| 亚洲美女av电影| 亚洲欧美日韩另类| 国产亚洲视频在线| 亚洲国产欧美日韩精品| 蜜桃av综合| 亚洲国产人成综合网站| 日韩视频在线观看国产| 国产精品成人观看视频免费| 亚洲一卡久久| 久久女同互慰一区二区三区| 亚洲国产影院| 亚洲永久免费视频| 国产一级揄自揄精品视频| 亚洲国产一区二区三区在线播 | 亚洲激情在线视频| 欧美日韩亚洲视频| 亚洲欧美成人一区二区在线电影| 久久精品亚洲一区二区| 亚洲黄色在线观看| 亚洲欧美卡通另类91av| 国产亚洲二区| aa级大片欧美| 国产日韩欧美三级| 91久久久一线二线三线品牌| 国产精品vvv| 欧美专区亚洲专区| 欧美日韩精品三区| 欧美亚洲免费电影| 欧美另类在线播放| 午夜亚洲福利| 欧美激情影音先锋| 午夜精品久久久久久久99樱桃| 美日韩精品视频免费看| 国产精品99久久99久久久二8| 欧美一区二区三区视频在线| 精品动漫3d一区二区三区|