當(dāng)前位置:首頁(yè) > EDA > 電子設(shè)計(jì)自動(dòng)化
[導(dǎo)讀]摘要:全球衛(wèi)星定位系統(tǒng)(CPS)可以時(shí)海陸空進(jìn)行全方位的實(shí)時(shí)定位與導(dǎo)航,其應(yīng)用日益廣泛,通過(guò)GPS定位系統(tǒng)及其信息接收裝置可以實(shí)現(xiàn)對(duì)當(dāng)前所在位置的確定 系統(tǒng)使用天線接收GPS衛(wèi)星信號(hào),并在μC/OS操作系統(tǒng)下用NIO

摘要:全球衛(wèi)星定位系統(tǒng)(CPS)可以時(shí)海陸空進(jìn)行全方位的實(shí)時(shí)定位與導(dǎo)航,其應(yīng)用日益廣泛,通過(guò)GPS定位系統(tǒng)及其信息接收裝置可以實(shí)現(xiàn)對(duì)當(dāng)前所在位置的確定 系統(tǒng)使用天線接收GPS衛(wèi)星信號(hào),并在μC/OS操作系統(tǒng)下用NIOS處理器進(jìn)行分析處理,以保證其實(shí)時(shí)性,最終輸出位置、速度等信息進(jìn)行定位。本系統(tǒng)通過(guò)實(shí)驗(yàn)測(cè)試驗(yàn)證,定位具有較高的準(zhǔn)確性和實(shí)時(shí)性。
關(guān)鍵詞:GPS;衛(wèi)星定位;NIOS處理器;μC/OS操作系統(tǒng)

0 引言
    GPS全球衛(wèi)星定位系統(tǒng)在天空中是由24顆衛(wèi)星組成的GPS星座構(gòu)成,它們特定的排列方式可以使地球上任何地方任何時(shí)刻都可以觀測(cè)到四顆及以上衛(wèi)星,定位精度高,是現(xiàn)有的衛(wèi)星定位系統(tǒng)中最常用的技術(shù)比較成熟和穩(wěn)定的定位系統(tǒng),因此在當(dāng)今社會(huì)GPS的應(yīng)用十分廣泛,涵蓋陸地、海洋以及航空航天方面的應(yīng)用,尤其是車輛導(dǎo)航、航程航線測(cè)定、船只實(shí)時(shí)調(diào)度與導(dǎo)航等都可以看成是一個(gè)個(gè)GPS顯示系統(tǒng)??梢?jiàn),GPS顯示系統(tǒng)能為人們的生活和工作帶來(lái)許多方便,所以GPS信息接收和顯示裝置的設(shè)計(jì)開(kāi)發(fā)具有廣闊的發(fā)展前景。
    GPS信息的接收模塊技術(shù)如今比較成熟,主要可以分為軍事和民用的兩類。民用的GPS芯片對(duì)于精度的要求并不是很高,但基本都能滿足人們的實(shí)用要求。由于GPS模塊接收到的數(shù)據(jù)無(wú)法直接讀取,因此需要設(shè)計(jì)一個(gè)合理的信息接收轉(zhuǎn)換及顯示系統(tǒng),將GPS模塊接收的定位數(shù)據(jù)轉(zhuǎn)化為能夠直接讀取的格式并顯示出來(lái)。
    本文設(shè)計(jì)的基于NIOS處理器的GPS定位信息顯示系統(tǒng)的主要目的是接收GPS定位衛(wèi)星的定位信息并實(shí)現(xiàn)時(shí)間、經(jīng)度、緯度以及速度等信息的實(shí)時(shí)顯示,為人們的日常生活帶來(lái)便利。

1 系統(tǒng)的原理及整體設(shè)計(jì)
1.1 系統(tǒng)原理
   
GPS模塊接收GPS定位衛(wèi)星發(fā)射的信號(hào),并在其內(nèi)部經(jīng)過(guò)一系列的信息處理解析出具有一定格式的、可讀性較強(qiáng)的導(dǎo)航電文,其中包含了經(jīng)緯度和速度等定位信息。系統(tǒng)設(shè)計(jì)的GPS信息接收系統(tǒng),主要是基于FPGA完成的,通過(guò)Verilog硬件描述語(yǔ)言在FPGA上嵌入NIOSⅡ處理器,并引入μC/OS實(shí)時(shí)操作系統(tǒng)來(lái)優(yōu)化整個(gè)系統(tǒng)的工作,通過(guò)C語(yǔ)言編程從GPS模塊輸出的定位信息中提取經(jīng)緯度和速度等信息,并利用液晶顯示器顯示出來(lái)。
    GPS的輸出數(shù)據(jù)遵循NMEA-0183協(xié)議標(biāo)準(zhǔn),即美國(guó)海軍的電子設(shè)備標(biāo)準(zhǔn)。該協(xié)議定義了GPS接收模塊輸出的標(biāo)準(zhǔn)信息,最常用、兼容性最廣的語(yǔ)句格式包括:$GPRMC,$GPGGA,$GPGSV,$GPGSA,$GPGLL等。本設(shè)計(jì)選用$GPRMC,其數(shù)據(jù)格式為:
    $GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>*hh
    其中:<1>為格林尼治時(shí)間;<2>為定位狀態(tài),A=有效定位;<3>為緯度;<4>為緯度半球;<5>為經(jīng)度;<6>為經(jīng)度半球;<7>為地面速率;<8>為地面航向;<9>為格林尼治日期。
