<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > EDA/PCB > 設計應用 > 基于SOPC技術(shù)的便攜式定位系統設計

基于SOPC技術(shù)的便攜式定位系統設計

作者: 時(shí)間:2009-03-24 來(lái)源:網(wǎng)絡(luò ) 收藏

定位數據的采集主要采集GPS和數字指南針的定位數據,采用串口接收中斷的方式。NIOS II中,串口包括6個(gè)16位的寄存器,在軟件中對應的數據結構為:

typedef volatile struct
{ int np_uartrxdata; //接收數據寄存器,只讀
int np_uarttxdata; //發(fā)送數據寄存器,只寫(xiě)
int np_uartstatus; //狀態(tài)寄存器,只讀
int np_uartcontrol; //控制寄存器,可讀寫(xiě)
int np_uartdivisor; // 波特率除數寄存器,可讀寫(xiě)
int np_uartendofpacket; // 數據包結束符寄存器,可讀寫(xiě)
} np_uart;

串口被當成字符設備,對其訪(fǎng)問(wèn)可以通過(guò)標準輸入(stdin)和標準輸出(stdio)來(lái)完成,也可以通過(guò)打開(kāi)和寫(xiě)文件的方式,本系統采用直接訪(fǎng)問(wèn)寄存器方式,采用系統自動(dòng)生成的訪(fǎng)問(wèn)宏,這樣可以采用精簡(jiǎn)Newlib C,減少程序代碼長(cháng)度,并采用串口中斷方式接收數據,NIOS II中使用中斷首先要向系統注冊,并且要打開(kāi)硬件中斷。中斷采集GPS信號主要程序如下:

IOWR_ALTERA_AVALON_UART_CONTROL(UART2_BASE, 0X80) //向串口2控制寄存器寫(xiě)命令字,打開(kāi)串口2接收中斷,0x80為開(kāi)接收中斷命令字,串口2為與GPS模塊通信串口。
int alt_irq_register (alt_u32 UART2_IRQ,
void* context,
void (*UART2_ISR)(void*, alt_u32));
//向系統注冊中斷,UART2_IRQ為串口2中斷號,中斷號越小優(yōu)先級越高,context為中斷服務(wù)程序UART2_ISR ( ) 的一個(gè)形參
Static UART2_ISR (void *contex,alt_u32 id)
//中斷服務(wù)程序,串口有數據送入引起串口中斷,執行該服務(wù)程序
{ *[buffer+i]=IORD_ALTERA_AVALON_UART_RXDATA(UART2_BASE)
//從串口2接收GPS定位數據,并存入緩沖。
… …
}

3.3.3 定時(shí)器中斷方式程序實(shí)現

系統采用定時(shí)中斷方式與監控中心通信,將定位數據發(fā)往監控中心。NIOS II提供了兩種類(lèi)型的時(shí)鐘,HAL系統時(shí)鐘(HAL system clock)和基于時(shí)標驅動(dòng)(timestamp driver)的時(shí)鐘,后者適用于對時(shí)鐘具有高精度的場(chǎng)合。系統時(shí)鐘提供了定時(shí)的功能,使用定時(shí)器和使用中斷方式一樣,首先要通過(guò)alt_alarm_start ( )函數向系統注冊一個(gè)時(shí)鐘中斷,再在時(shí)鐘中斷服務(wù)程序中實(shí)現GPRS發(fā)送,alt_alarm_start ( )函數聲明如下:

alt_alarm_start (alarm,alt_ticks_per_second( ),GPRS_ISR ( ),NULL)
其中alarm為定時(shí)中斷變量,由系統自動(dòng)初始化,第二個(gè)形參為注冊時(shí)鐘中斷后多長(cháng)時(shí)間后開(kāi)始執行服務(wù)程序,alt_ticks_per_second ( )為每秒系統時(shí)鐘的“滴答”數,此處為一秒后開(kāi)始執行,GPRS_ISR ( )為服務(wù)程序,NULL為服務(wù)程序的形參,此處為空。

定時(shí)中斷服務(wù)程序完成將定位數據通過(guò)GPRS模塊發(fā)往監控中心,通過(guò)串口向GPRS寫(xiě)數據實(shí)現,通過(guò)下條語(yǔ)句實(shí)現:IOWR_ALTERA_AVALON_UART_TXDATA(BASE, DATA) //向串口寫(xiě)數據,BASE為串口基地址,DATA為要寫(xiě)入數據。
3.4 軟件開(kāi)發(fā)中應注意的問(wèn)題

針對NIOS II軟核處理軟件開(kāi)發(fā)特點(diǎn),總結以下需要注意的幾點(diǎn):

(1) HAL系統庫作為NIOSⅡ處理器支持的軟件包,可以給軟件開(kāi)發(fā)人員提供便利,包括自動(dòng)初始化系統,可以使用ANSI C標準庫等,但這樣是以增加代碼長(cháng)度為代價(jià)的。

(2) 進(jìn)行NIOSⅡ軟核處理器的嵌入式軟件開(kāi)發(fā)時(shí)可以通過(guò)多種方式減少軟件代碼和提高工作效率,包括使用自定義初始化函數alt_main( ),使用精簡(jiǎn)Newlib C庫,優(yōu)化軟件編譯參數,自定義指令等,但這樣無(wú)疑對軟件開(kāi)發(fā)人員提出了更高的要求。

(3) 編寫(xiě)中斷服務(wù)程序時(shí)要注意防止系統“死鎖”,尤其是使用ANSI C標準庫函數訪(fǎng)問(wèn)IO設備時(shí)。

4 試驗結果

該系統樣機與GPS單一定位的定位系統在武漢徐東地下通道進(jìn)行了對比試驗。試驗結果如圖5、圖6所示。從對比結果可以看出,GPS單一定位的定位系統在地下通道區出現了定位盲區,而本系統接收終端在地下通道行走時(shí),監控中心地圖上還可以實(shí)時(shí)顯示軌跡,克服了以往單一GPS定位系統的定位盲區,驗證了該系統的可行性并體現了其優(yōu)越性。

5 總結

圖5 GPS單一定位軌跡 圖6 本系統定位軌跡

本文采用技術(shù),設計并實(shí)現了一種基于NIOSII軟核處理器的便攜式組合定位系統,并采用GPS和數字指南針組合定位,克服了單一GPS定位的盲區。與傳統的產(chǎn)品相比,該系統具有開(kāi)發(fā)周期短,開(kāi)發(fā)成本低,產(chǎn)品生命周期長(cháng),適用范圍廣等優(yōu)點(diǎn)。該系統體積小,便于攜帶,并可以縫制在衣服、飾物品中。適合于老人、小孩、智障人群佩戴,以便對他們進(jìn)行監控,防止他們走失,也適合一些特殊行業(yè),例如郵政、公安、電力、冶金行業(yè),市場(chǎng)前景可觀(guān)。


上一頁(yè) 1 2 3 下一頁(yè)

關(guān)鍵詞: SOPC 便攜式定位 系統設計

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>