四虎成人免费视频,国产一级a作爱视频免费观9看,色五月丁香亚洲,亚洲欧美性爱在线视频,1000部黄片免费观看一区,国产亚洲性生活视频播放,三级黄色在线视频网站

現(xiàn)在位置:范文先生網(wǎng)>理工論文>電子通信論文>GPS串口數(shù)據(jù)接收程序實例

GPS串口數(shù)據(jù)接收程序實例

時間:2023-02-21 00:15:46 電子通信論文 我要投稿
  • 相關推薦

GPS串口數(shù)據(jù)接收程序實例

 摘  要:目前GPS(全球定位系統(tǒng))定位應用市場日趨成熟,正在進入應用的高速發(fā)展時期。本文以一款EverMore公司的GM-X205GPS接受模塊為例,介紹了其數(shù)據(jù)格式,以及應用PIC16F874單片機RS232串口進行數(shù)據(jù)接收的程序。

    關鍵詞:GPS、NMEA格式、PIC16F874、串口數(shù)據(jù)接收

    1、 GPS應用簡介

    近年來GPS系統(tǒng),已經(jīng)在大地測繪、海上漁用、車輛定位監(jiān)控、建筑、農(nóng)業(yè)等各個領域得到廣泛應用。從九十年代我國引進GPS定位技術開始,經(jīng)過十多年的市場培育,GPS定位應用進入了發(fā)展的最好時機,未來十年基于GPS的應用將會改變我們的生活和工作方式。

    目前市場上的大部分GPS接受模塊都是通過RS232串口與MCU進行數(shù)據(jù)傳輸?shù)。這些數(shù)據(jù)包括經(jīng)度、緯度、海拔高度、時間、衛(wèi)星使用情況等基本信息。開發(fā)人員再依據(jù)這些基本數(shù)據(jù),進行數(shù)據(jù)處理來完成整套的定位系統(tǒng)軟件。

    2、 GM-X205模塊數(shù)據(jù)格式

    在進行數(shù)據(jù)接受編程之前,先介紹一下該模塊的數(shù)據(jù)格式。它支持NMEA-0183輸出格式。信息如下:

    GGA位置測定系統(tǒng)定位資料(Global Positioning System Fix Data)
    GSV 導航衛(wèi)星資料(GNSS Satellites in View)
    RMC導航衛(wèi)星特定精簡資料(Recommended Minimum Specific GNSS Data)
    VTG 方向及速度等相關資料(Course Over Ground and Ground Speed)
    由于文章篇幅問題,筆者在這里只以接收GGA數(shù)據(jù)為例,格式如下:
    $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

 

GGA協(xié)議開始

2

UTC時間

033744

 

hhmmss

3

緯度

2446.5241

 

dddmm.mmmm

4

南/北半球指示

N

 

N=north ; S=south

5

經(jīng)度

12100.1536

 

dddmm.mmmm

6

東/西半球指示

E

 

E=east ; W=west

7

定位指示

1

 

0 =未定位

1=定位SPS模式

2=定位DGPS, SPS模式

8

應位衛(wèi)星數(shù)

10

 

00-12

9

HDOP

0.8

 

10

海拔高度

133.4

 

11

海拔高度單位

M

 

12

WGS84水準面劃分

 

 

 

13

WGS-84水準面劃分單位

 

 

 

14

累計GPS數(shù)據(jù)微分

 

 

本模塊中不可用

15

參考工作站ID

 

 

本模塊中不可用

16

校驗位

*1F

 

 

上面例子中,我們可讀出位置信息:北緯24度46.5241分,西經(jīng)121度00.1536分
                                格林威治時間:3點37分44秒
3、 PIC16F874數(shù)據(jù)接收程序
筆者在系統(tǒng)中把接收到的數(shù)據(jù)處理后,顯示到圖形液晶屏上。限于篇幅在這里只給出數(shù)據(jù)接收部分程序,并且只接收經(jīng)度和時間信息,并且給出格林威治時間轉換為北京時間的轉換函數(shù)。其他數(shù)據(jù)接收程序類似。
;**********************************************************
;         THIS IS A GPS RECEIVER PROGRAM                  *
;**********************************************************
         LIST P=16F874
         INCLUDE P16F874.INC       