1.2 系統(tǒng)整體設(shè)計(jì)
   
系統(tǒng)總體分為五大部分:GPS接收模塊、FPGA及其內(nèi)部NIOSⅡ處理器部分、擴(kuò)展存儲(chǔ)部分、液晶顯示部分及下載線部分。其整體結(jié)構(gòu)框圖如圖1所示。


    (1)GPS接收模塊。能夠捕獲到按一定衛(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所發(fā)送的導(dǎo)航電文。此過(guò)程完全在現(xiàn)有的GPS模塊中完成,本設(shè)計(jì)只需要了解其輸出數(shù)據(jù)的格式并完成對(duì)它的解析即可。
    (2)FPGA及其內(nèi)部NIOSⅡ處理器部分。通過(guò)使用Verilog硬件描述語(yǔ)言在FPGA上搭建一個(gè)MOSⅡ處理器,并描述出FPGA內(nèi)部邏輯電路的連接方式,然后在NIOSⅡ處理器中移植入一個(gè)μC/OS操作系統(tǒng),采用C語(yǔ)言編程控制整個(gè)系統(tǒng)的工作,對(duì)GPS導(dǎo)航電文進(jìn)行解析并控制液晶顯示等。
    (3)擴(kuò)展存儲(chǔ)部分。片外的FLASH和SDRAM擴(kuò)展了系統(tǒng)的容量,可以實(shí)現(xiàn)大規(guī)模的編程,完成復(fù)雜的任務(wù),本設(shè)計(jì)由于需要操作系統(tǒng)的植入,需要更大的存儲(chǔ)空間,因此在FPGA的外圍設(shè)置了FLASH和SDRAM。
    (4)液晶顯示部分。FPGA將從GPS模塊解析出來(lái)的位置、速度等信息送給液晶,由液晶顯示器顯示出來(lái),并且要保證其能夠?qū)崟r(shí)更新。
    (5)下載線部分。通過(guò)Altera USB Blaster把電腦里編譯好的程序下載到FPGA中的NIOSⅡ處理器上,并進(jìn)行在線調(diào)試。

2 系統(tǒng)硬件設(shè)計(jì)
   
系統(tǒng)硬件設(shè)計(jì)根據(jù)各部分的功能需求主要包括2個(gè)部分:FPGA及其外圍電路、GPS模塊及液晶顯示電路。GPS模塊負(fù)責(zé)接收衛(wèi)星的定位信息并輸出導(dǎo)航電文,F(xiàn)PGA及其嵌入的NIOS處理器是分析和處理導(dǎo)航電文的核心,液晶顯示屏則顯示可直接讀取的定位信息。
2.1 FPCA及其外圍電路
    FPGA芯片選用Altera公司的CyeloneⅢ系列芯片,該芯片有相應(yīng)的完善的設(shè)計(jì)開(kāi)發(fā)平臺(tái),方便系統(tǒng)的設(shè)計(jì)與調(diào)試。
    FPGA配置采用AS+JTAG方式,這樣在調(diào)試階段可以使用JTAG方式,最后當(dāng)程序調(diào)試無(wú)誤后在使用AS模式把程序燒到配置芯片里去。這樣做的一個(gè)明顯的優(yōu)點(diǎn)是:在AS模式不能下載的時(shí)候,可以利用Quartus自帶的工具將配置程序生成.jic文件,用JTAG模式來(lái)驗(yàn)證配置芯片是否損壞。通過(guò)JTAG將FPGA的配置程序?qū)懭氲狡馀渲眯酒校綦姴粊G失,每次上電時(shí)再將其中的程序讀入到FPGA中。另外在FPGA的I/O引腳接入一些LED燈,方便觀察測(cè)試結(jié)果,也可用來(lái)檢驗(yàn)設(shè)計(jì)的正確與否。
2.2 GPS接收模塊及液晶顯示電路
   
