卞嘉睿
【摘要】 在GPS系統(tǒng)中,GPS-OEM板是核心部分,其串行通信有一定的特點?;谶@種認識,本文對MCS-51單片機與GPSOEM板的串行通信問題展開了分析,并結(jié)合問題完成了系統(tǒng)的軟硬件配置,從而提出了系統(tǒng)通信信息的讀取方法,進而為關(guān)注這一話題的人們提供參考。
【關(guān)鍵詞】 MCS-51單片機 GPS-OEM板 串行通信
引言:就目前來看,GPS系統(tǒng)已經(jīng)在工業(yè)生產(chǎn)、軍事和交通等行業(yè)得到了應(yīng)用,用戶只需要一臺接收機,就能完成免費信息的獲取。而加強對MCS-51單片機與GPS-OEM板的串行通信問題的研究,則能為GPS系統(tǒng)應(yīng)用提供科學指導(dǎo)。
一、GPS-OEM板的串行通信分析
GPS-OEM板是GPS接收機的核心組成部分,能夠?qū)崿F(xiàn)對接收機的數(shù)據(jù)接收控制。從結(jié)構(gòu)上來看,其包含中央處理器、變頻器、信號通道和存儲器等多個部分,能夠?qū)πl(wèi)星信號進行接收,并且能夠?qū)π盘栠M行變頻、放大和濾波等處理,進而完成對衛(wèi)星的跟蹤、測量和鎖定。利用獲得的衛(wèi)星位置信息,GPS-OEM板也能完成信號傳播時間的測算,并對天線的位置進行計算。由于GPS-OEM板擁有特殊的數(shù)據(jù)輸出格式,所以還要對其與單片機的串行通信問題進行考慮。以GPS25LP為例,其擁有典型的GPS-OEM板結(jié)構(gòu)。用戶在與GPS-OEM板進行連接時,需要利用輸入輸出接口完成信息輸入,然后利用異步串行通信方式完成信息交換。在這一過程中,用戶可以編制輸入語言,并設(shè)定輸出數(shù)據(jù)格式和導(dǎo)航模式,從而順利解讀GPS-OEM板提供的維度、速度和經(jīng)度等定位信息。對于最終用戶來講,則無需進行輸入語句的設(shè)置,可以直接使用設(shè)備的出廠默認狀態(tài)。但是用戶如果想要獲得信息,還要進行輸出語句的讀取。
二、MCS-51單片機與GPS-OEM板串行通信的實現(xiàn)
1、兩種接口的比較。比較TTL接口和RS232C接口可以發(fā)現(xiàn),二者在通信標準上有一定的差異。對于TTL接口來講,邏輯“0”和“1”分別與0V和系統(tǒng)操作電壓對應(yīng)。對于RS232C接口來講,邏輯“0”和“1”分別與正電壓和負電壓對應(yīng)。所以在進行兩個接口連接的過程中,還要實現(xiàn)接口的有效轉(zhuǎn)換。值得注意的是,GPS-OEM板采用的是異步串行通信方式,將進行NMEA-0183格式的數(shù)據(jù)輸出,所以還要根據(jù)其接口數(shù)據(jù)輸出情況進行轉(zhuǎn)換。目前,GPS-OEM板擁有是多種輸出語句,包含定位數(shù)據(jù)語句、衛(wèi)星狀態(tài)語句和歷書數(shù)據(jù)語句。在這些語句中,常用的主要是定位數(shù)據(jù)語句,結(jié)構(gòu)如下圖1所示。在該結(jié)構(gòu)中,不同符號有不同的意義,如<1>為位置固定時的世界協(xié)調(diào)時時間,<2>為緯度值,<3>為緯度半球,<4>為經(jīng)度值,<5>為經(jīng)度半徑等,并且各自擁有對應(yīng)的格式[1]。在實際應(yīng)用的過程中,只需進行位置信息和時間的提取,即需要獲取<1>、<2>、<4>的信息,以驗證定位數(shù)據(jù)的有效性。
2、接口電平的轉(zhuǎn)換。在進行兩個接口電平轉(zhuǎn)換的過程中,可以使用MAX202芯片。在GPS25LP中,串行口共有2個,其中一個可用于進行差分修正信息的輸入,并完成衛(wèi)星原始信息的輸出。而另一個端口則可以進行輸入語句的設(shè)定,并完成定位語句的輸出。所以,可以將GPS25LP串行口與MSC-51單片機的串行口連接起來,從而實現(xiàn)二者的通信連接。在上電后,GPS系統(tǒng)會在自檢合格后進入衛(wèi)星測量狀態(tài),然后進行測量信息的輸出。
3、系統(tǒng)個性化配置。在實際應(yīng)用GPS25LP時,由于其擁有4800的波特率,所以還要先將該數(shù)值設(shè)置為單片機串行口波特率。使用的51單片機的外接晶體則為11.0592,所以還要將定時器1設(shè)置為在8位自動重裝,然后根據(jù)波特率完成定時器時長的設(shè)置。完成這些內(nèi)容設(shè)置后,單片機則可以進行計數(shù),而串行口應(yīng)設(shè)置為8位UART,以進行該種格式的數(shù)據(jù)接收[2]。此外,還應(yīng)允許串行口中斷。完成正確設(shè)置后,可以利用$GPGGA語句完成定位數(shù)據(jù)接收。在系統(tǒng)有特殊要求的條件下,則要完成初始化配置,并做好數(shù)出語句選擇。在初始化中,應(yīng)利用<1>-<4>完成地理位置的設(shè)置,其余格式則可以保持原來的語句格式。此外,還要利用該語句完成OEM板的配置,利用<10>進行波特率的選擇,利用<12>進行PPS的輸出控制。
4、通信信息的讀取。利用該系統(tǒng)進行定位信息讀取時,由于$GPGGA語句中包含基本定位信息,所以能夠使用戶的一般需求得到滿足。利用該語句,能夠完成81個字符的輸出。為使接收程序得到簡化,還應(yīng)利用MCS-51的80H內(nèi)存進行接收到的ASCII碼的存放,其中不包含語句名。在對于輸出的語句進行讀取時,還應(yīng)先完成語句類型的判斷,然后進行數(shù)據(jù)存放。在此基礎(chǔ)上,則要對語句的結(jié)束標志進行確定。由于單片機可以采用中斷方式進行語句接收,所以在系統(tǒng)收到中斷后,可以進行有用消息的挑選。在這一過程中,還應(yīng)先完成消息頭的識別,而不同的消息頭對應(yīng)不同的消息,因此能夠幫助用戶完成消息的選擇[3]。在接收前,還應(yīng)先判斷消息頭是否正確,然后選擇是否接收信息。
結(jié)論:通過分析可以發(fā)現(xiàn),在解決MCS-51和GPSOEM板的串行通信問題時,還要結(jié)合各自硬件特點確定系統(tǒng)硬件組成,并完成系統(tǒng)關(guān)鍵軟件的設(shè)計,從而通過完成系統(tǒng)個性化配置順利進行定位信息的讀取。因此,相信本對MCS-51和GPS-OEM板串行通信問題展開的分析,能夠為系統(tǒng)的應(yīng)用提供指導(dǎo)。
參 考 文 獻
[1]魏釗. 基于GPS-OEM板和單片機的定位終端開發(fā)[J]. 電子制作,2013,06:5-6.
[2]高學群. 基于GPS-OEM板的液晶GPS定位信息顯示器的設(shè)計[J]. 企業(yè)導(dǎo)報,2010,12:294.
[3]徐小濤. 基于MCS-51單片機的串行通信實現(xiàn)[J]. 計算機與網(wǎng)絡(luò),2010,19:51-54.