亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于FPGA的GPS時(shí)統(tǒng)設(shè)計(jì)

        2014-01-13 07:10:16龔鑫
        關(guān)鍵詞:串口

        龔鑫

        【摘 要】近年來,GPS在國內(nèi)外得到廣泛的應(yīng)用,并在各個(gè)領(lǐng)域發(fā)揮了極大的作用,已成為信息時(shí)代不可缺少的一部分。出于電路面積、占用空間以及電路穩(wěn)定性和可靠性等因素的考慮,本設(shè)計(jì)選擇現(xiàn)場(chǎng)可編程門陣列(FPGA)來實(shí)現(xiàn)GPS信號(hào)的接收、提取以及存儲(chǔ)、轉(zhuǎn)發(fā)。

        【關(guān)鍵詞】GPS;FPGA;FIFO;串口

        0.引言

        全球定位系統(tǒng)(Global Positioning System簡(jiǎn)稱GPS)是美國第二代衛(wèi)星導(dǎo)航系統(tǒng)。它是在子午儀衛(wèi)星導(dǎo)航系統(tǒng)的基礎(chǔ)上發(fā)展起來的,GPS能提供全天候、連續(xù)、實(shí)時(shí)高精度導(dǎo)航參數(shù),可實(shí)現(xiàn)三維定位,并可提供精確的時(shí)間信息。因此,眾多用戶期望按照自己的使用環(huán)境和性能要求來設(shè)計(jì)和使用個(gè)性化的GPS定位接收機(jī)。

        1.GPS時(shí)統(tǒng)系統(tǒng)組成、原理

        1.1 GPS時(shí)統(tǒng)系統(tǒng)基本組成

        GPS時(shí)統(tǒng)同步系統(tǒng)由授時(shí)型GPS模塊、FPGA、1PPS信號(hào)輸出電路、時(shí)間及定位信息輸出電路組成,其原理框圖如圖1所示。GPS模塊是系統(tǒng)的核心模塊,其精度、可靠性等性能決定系統(tǒng)的性能。

        圖1 GPS時(shí)統(tǒng)系統(tǒng)基本組成

        1.2 GPS時(shí)統(tǒng)系統(tǒng)工作原理

        GPS模塊的信號(hào)輸出到FPGA,F(xiàn)PGA從碼流中提取時(shí)間信息。以GPS模塊輸出的lpps秒信號(hào)為基準(zhǔn),得到標(biāo)準(zhǔn)時(shí)間和鐘面,用FPGA做一個(gè)串行口再將標(biāo)準(zhǔn)時(shí)間和鐘面送給待授時(shí)設(shè)備。在正常工作情況下(能正常接收GPS信號(hào)),F(xiàn)PGA傳送給外部的串行口數(shù)據(jù)為GPS提供的信息,也就是標(biāo)準(zhǔn)時(shí)間。在非正常工作情況下(不能正常接收GPS信號(hào)),F(xiàn)PGA送給外部的數(shù)據(jù),為根據(jù)標(biāo)頻頻率信號(hào)經(jīng)過綜合后,自己產(chǎn)生的時(shí)間信息?;氐秸顟B(tài)時(shí),F(xiàn)PGA輸出立即轉(zhuǎn)為標(biāo)準(zhǔn)時(shí)間。

        1.3 GPS模塊的工作原理和通訊協(xié)議

        1.3.1 GPS模塊的工作原理

        GPS信號(hào)接收機(jī)的任務(wù)是捕獲按一定衛(wèi)星高度截止角所選擇的若干待測(cè)衛(wèi)星的信號(hào),并跟蹤這些衛(wèi)星的運(yùn)行。然后對(duì)所接收到的GPS信號(hào)進(jìn)行變換、放大和處理,以便測(cè)量出GPS信號(hào)從衛(wèi)星到接收機(jī)天線的傳播時(shí)間,再解譯出GPS衛(wèi)星所發(fā)送的導(dǎo)航電文.最后實(shí)時(shí)計(jì)算出觀測(cè)站的三維位置、三維速度和時(shí)間等。

        GPS模塊是GPS接收機(jī)的核心部件。該電路板具有接收GPS信號(hào)、處理信號(hào)、輸出觀測(cè)信號(hào)和定位結(jié)果等功能。我們選用GARMIN公司的GPS15L模塊,于該板作為GPS接收機(jī)的主要組成部分,接收來自天線單元的信號(hào),并通過變頻、放大、濾波等一系列處理過程,從而實(shí)現(xiàn)對(duì)GPS衛(wèi)星信號(hào)的跟蹤、鎖定、測(cè)量,最后產(chǎn)生計(jì)算位置的數(shù)據(jù)信息(包括:緯度、經(jīng)度、高度、速度、日期、時(shí)間、航向、衛(wèi)星狀況等),并由RS-232標(biāo)準(zhǔn)串口輸出串行數(shù)據(jù),該GPS模塊為12通道的GPS接收機(jī),可以同時(shí)跟蹤多達(dá)12顆GPS衛(wèi)星,并可連續(xù)追蹤GPS衛(wèi)星,以實(shí)現(xiàn)快速定位、授時(shí)??梢允笹PS模塊工作在出廠設(shè)定的默認(rèn)狀態(tài),此時(shí)無需設(shè)置輸入語句。但要使用GPS的信息,則必須通過輸出語句來獲得。

        1.3.2 GPS模塊通信協(xié)議

        GARMIN公司的GPS15L模塊的GPS定位信息串行輸出格式采用美國國家海洋電子協(xié)會(huì)制定的NMEA-0183通信標(biāo)準(zhǔn)格式。其輸出數(shù)據(jù)采用的是ASCII碼,數(shù)據(jù)格式設(shè)置為1個(gè)起始位,8個(gè)數(shù)據(jù)位,1個(gè)停止位,無奇偶校驗(yàn)。輸出默認(rèn)波特率為4800 baud。內(nèi)容包含緯度、經(jīng)度、高度、速度、日期、時(shí)間、航向以及衛(wèi)星狀況等信息.常用語句有6種,包括GGA、GLL、GSA、GSV、RMC和VTG。我們只關(guān)心其時(shí)間、經(jīng)緯度、地面速度信息等,因此,采用GPRMC最小定位信息來獲得所需信息。不過要注意,這些設(shè)置信息只在系統(tǒng)本次上電,并進(jìn)行設(shè)置后才有效。每次重新上電時(shí)均需重新設(shè)置。NMEA-0183通信標(biāo)準(zhǔn)格式如下:$<地址區(qū)>,<數(shù)據(jù)區(qū)>,<數(shù)據(jù)區(qū)>,…<校驗(yàn)區(qū)>, 其中:"$"為語句起始標(biāo)志;"地址區(qū)"為識(shí)別符;"數(shù)據(jù)區(qū)"為發(fā)送數(shù)據(jù)內(nèi)容;","為數(shù)據(jù)區(qū)分隔符;"校驗(yàn)區(qū)"內(nèi)為校驗(yàn)和;為語句結(jié)束符。

        下面以GPRMC語句為例來介紹。該語句包含時(shí)間、日期、方位、速度和磁偏角等信息,基本上可以滿足一般的導(dǎo)航需求。GPRMC語句的結(jié)構(gòu)為:$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,,<11>,*hh。其中,"GP"為交談識(shí)別符,"RMC"為語句識(shí)別符;"*"是檢驗(yàn)和識(shí)別符。"hh"是校驗(yàn)和,它們代表了"$"與"*"之間所有字符的按位異或值(不包括這兩個(gè)字符)。

        $GPRMC語句數(shù)據(jù)區(qū)的內(nèi)容如下:

        (1)UTC時(shí)間,hhmmss(時(shí)分秒)格式。

        (2)定位狀態(tài),A=有效定位,V=無效定位。

        (3)緯度ddmm.mmmm(度分)格式(前面的0也將被傳輸)。

        (4)緯度半球N(北半球)或S(南半球)。

        (5)經(jīng)度dddmm.mmmm(度分)格式(前面的0也將被傳輸)。

        (6)經(jīng)度半球E(東經(jīng))或W(西經(jīng))。

        (7)地面速率(000.0~999.9節(jié),前面的0也將被傳輸)。

        (8)地面航向(000.0~359.9度,以真北為參考基準(zhǔn),前面的0也將被傳輸)。

        (9)UTC日期,ddmmyy(日月年)格式。

        (10)磁偏角(000.0~180.0度,前面的0也將被傳輸)。

        (11)磁偏角方向,E(東)或W(西)。

        實(shí)際應(yīng)用中,我們只需提取時(shí)間和位置信息,并對(duì)定位數(shù)據(jù)的有效性進(jìn)行驗(yàn)證。

        2.串行通信及GPS模塊的配置

        由于FPGA接口采用TTL電平,而GPS模塊的串行通信采用RS-232標(biāo)準(zhǔn)電平,故需電平轉(zhuǎn)換,電平轉(zhuǎn)換接口可以通過MAX3232芯片來實(shí)現(xiàn)。GPS15L有兩個(gè)串行口,其端口1可用來輸入差分修正信息和輸出衛(wèi)星的原始測(cè)量信息,而端口2則用來輸入設(shè)定語句和輸出定位語句,因此,只需將FPGA接口與GPS15L串行口2對(duì)應(yīng)連接即可.其接口電路如圖1所示。FPGA的時(shí)鐘clk由外部標(biāo)頻提供。

        由于GPS15L的默認(rèn)波特率是4800 bit/s。故應(yīng)將FPGA中異步串行發(fā)送電路的波特率時(shí)鐘也設(shè)置為此值,具體可通過對(duì)系統(tǒng)的時(shí)鐘進(jìn)行分頻來實(shí)現(xiàn),發(fā)送完結(jié)束標(biāo)志符后,F(xiàn)PGA中的定位信息接收讀取電路即可開始工作,并等待數(shù)據(jù)的接收。我們用$GPRMC語句接收GPS模塊的定位信息,如果應(yīng)用系統(tǒng)還有其它特殊要求,還需要進(jìn)行初始化、配置以及對(duì)輸出語句進(jìn)行選擇。初始化可用$PGRMI語句來實(shí)現(xiàn),其結(jié)果是:

        $PGRMI,<1>,<2>,<3>,<4>,<5>,<6>,<7>*hh;其中,<1>~<4>項(xiàng)用以設(shè)置地理位置,它們的格式與$GPGGA語句的對(duì)應(yīng)項(xiàng)相同,第<5>項(xiàng)為UTC日期,格式為"日日月月年年",第<6>項(xiàng)為UTC時(shí)間,格式與$GPGGA語句相同,第<7>項(xiàng)中,A=自動(dòng)定位,R=設(shè)備復(fù)位。

        GPS模塊的配置可利用$PGRMC語句來完成。該語句共有14個(gè)有效項(xiàng),其中第<10>項(xiàng)選擇波特率,1~7分別代表標(biāo)準(zhǔn)波特率300~19200,配置時(shí),可以用空項(xiàng)表明保持原配置項(xiàng)不變。例如,配置為9600波特、輸出秒脈沖是,其語句為:$PGRMC,,,,,,,,,,,6,,2,,**hh;GPS15L的輸出語句共有10多條,默認(rèn)的輸出語句為$GPGGA等5條。用戶對(duì)輸出信息的設(shè)定可以通過$PGRMO語句實(shí)現(xiàn)。其結(jié)構(gòu)是:$PGRMO,<1>,<2>*hh;其中,<1>為合法語句名,如GPRMC;<2>為語句狀態(tài),1表示禁止該語句輸出,2表示允許該語句輸出,3表示禁止所有語句輸出,4表示允許所有語句輸出。例如,下列輸入語句只允許GPS模塊輸出$GPRMC語句:

        $PGRMO,3;禁止所有語句輸出。$PGRMO,GPRMC,2;允許$GPRMC語輸出。

        3.時(shí)間及定位信息的接收與讀取

        3.1接收模塊的設(shè)計(jì)

        本設(shè)計(jì)中的接收模塊主要負(fù)責(zé)接收由GPS模塊串口2輸出的導(dǎo)航定位信號(hào)。該模塊包括對(duì)TXD端的起始位檢測(cè)電路,采樣電路,波特率發(fā)生器和異步FIFO緩存設(shè)計(jì)等。本設(shè)計(jì)中的波特率發(fā)生器實(shí)際上是一個(gè)時(shí)鐘分頻器,所產(chǎn)生的分頻時(shí)鐘是波特率時(shí)鐘的16倍,目的是為了在接收時(shí)進(jìn)行精確的采樣,以提出異步串行數(shù)據(jù),同時(shí),也可為異步FIFO提供寫時(shí)鐘。

        接收之前應(yīng)對(duì)從GPS模塊直接輸出的RXD信號(hào)進(jìn)行同步處理,以濾除輸出中的干擾,降低異步時(shí)域數(shù)據(jù)傳輸中亞穩(wěn)態(tài)產(chǎn)生的概率,提高系統(tǒng)的穩(wěn)定性和可靠性。本設(shè)計(jì)采用兩級(jí)D觸發(fā)器來實(shí)現(xiàn)信號(hào)同步。根據(jù)異步傳輸?shù)耐ㄓ崊f(xié)議,當(dāng)電路檢測(cè)到GPS模塊同步后的輸出端syn_TXD發(fā)生負(fù)跳變時(shí),整個(gè)接收采樣電路開始工作。為了避免干擾和得到正確的起始位,在波特率時(shí)鐘檢測(cè)過程中,至少必須有一半屬于邏輯0,即8個(gè)時(shí)鐘周期后,才可認(rèn)定收到是可靠的起始位。當(dāng)接收到正確的起始位后.接著的數(shù)據(jù)位將每隔16個(gè)采樣周期被采樣一次。即取每一位的第8次的波特率時(shí)鐘采樣值來確保采樣正確。圖2所示是本系統(tǒng)的串口接收狀態(tài)圖。連續(xù)采樣8次后,即一個(gè)字節(jié)數(shù)據(jù)接收完成之后,便可設(shè)置位結(jié)束標(biāo)志。每采樣一個(gè)字節(jié)數(shù)據(jù),都先放入FIFO中緩存。由于GPRMC格式數(shù)據(jù)所傳輸?shù)淖畲笞止?jié)數(shù)是72Byte,故當(dāng)接收完一組數(shù)據(jù)之后,都要對(duì)FIFO的滿信號(hào)置位,并由外部的全局時(shí)鐘控制將里面緩存的數(shù)據(jù)讀出,以供后續(xù)部分處理。讀完之后,即可接收到后續(xù)模塊的結(jié)束標(biāo)志,然后復(fù)位讀使能,以等待下一組數(shù)據(jù)的到來。

        圖2 串口接收的狀態(tài)圖

        3.2數(shù)據(jù)校驗(yàn)和存儲(chǔ)設(shè)計(jì)

        要正確讀取GPS模塊的輸出語句,首先是判斷語句類型,其次是存放數(shù)據(jù),然后再確定語句的結(jié)束標(biāo)志。本例中將接收的數(shù)據(jù)存放在FPGA內(nèi)部設(shè)定的RAM中,而對(duì)時(shí)間,位置等信息的提取和處理則在其它部分完成。

        數(shù)據(jù)校驗(yàn)?zāi)K由FIFO的滿信號(hào)啟動(dòng)。當(dāng)檢測(cè)到滿信號(hào)有效時(shí),校驗(yàn)?zāi)K連續(xù)的讀取數(shù)據(jù)并進(jìn)行處理。當(dāng)檢測(cè)到起始標(biāo)志"$"后,即進(jìn)入數(shù)據(jù)讀取和檢測(cè)。輸出數(shù)據(jù)是以語句的形式出現(xiàn)的,每條語句代表一種數(shù)據(jù),每種數(shù)據(jù)都有它自己的識(shí)別碼,所以,要根據(jù)收到的語句識(shí)別碼來判斷該語句是否為所需要的內(nèi)容(如GPRMC中,"GP"為識(shí)別符,"RMC"為語句名)。

        根據(jù)NMEA-0183通信標(biāo)準(zhǔn)格式的內(nèi)容,可對(duì)所接收到的數(shù)據(jù)進(jìn)行檢驗(yàn)。即對(duì)接收到的信息逐字節(jié)異或。當(dāng)接收到"*"時(shí),比較下一字符"hh"與實(shí)際異或值是否相等。若相等,即所接收的數(shù)據(jù)正確;若不等,則所接收數(shù)據(jù)無效,系統(tǒng)隨之復(fù)位存儲(chǔ)設(shè)備,并等待檢測(cè)下一組數(shù)據(jù)。當(dāng)檢測(cè)到結(jié)束符時(shí),標(biāo)志數(shù)據(jù)讀取結(jié)束,系統(tǒng)向FIFO發(fā)出結(jié)束標(biāo)志,并等待下一次數(shù)據(jù)檢測(cè)。其系統(tǒng)校驗(yàn)流程圖如圖3所示。

        圖3 校驗(yàn)部分流程圖

        4.守時(shí)系統(tǒng)設(shè)計(jì)

        當(dāng)有GPS信號(hào)時(shí),F(xiàn)PGA根據(jù)1PPS信號(hào)不斷檢測(cè)外標(biāo)頻的頻率,根據(jù)檢測(cè)結(jié)果控制匹配寄存器的匹配值。FPGA內(nèi)部32位定時(shí)計(jì)數(shù)器T0一直對(duì)外標(biāo)頻頻率計(jì)數(shù),捕獲寄存器T1在1PPS信號(hào)觸發(fā)下裝入當(dāng)前計(jì)數(shù)器T0的計(jì)數(shù)值;32位計(jì)數(shù)器T0一直連續(xù)計(jì)數(shù)。當(dāng)1PPS信號(hào)到來時(shí),產(chǎn)生中斷,捕獲寄存器T1裝入T0當(dāng)前的計(jì)數(shù)值CT1并保存下來;當(dāng)下一個(gè)1PPS信號(hào)到來時(shí),T1裝入T0的計(jì)值CT2,標(biāo)頻頻率為(CT2-CT1)或(CT1+2^32-CT2)T0計(jì)數(shù)溢出時(shí)的情況。FPGA采用對(duì)本地時(shí)鐘的計(jì)數(shù)來分別產(chǎn)生各同步時(shí)間。如圖4所示。例如:TX時(shí)刻對(duì)應(yīng)的計(jì)數(shù)值CTX:

        CTX=CT1+TX×(CT2-CT1)/外標(biāo)頻的頻率f

        當(dāng)沒有GPS信號(hào)時(shí),F(xiàn)PGA根據(jù)外部標(biāo)頻頻率及有GPS信號(hào)時(shí),定時(shí)計(jì)數(shù)器的計(jì)數(shù)值產(chǎn)生1PPS信號(hào)、各種同步時(shí)間及時(shí)間信息,送給待授時(shí)設(shè)備。

        圖4

        5.結(jié)束語

        本文結(jié)合PFGA和GPS-15L模塊的硬件特點(diǎn),分析了FPGA和GPS模塊的串行通訊問題,同時(shí)重點(diǎn)分析了讀取GPS定位信息的設(shè)計(jì)問題。 [科]

        【參考文獻(xiàn)】

        [1]王誠,吳繼華,范麗珍,薛寧,薛小剛.Altera FPGA/CPLD 設(shè)計(jì).人民郵電出版社,2005.

        [2]褚振勇,齊亮,田紅心,高揩娟.FPGA設(shè)計(jì)及應(yīng)用.西安電子科技大學(xué)出版社,2006.

        [3]張亮.數(shù)字電路設(shè)計(jì)與Verilog HDL.人民郵電出版社,2000.

        猜你喜歡
        串口
        淺談AB PLC串口跟RFID傳感器的通訊應(yīng)用
        數(shù)字電源內(nèi)部數(shù)據(jù)傳輸?shù)拇谕ㄐ欧椒▽?shí)現(xiàn)
        USB接口的多串口數(shù)據(jù)并行接收方法探索
        串口技術(shù)的實(shí)物調(diào)試和虛擬仿真聯(lián)合教學(xué)模式
        基于藍(lán)牙串口適配器的GPS接收機(jī)與AutoCAD的實(shí)時(shí)無線通信
        基于并行控制的FPGA多串口拓展實(shí)現(xiàn)
        国产成人自拍小视频在线| 中文字幕精品人妻丝袜| 国内精品国产三级国产avx| 亚洲av毛片一区二区久久| 久久亚洲国产高清av一级| 一区二区三区在线观看视频精品| 亚州无吗一区二区三区| 中国男女黄色完整视频| 国产av精品麻豆网址| 无码人妻一区二区三区在线| 成人免费看片又大又黄| 麻豆高清免费国产一区 | 日本熟妇hd8ex视频| 蜜桃视频中文在线观看| 一本久久综合亚洲鲁鲁五月夫| 精品国产污黄网站在线观看| 美女和男人一起插插插| 虎白m粉嫩小在线播放| 在线一区二区三区国产精品| 成人欧美一区二区三区在线 | 中文字幕午夜精品久久久| 国产精品一区二区性色| 亚洲人精品午夜射精日韩| 国产 麻豆 日韩 欧美 久久| 55夜色66夜色国产精品视频| 无遮挡十八禁在线视频国产制服网站 | 国产精品一区二区日韩精品 | 日韩精品免费av一区二区三区| 久草手机视频在线观看| 精品熟人妻一区二区三区四区不卡| 免费a级毛片无码av| 三年片免费观看大全国语| 男女好痛好深好爽视频一区 | 国产一区二区三区在线电影| 无码一区二区三区老色鬼| 久久国产精品免费一区六九堂| 亚洲传媒av一区二区三区| 国产激情自拍在线视频| 麻豆婷婷狠狠色18禁久久 | 精品亚洲第一区二区三区| 男女18禁啪啪无遮挡激烈网站|