新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > GPS信號(hào)中斷時(shí)慣導(dǎo)芯片的位置信息感知系統(tǒng)設(shè)計(jì)

GPS信號(hào)中斷時(shí)慣導(dǎo)芯片的位置信息感知系統(tǒng)設(shè)計(jì)

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


2 工作原理及主要控制說明
本文研究了如何在移動(dòng)端缺失的情況下,使用SPI協(xié)議建立FPGA與慣導(dǎo)ADIS16003之間的通信,從而獲取移動(dòng)物體當(dāng)前的加速度。DSP將通過EMIF接口讀取此加速度,并根據(jù)之前有效的推算出當(dāng)前的概略(經(jīng)緯度、速度和時(shí)間等)。
2.1 工作原理
FPGA驅(qū)動(dòng)ADIS16003慣導(dǎo)工作包括初始啟動(dòng)和正常啟動(dòng)兩種模式。
(1)初始啟動(dòng)模式
FPGA上電復(fù)位時(shí)自啟動(dòng)ADIS16003,配置ADIS16003控制寄存器,并讀取芯片測(cè)得的雙軸軸向加速度初始值,存儲(chǔ)到EMIF接口的0x068~0x069地址空間供DSP讀取,用作誤差校正之用(此模式工作在移動(dòng)端處于靜止?fàn)顟B(tài)時(shí),且此模式僅由DSP讀取1次)。
(2)正常啟動(dòng)模式
初始啟動(dòng)模式完成之后,F(xiàn)PGA將自動(dòng)轉(zhuǎn)入數(shù)據(jù)采集階段,源源不斷地通過SPI接口從ADIS16003芯片中采集雙軸軸向瞬時(shí)加速度,以備DSP使用。加速度每秒采集8次,每隔0.125 s采集一次。每秒都將得到8組結(jié)果,分別為ax0ay0、ax1ay1、ay2ay2、ax3ay3、ax4ay4、ax5ay5、ax6ay6和ax7ay7,存儲(chǔ)于FGPA內(nèi)部的8個(gè)中間寄存器單元reg0~reg7(非EMIF接口,每個(gè)輸出結(jié)果為12×2位,存儲(chǔ)于32位的寄存器組中),并隨著時(shí)間的推移不斷地刷新。這么做的目的是確保這8個(gè)寄存器組中始終保存有最近1 s的移動(dòng)物體加速度信息,以保證加速度信息的準(zhǔn)確性和有效性。當(dāng)CPU通過GPS接收天線檢測(cè)到GPS信息丟失時(shí),CPU通過PCI接口給FPGA配入spi_cmd_val(高電平有效),同時(shí)通過HPI接口給
DSP寫入信息丟失前2 s的GPS信息(包括經(jīng)緯度、速度和時(shí)間),作為定位基點(diǎn)。FPGA檢測(cè)到spi_cmd_val有效后,立即將中間寄存器單元reg0~reg7中存儲(chǔ)的瞬時(shí)加速度送入EMIF接口的0x060~0x067地址單元(32位),同時(shí)拉高int_spi_done信號(hào),產(chǎn)生外部(拉低DSP的引腳)通知DSP從EMIF接口讀取加速度信息,并通過后續(xù)軟件算法進(jìn)行信號(hào)處理,轉(zhuǎn)化為移動(dòng)端經(jīng)緯度信息。再通過DSP的HPI接口上報(bào)給CPU,從而使高層獲取移動(dòng)端當(dāng)前GPS信息,即完成了GPS信息的模擬。加速度存儲(chǔ)格式如表1所列。其中包括初始和瞬時(shí)加速度值,共占用32位EMIF接口10個(gè)地址單元。

本文引用地址:http://2s4d.com/article/150076.htm

d.jpg


2.2 主要控制信號(hào)說明
①spi_cmd_data:ADIS16003芯片控制字(寄存器),8位,F(xiàn)PGA配入。
②spi_cmd_val:GPS信號(hào)缺失時(shí)ADIS16003啟動(dòng)信號(hào),CPU發(fā)出,脈沖觸發(fā)。
③spi_cmd_val_reg:ADIS16003啟動(dòng)信號(hào)寄存器,及時(shí)存儲(chǔ)觸發(fā)脈沖,持續(xù)一個(gè)時(shí)鐘后清0。
④spi_data_i:ADIS16003串行輸出信號(hào),包括雙軸軸向加速度,每個(gè)spi_clk時(shí)鐘下降沿輸出一位,16個(gè)時(shí)鐘周期完成一次運(yùn)算。
⑤spi_cs:SPI片選信號(hào),低電平有效。
⑥spi_clk:SPI通信時(shí)鐘信號(hào),由主時(shí)鐘分頻得到,此處進(jìn)行32分頻。
⑦spi_data_o:ADIS16003控制字輸入信號(hào),8位串行輸出,spi_clk時(shí)鐘上升沿動(dòng)作。
⑧spi_rdata:ADIS16003運(yùn)算結(jié)果,12位,每個(gè)spi_clk下降沿輸出一位,采取移位拼接方式(向左移),在第16個(gè)時(shí)鐘下降沿輸出一次完整的采集結(jié)果(每次采集至少需要16個(gè)時(shí)鐘周期)。
⑨spi_state:SPI工作狀態(tài)信號(hào),0為IDLE,1為BUSY,2為DONE,采用有限狀態(tài)機(jī)進(jìn)行。
⑩spi_wr_cnt_o、spi_wr_cnt_i:十六進(jìn)制計(jì)數(shù)器,時(shí)鐘上升沿和下降沿分別計(jì)數(shù)。



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