女人被狂躁到高潮视频免费无遮挡,内射人妻骚骚骚,免费人成小说在线观看网站,九九影院午夜理论片少妇,免费av永久免费网址

當前位置:首頁 > 通信技術 > 通信技術
[導讀]本文以一款EverMore公司的GM-X205GPS接受模塊為例,介紹了其數(shù)據(jù)格式,以及應用PIC16F874單片機RS232串口進行數(shù)據(jù)接收的程序。

 作者Email: Atom002@sohu.com

    摘  要:目前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
       CALL     PAND
       MOVWF    LONG3
       CALL     PAND
       MOVWF    LONG4
       CALL     PAND
       MOVWF    LONG5
       CALL     PAND
       MOVWF    LONG6
       CALL     PAND
       MOVWF    LONG7
       CALL     PAND
       MOVWF    LONG8
       CALL     PAND
       MOVWF    LONG9
       CALL     PAND
       MOVWF    LONG10                   ;接受經(jīng)度信號結束
       RETURN
;***************串口寄存器中是否數(shù)據(jù)*****************
PAND  
        BCF      STATUS,RP0
CC   BTFSS PIR1,5
        GOTO CC
        MOVF     RCREG,0
        RETURN
;*****************中斷函數(shù)***************************
INTERRUPT    
        BCF INTCON,7                  ;SET GIE=0屏蔽所有中端
        BCF     STATUS,RP0
        BCF     RCSTA,1               ;清除溢出錯誤位
        BSF       STATUS,RP0
        BCF       TXSTA,2             ;BRGH=0 Low speed
        BCF       TXSTA,4             ;Set Asynchronous mode
        MOVLW     0X0C
        MOVWF     SPBRG             ;設置波特率為4800
        BCF       STATUS,RP0
        MOVLW     B'10010000'
        MOVWF     RCSTA             ;串口接收相關設置
        BSF       STATUS,RP0         
        BSF       OPTION_REG,6        ; RB0/INT 引腳上升沿中斷
       MOVWF W_TEMP            
    SWAPF STATUS,W
    BCF   STATUS,RP0
    MOVWF STATUS_TEMP
    BCF     STATUS,RP0
    CALL    IDMESSAGE
       CALL    RECEIVE
        BCF     STATUS,RP0
        CLRF    RCSTA                ;清除串口設置
        CALL    CONVERT             ;調用時間轉換函數(shù)
OUT BCF STATUS,RP0             ;跳出中斷部分,恢復寄存器
     SWAPF STATUS_TEMP,W
     MOVWF STATUS
     SWAPF W_TEMP,F
     SWAPF W_TEMP,W  
     BSF  INTCON,7     ;SET GIE=1允許所有中端
     NOP 
        RETFIE
;************ 格林威治時間轉換為北京時間******************
CONVERT
       MOVLW  A'0'
       SUBWF  T2,1
       SUBWF  T1,1
       MOVLW  D'10'
       MOVWF  TEMP1
LOOP1  MOVF   TEMP1,0
       MOVF   TEMP1,1
       BTFSS  STATUS,Z
       GOTO   ADD10
       MOVLW  D'8'
       ADDWF  T2,1
       MOVLW  D'24'
       SUBWF  T2,1
       BTFSC  STATUS,C
       GOTO   CON1
       ADDWF  T2,1
       GOTO   CON1
CON1   MOVLW  D'20'
       MOVWF  TEMP1
       SUBWF  T2,0
       BTFSS  STATUS,C
       GOTO   CON2
       MOVWF  T2
       MOVLW  0X02
       MOVWF  T1
       GOTO   HALT1
CON2   MOVLW  D'10'
       MOVWF  TEMP1
       SUBWF  T2,0
       BTFSS  STATUS,C
       GOTO   CON3
       MOVWF  T2
       MOVLW  0X01
       MOVWF  T1
       GOTO   HALT1
CON3   MOVLW  0X00
       MOVWF  T1
HALT1  MOVLW  A'0'
       ADDWF  T1,1
       ADDWF  T2,1
       RETURN
ADD10  MOVF   T1,0
       ADDWF  T2,1
       DECF   TEMP1,1
       GOTO   LOOP1
       RETURN
