基于“Jupiter”GPS接收機的應(yīng)用設(shè)計
關(guān)鍵詞:GPS接收機 單片機 串口通訊
1 概述
GPS (global positioning system)全球定位系統(tǒng)是利用美國24顆GPS地球衛(wèi)星所發(fā)射的信息而進行導航、定位、授時等服務(wù)的系統(tǒng)。自1993年GPS系統(tǒng)向世界免費開放以來,得到了世界各地各行業(yè)的廣泛應(yīng)用。這種全球定位系統(tǒng)可以用于航空導航、航海導航、大地測量、石油地質(zhì)勘探、地震預(yù)報、授時校準、自動校時、高程測量、時間同步、輸變電工程、疏浚工程測量驗收、車輛定位、車輛跟蹤、車輛導向及防盜等領(lǐng)域。
Rockwell公司的“Jupiter”GPS/OEM接收機具有尺寸小、性能穩(wěn)定等優(yōu)良特征??煞奖恪⒆灾鞯亻_發(fā)出各種GPS應(yīng)用系統(tǒng)。
它具有如下特點:
●極其緊湊的GPS接收機尺寸:71mm41mm11mm;
●其射頻輸入為1575.42MHz,范圍為-130dBw~-163dBw;
●具有12個并行衛(wèi)星軌跡通道,能快速識別和再識別當前位置;
●支持真正的NEMA-0183數(shù)據(jù)格式;
●直接微分的RECMSC-104數(shù)據(jù)動態(tài)提供定位精確度;
●自適應(yīng)門限檢測,提高微弱信號的檢測能力;
●其于SA的靜態(tài)導航能力;
●可與過去的天線兼容,花費很?。?/FONT>
●3D到2D導航時能自動保持緯度;
●可以基于SPS獲得最佳導航精確度;
●無初始化數(shù)據(jù)時可以自動開啟冷啟動程序;
●通過串行通訊,用戶有很大的操作空間和配置能力;
●可接受用戶通過主串口寫入的初始化數(shù)據(jù);
●具有三種啟動方式:熱啟動、初始化、冷啟動;
●用戶可以選擇衛(wèi)星;
●用戶可以選擇衛(wèi)星表面角;
●具有可選的RF連接頭;
●最大測速可達500m/s;
●工作溫度范圍為-40℃~+85℃。
2 內(nèi)部結(jié)構(gòu)和引腳說明
圖1 所示是“Jupiter”GPS/OEM接收機的內(nèi)部結(jié)構(gòu)圖,它主要包括天線部分、接收部分、數(shù)據(jù)處理部分。這種接收器是通過兩個串口與外部通訊的,串口 1為主串口,串口2為輔助串口(提供修正量)。其中,串口1為全雙工方式,串口2為半雙工方式。系統(tǒng)通過這兩個串口同其外部器件或設(shè)備連接,也可以用軟件編程或硬件設(shè)置來配置其串口特性。
接收數(shù)據(jù)的用戶可以選擇的存儲方式有三種:SRAM、ROM、EEPROM。
接收機內(nèi)部的一個10kHz的參考時鐘輸出和一個1pps(每秒一個脈沖)的時鐘標輸出可用來進行時鐘同步,也可用于進行時鐘校準。
系統(tǒng)可以通過RESET進行復位。
“Jupiter”GPS/OEM接收機采用20腳DIP封裝,常用管腳的說明如表1所列。
表1 “Jupiter”GPS/OEM接收機主要管腳說明
管 腳 | 說 明 | 備 注 |
2 | PWRIN_5 | 5V主電源 |
5 | M_RST | 復位輸入(低電平有效) |
7 | GPIO2 | NMEA協(xié)議選擇 |
8 | GPIO3 | ROM缺省選擇 |
11 | SDO1 | 串口1輸出 |
12 | SDI1 | 串口1輸入 |
15 | SDI2 | 串口2輸入 |
18 | GND | 地 |
19 | TMARK | 1PPS時鐘標記輸出 |
20 | 10kHz | 10kHz時鐘輸出 |
3 數(shù)據(jù)格式和通訊設(shè)置
3.1 數(shù)據(jù)格式
“Jupiter”GPS/OEM接收機具有兩種數(shù)據(jù)格式,一種是二進制方式,另一種是(也為ASCII碼)方式,可通過設(shè)置GPIO2和GPIO3來選擇不同的數(shù)據(jù)格式。選擇不同的數(shù)據(jù)格式所對應(yīng)的形式不同,消息長度和內(nèi)容也不同。
二進制方式消息格式共有31種消息(其中14種輸出消息,17種輸入消息),每種消息必有一個消息頭,且以“0xFF81”開始,數(shù)據(jù)段可選;NEMA方式消息格式共有11種消息(其中7種輸出消息,4種輸入消息),每種消息以“$”開頭,以CR>LF>結(jié)束。前者消息長度比后者長,后者比前者消息種類少,可根據(jù)實際需要來選擇。
3.2 通訊設(shè)置
“Jupiter”GPS/OEM接收機與外設(shè)連接,用串口來進行通訊。其串口設(shè)置如表2所列。
表2 串口設(shè)置
GPIO2 | GPIO3 | 消息格式 | 主串口波特率(BPS) | 奇偶 | 數(shù)據(jù)位 | 停止位 | 存儲方式 |
0 | 0 | NMEA | 4800 | 無 | 8 | 1 | ROM |
0 | 1 | NMEA | 4800 | 無 | 8 | 1 | SRAM/EEPROM |
1 | 0 | 二進制 | 9600 | 無 | 8 | 1 | ROM |
1 | 1 | 二進制 | 9600 | 無 | 8 | 1 | SRAM/EEPROM |
4 典型應(yīng)用
4.1 典型電路
由于“Jupiter”GPS/OEM接收機的串口與TTL電平兼容,故可直接與單片機的串口連接,具體連接電路如圖2所示。
4.2 程序流程圖
程序流程圖如圖3所示(假定為NEMA格式,即選擇GPIO2=GPIO3=0)。
4.3 初始化程序
單片機初始化主要對串口初始化,設(shè)置波特率和串口工作方式。假定選擇GPIO2=GPIO3=0,可將串口初始化為,串口方式1,定時器1置方式2,波特率為4800BPS,允許接收。其初始化程序如下:
MOV SCON,#50H;
MOV TMOD,#20H;
MOV TH1,#0FAH;
MOV TL1,#0FAH;
SETB TCON.6;
SETB EA;
SETB ES;
4.4 中斷服務(wù)程序
單片機可以采用中斷方式接收GPS消息,收到中斷后,為了挑選出有用的消息,可以先進行消息頭識別。不同消息具有不同的消息頭,可根據(jù)需要來選擇,如RMC消息格式為:
$GPRMC,hhmmss.ss,a,llll.ll,a,yyyyy.yy,a,x.x,x.x,xxxxxx,x.x,a*hhCR>LF>
例如,接收到的消息如下:
$GPRMC,185203,A,3339.7332,N,11751.7589,W,0.000,121.7,160496,13.8,E*55CR>LF>
此消息共分13個部分,前面為消息頭,接著是時間,經(jīng)緯度,速度,高度,日期等消息??梢韵扰卸ㄏ㈩^是否正確,然后再接收,既可局部接收某個量,也可全部接收下來再選擇所需參量。
識別消息頭程序如下:
JB 21H.5,WORD6;
JB 21H.4,WORD5;
JB 21H.3,WORD4;
JB 21H.2,WORD3;
JB 21H.1,WORD2;
JB 21H.0,WORD1;
CJNE A,#24H,WORDCLR;
SETB 21H.0; ;識別“$”
SJMP ENDT;
WORD1:CJNE A,#47H,WORDCLR;
SETB 21H.1; ;識別“G”
SJMP ENDT;
WORD2:CJNE A,#50H,WORDCLR;
SETB 21H.2; ;識別“P”
SJMP ENDT;
WORD3:CJNE A,#52H,WORDCLR;
SETB 21H.3; 識別“R”
SJMP ENDT;
WORD4:CJNE A,#4DH,WORDCLR;
SETB 21H.4; ;識別“M”
SJMP ENDT;
WORD5:CJNE A,#43H,WORDCLR;
SETB 21H.5; ;識別“C”
SJMP ENDT;
WORD6;
......;數(shù)據(jù)接收與處理程序
WORDCLR:MOV 21H,#00H;
ENDT:RETI;
5 結(jié)束語
“Jupiter”GPS/OEM接收機具有較高的準確度。由于城市的高層建筑比較多,信號多徑傳輸明顯,因而沒有頂蓋或運動的運動媒體上運行效果很好。城市有些高層方位會出現(xiàn)接收盲區(qū)(很小范圍),使用時應(yīng)該注意。
這種GPS接收電路可以由硬件來設(shè)定模式,部分參數(shù)還可通過主串口送到接收電路進行設(shè)定,操作方便、靈活。本文介紹的電路及設(shè)定參數(shù)都經(jīng)過了實踐檢驗,數(shù)據(jù)接收穩(wěn)定,誤差小。
評論