;*******寄存器定義 ********************
TEMP1     EQU    0X27
W_TEMP    EQU    0X54         
STATUS_TEMP  EQU 0X55
LONG1     EQU    0X40          ;LONG1--- LONG10經(jīng)度的10位數(shù)據(jù)
LONG2     EQU    0X41
LONG3     EQU    0X42
LONG4     EQU    0X43
LONG5     EQU    0X44
LONG6     EQU    0X45
LONG7     EQU    0X46
LONG8     EQU    0X47
LONG9     EQU    0X48
LONG10    EQU    0X49
T1        EQU    0X58           ;T1---T6時間的6位數(shù)據(jù)
T2        EQU    0X59
T3        EQU    0X60
T4        EQU    0X61
T5        EQU    0X62
T6        EQU    0X63
;********************************************************
       ORG  00H
       NOP
       NOP
       GOTO MAIN
       ORG  04H          ;設定按中端健才開始數(shù)據(jù)接受
       NOP
       NOP
       GOTO INTERRUPT
;*********判斷頭文件是不是'$GPGGA’**********
IDMESSAGE
        BCF     STATUS,RP0
BREAK0 
     CALL      PAND
        MOVWF     TEMP1
        MOVLW     '$'        ;detect $
        SUBWF     TEMP1,0
        BTFSS     STATUS,Z
        GOTO   BREAK0
        CALL     PAND
        MOVWF     TEMP1
        MOVLW     'G'        ;detect G
        SUBWF     TEMP1,0
        BTFSS     STATUS,Z
        GOTO   BREAK0
        CALL     PAND
        MOVWF     TEMP1
        MOVLW     'P'        ;detect P
        SUBWF     TEMP1,0
        BTFSS     STATUS,Z
        GOTO  BREAK0
        CALL     PAND
        MOVWF     TEMP1
        MOVLW     'G'        ;detect G
        SUBWF     TEMP1,0
        BTFSS     STATUS,Z
        GOTO  BREAK0
        CALL     PAND
        MOVWF     TEMP1
        MOVLW     'G'        ;detect G
        SUBWF     TEMP1,0
        BTFSS     STATUS,Z
        GOTO  BREAK0
        CALL     PAND
        MOVWF     TEMP1
        MOVLW     'A'        ;detect A
        SUBWF     TEMP1,0
        BTFSS     STATUS,Z
        GOTO  BREAK0
        CALL     PAND        ;跳過逗號
        RETURN
;************接收函數(shù)******************
RECEIVE
       CALL     PAND                    ;開始時間數(shù)據(jù)接收
       MOVWF    T1
       CALL     PAND
       MOVWF    T2
       CALL     PAND
       MOVWF    T3
       CALL     PAND
       MOVWF    T4
       CALL     PAND
       MOVWF    T5
       CALL     PAND
       MOVWF    T6                      ;時間數(shù)據(jù)接收完成
       CALL     PAND                     ;跳過逗號
       CALL     PAND                     ;跳過10位緯度數(shù)據(jù)---開始
       CALL     PAND
CALL     PAND
       CALL     PAND                    
       CALL     PAND
       CALL     PAND
       CALL     PAND                    
       CALL     PAND
       CALL     PAND
       CALL     PAND                     ;跳過10位緯度數(shù)據(jù)---結束
       CALL     PAND                     ;跳過逗號
       CALL     PAND                     ;跳過南/北緯判斷位數(shù)據(jù)
       CALL     PAND                     ;跳過逗號
       CALL     PAND                     ;接受經(jīng)度信號開始
       MOVWF    LONG1
       CALL     PAND
       MOVWF    LONG2

【GPS串口數(shù)據(jù)接收程序實例】相關文章:

Windows CE中實現(xiàn)藍牙串口驅動程序08-06

基于Vxworks實時操作系統(tǒng)的串口通信程序設計與實現(xiàn)08-19

GPS定位數(shù)據(jù)壓縮算法的設計與實現(xiàn)08-06

MRFIC1502在GPS接收器中的應用08-06

接收新黨員支部大會程序08-06

GPS車輛監(jiān)控調度系統(tǒng)中高速數(shù)據(jù)傳終端的設計08-06

Windows下多串口的配置與使用08-06

基于USB2.0的高速無線數(shù)傳接收設備的數(shù)據(jù)接收存儲方法08-06

航天GPS接收機的低噪聲放大器設計08-06