資源描述:
《gps串口數據接收程序實例》由會員上傳分享,免費在線閱讀,更多相關內容在學術論文-天天文庫。
1、GPS串口數據接收程序實例???摘?要:目前GPS(全球定位系統(tǒng))定位應用市場日趨成熟,正在進入應用的高速發(fā)展時期。本文以一款EverMore公司的GM-X205GPS接受模塊為例,介紹了其數據格式,以及應用PIC16F874單片機RS232串口進行數據接收的程序。???關鍵詞:GPS、NMEA格式、PIC16F874、串口數據接收???1、?GPS應用簡介近年來GPS系統(tǒng),已經在大地測繪、海上漁用、車輛定位監(jiān)控、建筑、農業(yè)等各個領域得到廣泛應用。從九十年代我國引進GPS定位技術開始,經過十多年的市場培育,GPS定位應用進入了發(fā)展的最好時機,未來十年基于GPS
2、的應用將會改變我們的生活和工作方式。目前市場上的大部分GPS接受模塊都是通過RS232串口與MCU進行數據傳輸的。這些數據包括經度、緯度、海拔高度、時間、衛(wèi)星使用情況等基本信息。開發(fā)人員再依據這些基本數據,進行數據處理來完成整套的定位系統(tǒng)軟件。2、?GM-X205模塊數據格式在進行數據接受編程之前,先介紹一下該模塊的數據格式。它支持NMEA-0183輸出格式。信息如下:???GGA位置測定系統(tǒng)定位資料(GlobalPositioningSystemFixData)???GSV導航衛(wèi)星資料(GNSSSatellitesinView)???RMC導航衛(wèi)星特定精簡資
3、料(RecommendedMinimumSpecificGNSSData)???VTG方向及速度等相關資料(CourseOverGroundandGroundSpeed)???由于文章篇幅問題,筆者在這里只以接收GGA數據為例,格式如下:???$GPGGA,hhmmss,dddmm.mmmm,a,dddmm.mmmm,a,x,xx,x.x,x.x,M,,M,x.x,xxxx*CS???例:$GPGGA,033744,2446.5241,N,12100.1536,E,1,10,0.8,133.4,M,,,,*1F說明見表:區(qū)域名稱例單位說明1信息ID$GPGGA
4、?GGA協(xié)議開始2UTC時間033744?hhmmss3緯度2446.5241?dddmm.mmmm4南/北半球指示N?N=north;S=south5經度12100.1536?dddmm.mmmm6東/西半球指示E?E=east;W=west7定位指示1?0=未定位1=定位SPS模式2=定位DGPS,SPS模式8應位衛(wèi)星數10?00-129HDOP(水平精度)0.8米?10海拔高度133.4米?11海拔高度單位M米?12WGS84水準面劃分???13WGS-84水準面劃分單位???14累計GPS數據微分??本模塊中不可用15參考工作站ID??本模塊中不可用1
5、6校驗位*1F??上面例子中,我們可讀出位置信息:北緯24度46.5241分,西經121度00.1536分???????????????????????????????格林威治時間:3點37分44秒3、?PIC16F874數據接收程序筆者在系統(tǒng)中把接收到的數據處理后,顯示到圖形液晶屏上。限于篇幅在這里只給出數據接收部分程序,并且只接收經度和時間信息,并且給出格林威治時間轉換為北京時間的轉換函數。其他數據接收程序類似。;**********************************************************;????????THISI
6、SAGPSRECEIVERPROGRAM?????????????????*;**********************************************************????????LISTP=16F874????????INCLUDEP16F874.INC???????;*******寄存器定義********************TEMP1????EQU???0X27W_TEMP???EQU???0X54?????????STATUS_TEMP?EQU0X55LONG1????EQU???0X40?????????;LONG1
7、---LONG10經度的10位數據LONG2????EQU???0X41LONG3????EQU???0X42LONG4????EQU???0X43LONG5????EQU???0X44LONG6????EQU???0X45LONG7????EQU???0X46LONG8????EQU???0X47LONG9????EQU???0X48LONG10???EQU???0X49T1???????EQU???0X58??????????;T1---T6時間的6位數據T2???????EQU???0X59T3???????EQU???0X60T4???????EQU?
8、??0X61T5???????EQU?