• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于FPGA的GPS定位信息顯示系統(tǒng)

    2012-11-15 07:36:22曹新苗林建輝
    中國測試 2012年5期
    關(guān)鍵詞:液晶顯示接收機串口

    曹新苗,林建輝,張 兵

    (西南交通大學(xué)牽引動力國家重點實驗室,四川 成都 610031)

    0 引 言

    全球定位系統(tǒng)(global positioning system,GPS)是美國研制的無線電導(dǎo)航定位系統(tǒng),能夠迅速、準確、全天候地提供定位信息[1-2]。地球上任何一臺GPS接收機只要能夠接收到4顆以上的衛(wèi)星信號,經(jīng)過計算處理后,就能得到這臺GPS接收機的位置(經(jīng)緯度和高度)、時間以及運動狀態(tài)等信息[3]。

    本文以Quartus II軟件作為FPGA的開發(fā)平臺,采用Verilog HDL硬件描述語言,在EP3C10E144C8N芯片上,利用FPGA的可重復(fù)編程特點,實現(xiàn)對GPS數(shù)據(jù)的采集、處理以及顯示控制。

    1 GPS15L OEM結(jié)構(gòu)板特性和數(shù)據(jù)輸出

    本設(shè)計選用GARMIN公司的GPS15L接收機,有12個通道,能夠快速定位,功耗非常小,數(shù)據(jù)更新率為每秒一次,其優(yōu)良的性能既能滿足陸地導(dǎo)航的靈敏度要求,也能滿足飛行器的動態(tài)要求。該OEM板的工作電壓為3.3~5.4V,具有2個串行口,串口1為異步串行數(shù)據(jù)的輸入和輸出,輸入數(shù)據(jù)為初始位置、時間、秒脈沖狀態(tài)等設(shè)置信息,輸出數(shù)據(jù)為GPS定位信息;串口2接收GPS差分信息,實時修正數(shù)據(jù)。

    該GPS接收機輸出的數(shù)據(jù)格式是美國國家海洋電子協(xié)會(National Marine Electronics Association)為海用電子設(shè)備制定的NMEA 0183標準格式,該協(xié)議采用ASCII碼,其串行通信默認參數(shù)為:波特率=9600b/s,數(shù)據(jù)位=8bit,開始位=1bit,停止位=1bit,無奇偶校驗[4]。常用的NMEA 0813輸出語句有十幾種,每種語句是以“S”開頭,以<CR><LF>結(jié)束,也就是ASCII碼字符的“回車”(十六進制的0D)和“換行”(十六進制的0A)。

    由于只需要日期、時間和經(jīng)緯度信息就可實現(xiàn)定位,因此選用最小定位信息GPRMC語句。為了數(shù)據(jù)處理時更簡單,將OEM板初始化,只輸出GPRMC一種語句,并設(shè)置波特率為19200b/s。其中GPRMC語句格式為:SGPRMC,hhmmss,A/V,ddmm.mmmm,N/S,dddmm.mmmm,E/W,xxx.x,xxx.x,ddmmyy,xxxx,E/W,*hh。例如:SGPRMC,040503,A,3026.6057,N,10412.6057,E,,,011211,,W*67。

    從這個例子可以得到UTC日期是11年12月1號,時間為 4∶05∶03,轉(zhuǎn)化為北京時間就為 12∶05∶03,緯度為北緯 30°26.6057′,經(jīng)度為東經(jīng) 104°12.6057′。

    2 采集與顯示GPS定位信息的FPGA系統(tǒng)設(shè)計

    2.1 硬件設(shè)計

    整個系統(tǒng)主要是由3個部分組成:(1)OEM板;(2)FPGA;(3)液晶顯示模塊。

    GPS OEM板輸出電平為RS-232,而FPGA是TTL電平,因此需要電平轉(zhuǎn)化,這里采用電平轉(zhuǎn)換芯片為MAX232,此芯片是MAXIM公司生產(chǎn)的,包含兩路接收器和驅(qū)動器的電平轉(zhuǎn)換芯片,適用于各種RS-232通信接口,+5V電源供電,其內(nèi)部有電壓倍增電路和轉(zhuǎn)換電路[5],與FPGA連接十分方便。顯示定位數(shù)據(jù)是采用ST7920控制器液晶模塊,此模塊可以直接和FPGA連接,并且具有專門的指令,可以靈活的運用。GPS15L OEM板和液晶模塊與FPGA連接的原理圖如圖1所示。

    2.2 軟件設(shè)計

    圖1 OEM板和液晶模塊與FPGA連接電路原理圖

    本設(shè)計選用可編程邏輯器件FPGA,采用硬件描述語言Verilog HDL按照自頂向下的設(shè)計方法設(shè)計GPS數(shù)據(jù)的采集和顯示系統(tǒng)[6]。該軟件系統(tǒng)主要包括時鐘分頻模塊fdiv、串口模塊rx和信息處理以及液晶顯示模塊hand_lcd,系統(tǒng)頂層文件方框圖如圖2所示。

    圖2 系統(tǒng)頂層文件方框圖

    2.2.1 fdiv分頻模塊

    分頻模塊主要產(chǎn)生采集和顯示GPS定位數(shù)據(jù)需要的時鐘信號頻率。FPGA的時鐘頻率為50MHz,而OEM板串口波特率為19200 b/s,為提高系統(tǒng)的容錯性處理,要求分頻器的輸出時鐘為實際串口數(shù)據(jù)波特率的 N 倍,N 的取值為 8,16,32,64 等[7]。本設(shè)計中N的取值為16,所以分頻器的輸出信號頻率為19200×16=307200Hz,這樣就需要對FPGA系統(tǒng)時鐘進行162分頻;液晶顯示的時鐘頻率為2000Hz,同樣需要分頻,采用的分頻方法是先將系統(tǒng)時鐘分頻為1MHz,再對1MHz進行500分頻就可得到液晶顯示的時鐘頻率。

    2.2.2 rx串口模塊

    串口模塊主要作用是采集GPS數(shù)據(jù),并將采集到的串行數(shù)據(jù)轉(zhuǎn)化為并行數(shù)據(jù)輸出給數(shù)據(jù)處理模塊,此程序采用狀態(tài)機來實現(xiàn),分別為s_idle,s_sample和s_stop 3種狀態(tài)。

    s_idle:此狀態(tài)用于檢測GPS接收機發(fā)送數(shù)據(jù)的起始信號。FPGA系統(tǒng)復(fù)位后,接收模塊rx就處于空閑狀態(tài),在RS232串行通信中,在不發(fā)送數(shù)據(jù)時,串行總線保持邏輯“1”狀態(tài),當(dāng)需要發(fā)送數(shù)據(jù)時,會首先發(fā)送一個起始位,其邏輯值為“0”,表示開始發(fā)送數(shù)據(jù);因此,F(xiàn)PGA系統(tǒng)要不斷檢測發(fā)送過來的數(shù)據(jù)位是否從1跳變?yōu)?,如果發(fā)生跳變,狀態(tài)機就進入到s_sample,采集GPS接收機發(fā)送的數(shù)據(jù)。

    s_sample:這是數(shù)據(jù)采樣狀態(tài),在這個狀態(tài)中,接收模塊rx連續(xù)采樣GPS接收機發(fā)送過來的數(shù)據(jù),并對每16個采樣數(shù)據(jù)進行最大似然判斷,得到相應(yīng)的邏輯值。做這種判斷的目的是得到有效的數(shù)據(jù)位,需要重復(fù)8次,才能接收完一個8位數(shù)據(jù)。接收時,先將接收到的每個數(shù)據(jù)位保存在一個8位寄存器中,接收完一個數(shù)據(jù)后,通過串并轉(zhuǎn)換,將接收到的串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù)輸出。接收完8個數(shù)據(jù)比特后,就轉(zhuǎn)為s_stop狀態(tài)。s_sample狀態(tài)程序的具體流程圖如圖3所示。

    s_stop:這個狀態(tài)是檢測停止位,程序比較簡單,只需要計數(shù),計數(shù)值為15時就轉(zhuǎn)為s_idle狀態(tài),繼續(xù)接收下一幀數(shù)據(jù)。

    2.2.3 hand_lcd信息處理與顯示模塊

    數(shù)據(jù)處理與顯示模塊主要是處理采集到的GPS數(shù)據(jù),分離出需要的日期、時間、經(jīng)度和緯度數(shù)據(jù)并保存,供液晶顯示模塊調(diào)用。處理定位信息時,由于GPS接收機輸出的語句只有GPRMC一種,所以只需要對接收到的數(shù)據(jù)判斷開頭是不是“S”,再通過判斷逗號數(shù)量的方法,就可以將需要的定位數(shù)據(jù)分離出來,接收到“*”后,停止接收。程序流程圖如圖4所示。

    圖3 s_sample流程圖

    圖4 處理GPS定位信息流程圖

    利用逗號數(shù)量分離定位數(shù)據(jù)的程序為:

    數(shù)據(jù)顯示部分程序利用狀態(tài)機來實現(xiàn),同樣采用編程語言來實現(xiàn)此狀態(tài)機,最后在Quartus II中得到狀態(tài)轉(zhuǎn)移圖[8],此液晶顯示模塊程序的狀態(tài)圖如圖5所示。

    使用液晶模塊顯示數(shù)據(jù),首先需要對其進行初始化,設(shè)置顯示方式以及清屏等操作,流程圖如圖6所示。

    圖5 液晶顯示模塊程序狀態(tài)轉(zhuǎn)移圖

    圖6 液晶顯示模塊初始化流程圖

    圖7 GPS定位信息顯示

    液晶模塊初始化完成之后,需要判斷GPS數(shù)據(jù)處理是否完成,如果完成就分別顯示各定位數(shù)據(jù)。顯示日期和時間之前,需要對日期和時間進行轉(zhuǎn)換,GPS接收機發(fā)送的是世界時間,轉(zhuǎn)換為北京時間需要加上8h,如果超過24h,則已是第二天,需要對接收到的日期加1,同時對時間減去24h,就會得到準確的北京時間[9]。依次顯示完各定位數(shù)據(jù)后,返回一個完成標志給數(shù)據(jù)處理程序,使其繼續(xù)處理接收到的GPS數(shù)據(jù)。

    本系統(tǒng)經(jīng)過多次修改與調(diào)試,最終能夠正確顯示GPS定位信息,可以實現(xiàn)基本定位功能。圖7顯示了日期時間以及當(dāng)?shù)氐奈恢眯畔ⅲ?1年12月6號,23∶8∶23,北緯 30°42.2856′,東經(jīng) 104°2.4673′。

    3 結(jié)束語

    本文給出了硬件電路原理圖,論述GPS定位數(shù)據(jù)采集、處理以及顯示的方法,在Quartus II開發(fā)平臺下進行編譯、仿真和下載,成功實現(xiàn)GPS定位信息顯示。該系統(tǒng)與無線傳輸模塊、電子地圖等連接后,可以實現(xiàn)列車定位功能。也可以通過無線傳輸模塊,將FPGA采集和處理后的時間、經(jīng)緯度以及列車速度信息實時傳輸?shù)诫娔X上,應(yīng)用到高速列車檢測中。

    [1]劉美生.全球定位系統(tǒng)及其應(yīng)用綜述(二):GPS[J].中國測試技術(shù),2006,32(6):5-11.

    [2]許化龍,胡來紅,曲從善,等.基于ARM的嵌入式GPS接收機設(shè)計與實現(xiàn)[J].戰(zhàn)術(shù)導(dǎo)彈控制技術(shù),2006(2):50-53.

    [3]徐鑫.基于GPS的車輛定位監(jiān)控系統(tǒng)的設(shè)計與實現(xiàn)[D].成都:電子科技大學(xué),2005.

    [4]李明光,陳國通,王莉靜.C8051Fxxx單片機與GPS-OEM板數(shù)據(jù)通信的實現(xiàn)[J].河北工業(yè)科技,2009(4):243-245.

    [5]劉曉,伍小東,姚軍光,等.基于單片機采集GPS數(shù)據(jù)系統(tǒng)的設(shè)計[J].青島科技大學(xué)學(xué)報,2005(2):172-175.

    [6]陳忠平,高金定,高見芳.基于Quartus II的FPGA/CPLD設(shè)計與實踐[M].北京:電子工業(yè)出版社,2010:75-127.

    [7]云創(chuàng)工作室.Verilog HDL程序設(shè)計與實踐[M].北京:人民郵電出版社,2009:43-197.

    [8]EDA先鋒工作室,吳繼華,蔡海寧,等.Altera FPGA/CPLD設(shè)計(基礎(chǔ)篇)[M].2版.北京:人民郵電出版社,2011:65-216.

    [9]趙志禮,孟慶輝,張松濤,等.基于單片機的GPS定位信息處理[J].電子測試,2009(10):45-48.

    猜你喜歡
    液晶顯示接收機串口
    淺談AB PLC串口跟RFID傳感器的通訊應(yīng)用
    一種用于調(diào)幅接收機AGC的設(shè)計與實現(xiàn)
    一種面向ADS-B的RNSS/RDSS雙模接收機設(shè)計
    電子制作(2018年19期)2018-11-14 02:36:40
    數(shù)字接收機故障維修與維護
    電子制作(2016年1期)2016-11-07 08:42:41
    基于多接收機的圓周SAR欺騙干擾方法
    122×32 點陣液晶顯示漢字原理實驗
    USB接口的多串口數(shù)據(jù)并行接收方法探索
    基于藍牙串口適配器的GPS接收機與AutoCAD的實時無線通信
    地礦測繪(2015年3期)2015-12-22 06:27:26
    基于并行控制的FPGA多串口拓展實現(xiàn)
    界面致穩(wěn)型柔性膽甾相液晶顯示器件的制備與性能
    长子县| 景泰县| 两当县| 遂溪县| 通江县| 克什克腾旗| 安康市| 武义县| 左权县| 道孚县| 大关县| 博客| 沂南县| 若尔盖县| 西吉县| 遂川县| 镇平县| 连山| 闽清县| 钟山县| 安平县| 大姚县| 安阳市| 兰坪| 全南县| 边坝县| 富裕县| 河西区| 长丰县| 沙田区| 通海县| 清新县| 闵行区| 竹溪县| 师宗县| 梁河县| 大冶市| 阜新| 朝阳区| 独山县| 庆安县|