中文字幕无码不卡一区二区三区_少妇被又大又粗又爽毛片久久黑人_91精品国产在热久久无毒不卡_久久久久久亚洲综合网站

技術熱線: 4007-888-234
設計開發(fā)

專注差異化嵌入式產品解決方案 給智能產品定制注入靈魂給予生命

開發(fā)工具

提供開發(fā)工具、應用測試 完善的開發(fā)代碼案例庫分享

技術支持

從全面的產品導入到強大技術支援服務 全程貼心伴隨服務,創(chuàng)造無限潛能!

新品推廣

提供新的芯片及解決方案,提升客戶產品競爭力

新聞中心

提供最新的單片機資訊,行業(yè)消息以及公司新聞動態(tài)

基于PIC16F874單片機的GPS串口數(shù)據(jù)接收程序實例

更新時間: 2019-03-23
閱讀量:1690

十年專注單片機方案開發(fā)的方案公司英銳恩,分享基于PIC16F874單片機的GPS串口數(shù)據(jù)接收程序實例。英銳恩現(xiàn)提供服務產品涉及主控芯片:8位單片機、16位單片機、32位單片機及各類運算放大器等。

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

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

    1、 GPS應用簡介

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

    目前市場上的大部分GPS接受模塊都是通過RS232串口與MCU進行數(shù)據(jù)傳輸?shù)摹_@些數(shù)據(jù)包括經度、緯度、海拔高度、時間、衛(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

經度

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分,西經121度00.1536分

格林威治時間:3點37分44秒

3、 PIC16F874數(shù)據(jù)接收程序

筆者在系統(tǒng)中把接收到的數(shù)據(jù)處理后,顯示到圖形液晶屏上。限于篇幅在這里只給出數(shù)據(jù)接收部分程序,并且只接收經度和時間信息,并且給出格林威治時間轉換為北京時間的轉換函數(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經度的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     '

高平市| 镇江市| 永和县| 资兴市| 灌阳县| 庆城县| 镇沅| 囊谦县| 兴安县| 健康| 敦煌市| 获嘉县| 颍上县| 安泽县| 原阳县| 孝昌县| 万源市| 安阳市| 浑源县| 元江| 巴东县| 津南区| 聊城市| 同仁县| 南投县| 乌拉特中旗| 温泉县| 闽侯县| 毕节市| 哈巴河县| 阿克苏市| 崇仁县| 赣榆县| 浏阳市| 丰原市| 涟水县| 仁怀市| 南投市| 安义县| 冷水江市| 平武县|