;******************MAIN***********************
MAIN
        BCF       STATUS,RP0
        MOVLW     B'10010000'
        MOVWF     INTCON            ;打開中斷
        LOOP NOP
     BCF     STATUS,RP0
     GOTO  LOOP
     GOTO MAIN
        END

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

ESP32模塊非常通用,可以通過WiFi連接到各種不同的平臺來發(fā)送和接收數(shù)據(jù)。在本教程中,我們將使用Arduino的物聯(lián)網(wǎng)云平臺(這是完全免費使用)與ESP32。有關Arduino IoT Cloud的更詳細概述,請查看...

關鍵字: GPS ESP32模塊 Arduino 物聯(lián)網(wǎng)

無人機以高效創(chuàng)新的方案,改變了多個行業(yè)的格局。在農(nóng)業(yè)領域,無人機助力精準農(nóng)業(yè)、作物監(jiān)測和牲畜追蹤。工業(yè)部門利用無人機進行現(xiàn)場勘測、基礎設施檢查和項目監(jiān)控。無人機還在革新配送服務,尤其在向偏遠地區(qū)運送包裹、醫(yī)療用品和緊急援...

關鍵字: 無人機 GPS 圖像傳感器

無GPS環(huán)境下的自主導航是當今無人駕駛飛行器(UAV)系統(tǒng)面臨的最關鍵挑戰(zhàn)之一。從城市峽谷到地下隧道和茂密的森林,許多現(xiàn)實世界的環(huán)境使GPS不可靠或完全不可用。為了讓無人機在這些條件下安全有效地運行,無論是執(zhí)行搜救任務、...

關鍵字: 無人機 GPS TELEM2

雖然現(xiàn)有的技術已經(jīng)顯著改善了盲人的導航和障礙物檢測,但它們主要集中在這些方面。我們的目標是擴展這項技術,不僅包括檢測,還包括物體、人臉和圖像的識別。人工智能的廣泛應用旨在通過提供有關其周圍環(huán)境的更詳細和有意義的信息來增強...

關鍵字: 人工智能 GPS 人臉識別

2025年3月24日 – 提供超豐富半導體和電子元器件?的業(yè)界知名新品引入 (NPI) 代理商貿(mào)澤電子 (Mouser Electronics) 即日起供應Molex的MX-DaSH線對線連接器。該連接器在同一個系統(tǒng)中集...

關鍵字: 連接器 顯示器 GPS

Sensize的低功耗藍牙和GPS追蹤設備可監(jiān)測各類在途貨物。其重點聚焦于食品分銷鏈,由于全球雜貨零售業(yè)產(chǎn)生的巨大食品浪費,這一領域尤其引人注目。據(jù)智能廢棄物處理公司Recycle Tracking Systems的數(shù)據(jù)...

關鍵字: 低功耗藍牙 GPS 自動化

本項目演示了如何使用粒子B系列SoM構建實時大象跟蹤系統(tǒng)。該系統(tǒng)可以對大象進行實時GPS跟蹤,并實施地理圍欄,如果大象離開了預定義的邊界,就通知護林員。數(shù)據(jù)顯示在與OpenStreetMap集成的web界面上,并存儲在F...

關鍵字: B-SoM模塊 GPS 蜂窩物聯(lián)網(wǎng) LED

在這個Visuino項目中,確保精確計時與雙源系統(tǒng)!

關鍵字: Visuino GPS ESP8266-D1 LCD

全球定位系統(tǒng)(GPS)是一種基于衛(wèi)星的無線電導航系統(tǒng),歸美國政府所有,由美國太空部隊運營。它是全球導航衛(wèi)星系統(tǒng)(GNSS)的一種,它向地球上或地球附近的任何地方的GPS接收器提供地理位置和時間信息,這些接收器可以暢通無阻...

關鍵字: GP-20U7 GPS 藍牙

在智能穿戴設備日益普及的今天,智能手表作為其中的佼佼者,不僅具備了時間顯示、健康監(jiān)測等基本功能,還融入了GPS定位技術,為用戶提供精準的地理位置服務。然而,智能手表受限于體積和功耗,其GPS定位功能的實現(xiàn)與優(yōu)化面臨諸多挑...

關鍵字: 智能手表 GPS
關閉