GPS接收模塊采用Ublox NEO-6M模塊,它是一個(gè)現(xiàn)有的GPS接收模塊,輸出的導(dǎo)航電文格式清晰,便于處理。它將接收到的衛(wèi)星定位信息在其內(nèi)部經(jīng)過(guò)簡(jiǎn)單的處理輸出給FPGA的I/O端口,在FPGA內(nèi)部解析之后又通過(guò)另外的I/O端口發(fā)送給液晶顯示器。液晶顯示選用12864液晶顯示器,并采用串行數(shù)據(jù)輸入方式,將接收到的數(shù)據(jù)顯示出來(lái)。
2.3 供電部分
   
因FPGA各管腳所需輸入電壓包括3.3 V,2.5 V和1.2 V,12864液晶需要5 V,GPS模塊所需電壓為3.3 V,因此整個(gè)電路板需要多種供電電壓,供電電路的設(shè)計(jì)思想是輸入5 V電壓,再通過(guò)電平轉(zhuǎn)換電路轉(zhuǎn)換出其他所需要的電平。


    系統(tǒng)供電模塊如圖2所示。其中電源與地之間的電容主要作用是去除電源中耦合的其他信號(hào),以減小甚至是消除這些信號(hào)對(duì)電源的影響。

3 系統(tǒng)軟件設(shè)計(jì)
    FPGA內(nèi)部使用Quartus內(nèi)嵌的工具SoPC Builder搭建NIOSⅡ處理器,并用Verilog硬件描述語(yǔ)言來(lái)描述FPGA內(nèi)部電路結(jié)構(gòu),而μC/OS實(shí)時(shí)操作系統(tǒng)的植入及系統(tǒng)的控制程序則是由C語(yǔ)言編程完成的。
3.1 FPGA內(nèi)部邏輯實(shí)現(xiàn)
   
首先構(gòu)建NIOSⅡ處理器,包括一個(gè)CPU和它的內(nèi)存單元、JTAG和UART部分,如圖3所示。


    從圖3中可以看出NIOS處理器和外圍設(shè)備及接口的大概結(jié)構(gòu),各部分通過(guò)Avalon總線連接起來(lái),并可以自動(dòng)分配地址和中斷。
    根據(jù)設(shè)計(jì)對(duì)實(shí)時(shí)性的需要,其中NIOS軟核選擇NIOSⅡ/f,它占資源最多,但速度最快,并且功能最多;RS 232串口根據(jù)NMEA-0183協(xié)議,為了獲取GPS定位信息,必須將波特率設(shè)置為9 600 b/s,數(shù)據(jù)位設(shè)置為8 b,停止位設(shè)置為1 b,校驗(yàn)為設(shè)置為無(wú)。


    然后用Verilog硬件描述語(yǔ)言實(shí)現(xiàn)FPGA內(nèi)部邏輯,包括NIOSⅡ處理器、鎖相環(huán)等。最后,F(xiàn)PGA內(nèi)部綜合后的RTL結(jié)構(gòu)如圖4所示。
3.2 系統(tǒng)功能程序設(shè)計(jì)
   
在構(gòu)建好NIOS處理器的基礎(chǔ)上,采用C語(yǔ)言編程將μC/OS實(shí)時(shí)操作系統(tǒng)移植到處理器中,并編寫(xiě)實(shí)現(xiàn)設(shè)計(jì)功能的程序,如接收CPS定位數(shù)據(jù)、GPS信息解碼、延時(shí)和LCD液晶顯示程序等。主程序及主要子程序流程圖如圖5所示。
    本文中μC/OS操作系統(tǒng)的使用,即是建立若干個(gè)任務(wù),將實(shí)現(xiàn)功能的各程序函數(shù)放入各任務(wù)中,并分別對(duì)任務(wù)設(shè)置不同的優(yōu)先級(jí),任務(wù)之間的通信是通過(guò)發(fā)送信號(hào)量實(shí)現(xiàn)。當(dāng)任務(wù)創(chuàng)建完成之后,將操作權(quán)交給操作系統(tǒng),由操作系統(tǒng)對(duì)各任務(wù)的執(zhí)行順序進(jìn)行安排。μC/OS操作系統(tǒng)可以實(shí)現(xiàn)在一個(gè)任務(wù)掛起時(shí),馬上開(kāi)始執(zhí)行另一個(gè)處于等待狀態(tài)的優(yōu)先級(jí)最高的任務(wù),從而提高系統(tǒng)的實(shí)時(shí)性。任務(wù)的執(zhí)行流程如圖6所示。


    設(shè)計(jì)中,出于對(duì)系統(tǒng)功能的考慮,在μC/OS操作系統(tǒng)中設(shè)置這樣四個(gè)任務(wù)和一個(gè)按鍵中斷:串口接收GPS定位數(shù)據(jù),GPS定位數(shù)據(jù)解碼,液晶顯示經(jīng)緯度和速度信息,液晶顯示航向、時(shí)間、日期和設(shè)計(jì)者信以及按鍵中斷。開(kāi)機(jī)首先GPS模塊初始化,初始化結(jié)束串口接收完第一幀完整的數(shù)據(jù)時(shí),開(kāi)始對(duì)定位數(shù)據(jù)進(jìn)行解碼;當(dāng)解碼完成后,把解碼出的定位信息顯示在液晶顯示屏上并開(kāi)始接收下一幀定位數(shù)據(jù);通過(guò)五向按鍵的上下?lián)軇?dòng)可以實(shí)現(xiàn)定位信息在液晶屏幕上的交替顯示。

