基于PIC18F8520 的GPS 精準(zhǔn)時鐘實(shí)現(xiàn)
GPS(Global Positioning System,全球定位系統(tǒng))是世界上最完善的衛(wèi)星導(dǎo)航系統(tǒng)。它不僅有覆蓋全球的實(shí)時、連續(xù)的高精度的三維定位能力,同時也有精準(zhǔn)的授時功能。利用高度穩(wěn)定、精確的星載原子鐘作為信號源進(jìn)行時間傳輸和比對,已成為眾多領(lǐng)域獲取時間的重要手段?;诖?,本文利用GPS所提供的精確授時功能,采用單片機(jī)技術(shù),實(shí)現(xiàn)了一種GPS時鐘,并將時間信息通過LCD進(jìn)行顯示。
系統(tǒng)構(gòu)成及硬件實(shí)現(xiàn)
1 系統(tǒng)構(gòu)成
GPS時鐘系統(tǒng)主要由GPS接收機(jī)、單片機(jī)、LCD顯示器三部分組成,如圖1所示。
圖1 GPS時鐘系統(tǒng)構(gòu)成框圖
GPS接收機(jī)
在本系統(tǒng)中,GPS接收機(jī)采用Garmin公司的GPS15XL,它是12通道的GPS接收機(jī),體積小,重量輕,功耗低,首次定位和重捕獲時間短,有較強(qiáng)抗遮擋和抗干擾能力,性能極其穩(wěn)定可靠,且操作簡單,易于開發(fā)??晒ぷ髟?.3~5.4V電壓范圍內(nèi),本系統(tǒng)采用+3.3V供電;精密授時類型精度可達(dá)±50ns(典型值);具有串行端口,輸出為RS232,輸入可為RS232或者具有RS232極性的TTL電平,波特率從300~38 400可選,默認(rèn)為4800,無奇偶校驗(yàn),8個數(shù)據(jù)位,1個起始位,1個停止位。GPS15XL輸出的數(shù)據(jù)以美國國家海洋電子協(xié)會(National Marine Electronics Association)的NMEA0183 ASCII碼接口協(xié)議為基礎(chǔ),可輸出多條語句,內(nèi)容包括經(jīng)度、緯度、速度、方位角、高度、世界時、星歷等信息。還可輸出Garmin二進(jìn)制格式信息。非常適合應(yīng)用于車輛導(dǎo)航、海事導(dǎo)航、電力系統(tǒng)校時等。
對GPS15XL的配置,可以利用單片機(jī)通過NMEA 0183語句在程序中實(shí)現(xiàn),也可以利用SNSRCFG軟件來進(jìn)行。配置參數(shù)將被保存在永久性存儲器中,下次加電時自動生效。為簡化設(shè)計(jì),本文采用第二種方法,即通過SNSRCFG軟件對GPS15XL進(jìn)行初始化配置。
GPS15XL可以輸出兩種時間信號:一是包含在串口輸出信息中的UTC(Coordinated Universal Time協(xié)調(diào)世界時)絕對時間(年、月、日、時、分、秒);二是間隔為1s的同步脈沖信號1PPS,其脈沖前沿與UTC的同步誤差不超過1μs。本系統(tǒng)主要是利用串口輸出的NMEA 0183語句獲取UTC時間信息。
NMEA 0183語句以“[an error occurred while processing the directive]rdquo;開始,以CR>LF>,即ASCII字符“回車”(十六進(jìn)制的0D)和“換行”(十六進(jìn)制的0A)結(jié)束。下面以本文使用的GPRMC語句為例說明其格式:
$GPRMC,1>,2>,3>,4>,5>,6>,7>,8>,9>,10>,11>,12>*hh CR>LF>
$GPRMC:語句起始標(biāo)志(Recommended Minimum Specific GPS/TRANSIT Data推薦定位信息)
1> UTC時間,hhmmss(時分秒)格式
2>定位狀態(tài),A=有效定位,V=無效定位
9>UTC日期,ddmmyy(日月年)格式
最后的校驗(yàn)碼*hh用于做奇偶校驗(yàn),通常不是必需的,但當(dāng)周圍環(huán)境有較強(qiáng)的電磁干擾時則推薦使用校驗(yàn)碼。hh代表了“[an error occurred while processing the directive]rdquo;和“*”之間所有字符的按位異或值(不包括這兩個字符)。
單片機(jī)PIC18F8520
系統(tǒng)采用Microchip公司生產(chǎn)的高性能RISC CPU PIC18F8520作為控制器,它內(nèi)部有32KB的FLASH程序存儲器和2KB的SRAM數(shù)據(jù)存儲器、1KB的EEPROM數(shù)據(jù)存儲器;運(yùn)算速度可達(dá) 10MIPS;可以工作在DC~40MHz的時鐘頻率范圍之內(nèi);具有USART接口,支持RS-485和RS-232,可與GPS模塊相連,用來獲取時間信息;支持ICSP在線串行編程,便于軟件的升級和維護(hù);支持ICD,可以在線調(diào)試,縮短開發(fā)周期。
LCD顯示器
系統(tǒng)采用LCD1602作為顯示設(shè)備。LCD1602液晶顯示模塊具有體積小、功耗低、顯示內(nèi)容豐富、超薄輕巧等優(yōu)點(diǎn),在袖珍式儀表和低功耗應(yīng)用系統(tǒng)中應(yīng)用廣泛。它可以顯示兩行,每行16個字符,采用單+5V電源供電,外圍電路配置簡單,價格便宜,具有很高的性價比。
2 硬件電路
系統(tǒng)的硬件電路如圖2和圖3所示。
圖2 單片機(jī)外圍電路連接
圖3 單片機(jī)與GPS模塊的連接
評論