4 系統(tǒng)測(cè)試
   
檢查完電路連接無(wú)誤后,首先在QuartusⅡ軟件中建立工程,然后在SoPC Builder中構(gòu)建好的NIOSⅡ處理器進(jìn)行編譯,編譯完成后回到QuartusⅡ界面,將編寫(xiě)好的對(duì)FPGA內(nèi)部電路邏輯進(jìn)行描述的Verilog語(yǔ)言程序?qū)懭氲焦こ汤铮瑢?duì)其進(jìn)行編譯,結(jié)果如圖7所示。
    從圖中可以看出該設(shè)計(jì)占用的FPGA內(nèi)部資源。然后將編譯生成的FPGA配置文件下載到FPGA片外的EPCS4芯片中,至此,F(xiàn)PGA配置完成,下面開(kāi)始對(duì)軟件程序的測(cè)試。本設(shè)計(jì)的軟件調(diào)試在NIOS IDE軟件環(huán)境下完成。首先,在NIOS IDE軟件環(huán)境下新建一個(gè)工程,在選擇工程模板時(shí)可以選擇Hello MicroC/OS-Ⅱ,這樣在工程建立之時(shí),μC/OS操作系統(tǒng)就已經(jīng)被嵌入使用,接下來(lái)在NIOS IDE工程內(nèi)輸入用C語(yǔ)言編寫(xiě)的功能程序,對(duì)工程進(jìn)行編譯,驗(yàn)證程序的正確性。
     在分別完成硬件電路和軟件程序測(cè)試的基礎(chǔ)上,將FPGA的硬件配置文件下載到電路中的片外EPCS4芯片中,將軟件程序下載到已經(jīng)構(gòu)建好的NIOSⅡ處理器中,然后進(jìn)行總體測(cè)試。
    連接上GPS天線,程序下載完成并等待一段時(shí)間后,天線收到定位數(shù)據(jù),系統(tǒng)開(kāi)始解碼并顯示定位信息,這時(shí)液晶屏上顯示第一屏定位信息,即經(jīng)緯度和速度信息,如圖8所示。此時(shí),若按下五向按鍵的向下鍵,液晶顯示信息翻屏,顯示第二屏定位信息,包括航向、時(shí)間、
日期和設(shè)計(jì)者信息。


    將五向按鍵分別向上和向下?lián)軇?dòng),液晶屏顯示信息可以在第一屏和第二屏之間進(jìn)行切換。可見(jiàn)系統(tǒng)設(shè)計(jì)正確,能夠提供正確的實(shí)時(shí)位置和時(shí)間信息。

5 結(jié)語(yǔ)
   
本文基于GPS定位原理及FPCA設(shè)計(jì)了一種基于NIOS處理器的CPS信息接收系統(tǒng),設(shè)計(jì)所用到的NlOSⅡ處理器專為嵌入式系統(tǒng)設(shè)計(jì),μC/OS操作系統(tǒng)具有良好的實(shí)時(shí)性,有助于提高定位信息的實(shí)時(shí)顯示,以保證其正確性。系統(tǒng)整體設(shè)計(jì)思想是首先將NIOSⅡ處理器嵌入到FPGA內(nèi),F(xiàn)PGA內(nèi)部電路結(jié)構(gòu)用Verilog硬件語(yǔ)言描述,然后把μC/OS操作系統(tǒng)移植到處理器內(nèi)部,通過(guò)C語(yǔ)言編程完成系統(tǒng)功能。經(jīng)實(shí)際測(cè)試驗(yàn)證,本文所設(shè)計(jì)的硬件電路及C語(yǔ)言功能程序完全能夠達(dá)到要求,并且能夠?qū)崿F(xiàn)GPS信息接收與顯示的功能,實(shí)時(shí)地為使用者提供精確的經(jīng)緯度、速度、時(shí)間和航向等定位信息。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