1 引言
V2XE是一種以集成微處理器作為控制和接口的新型2軸羅盤和大地磁場傳感器[1],U2XE使用新型系統常用的3V工作電源,具有功耗低、尺寸小、在各種條件下的抗噪聲能力強、較大的測量靈敏感應區等優點。V2XE結合了PNI公司專利的磁場感應傳感器和測量電路技術,不受補償漂移的影響,在不同溫度下的測量結果很穩定。V2XE通過簡單易行的標準SPI接口輸入/輸出數據。
[b]2 性能特點
[/b] V2XE的典型特性如下:
功率低(3V DC,2mA輸出);
封裝尺寸?。?5.4mm×5.4mm×11.5mm);
高地磁感應(0.01°);
高地磁精度(2.0°);
數字接口輸出(3V標準SPI接口);
具有高的磁場感應(0.00015Gauss);
具有大的磁場量程(±11Gauss)。
V2XE的引腳功能如表1所列。
將V2XE應用于GPS系統,用AT89C2051讀取V2XE的測量數據,通過串口將數據傳送到GPS處理器,圖1示出V2XE連接到單片機的原理圖。由于AT89C2051沒有標準的SPI口輸出[2],故分別用P1.7、P1.6和P1.5來模擬SCLK、MISO及MOSI端。V2XE的復位引腳SYNC由P3.7腳控制,SSNOT接地,V2XE工作在從機模式。
[b]3 數據格式和命令字
[/b] V2XE有Big Endian和Little Endian兩種數據格式。Big Endian類型數據是從高位到低位存放,Little Editan數據是倒序存放,即在最高8位依次放最低8位的數據,在最低8位依次放最高8位的數據。如圖2所示。
帶有數據的命令格式由開始標志(Sync Flay)、指令類別(Frame Type)和結束標志(Terminator)組成,圖3所示是一個帶有參數Heading(0X02)和Magnitude(0X05)的SetDataComponents(0X03)命令構成。V2XE常用命令字包括GetModInfo、ModInfoResp、SetDataComponent、GetData、DataResp、Setconfig、GetConfig、ConfigResp和SaveConfig。其指令碼和功能如表2所示。
[b]4 編程實例
[/b] SPI接口的數據接收和發送是同步的。V2XE每接收一個數據時將會發出0X00。當V2XE發送命令的應答時,它將不處理任何輸入的數據,因此,在主機獲取V2XE數據時,應是發送和接收同時進行。用C語言編寫發送-接收函數SPITransmit如下:
一個V2XE系統的典型應用流程如圖4所示。
一個V2XE系統的典型應用流程如圖4所示。
這樣,獲得的芯片信息存放在數組verson中,可以根據讀取的值和實際版本號(V2XEV201)對比以確定系統是否正常工作,如果系統正常,首先要根據需要設置返回數據格式以確定V2XE返回這些用戶感興趣的值,主要包括地磁方向角、磁場強度、溫度和校準狀態位等。另外,還要設置一些初始化參數,主要包括Declination(本地的地磁角,可以從http://www.ngdc.noaa.gov/cgi-bin/seg/gmag/fldsnth1.pl獲得)、True North(設置參照角度為地磁北[3])、Big Endian(選擇數據的大、小模式)、Dampingsize(數據緩沖區,將緩沖區里的數據平均后作為V2XE的實際輸出)。
在V2XE的實際應用中,常常需要校準,常用命令包括StartCal、StopCal、GetCalData、CalDataResp和SetCalData,其指令代碼和功能描述如表3所示。在標準過程中,V2XE裝置要盡量水平放置,從開始校準到結束校準過程中需將裝置原地旋轉兩周。每轉的時間不得小于30s,校準完成后,可以查詢參數calstate來判斷校準是否成功,完成參數設置和校準等初始化工作后,可以通過發送指令GetData(0x04)來獲取V2XE的數據,對V2XE每發送命令一次必須將其輸出全部讀出。否則會影響下一次的正常輸出。
[b]5 結束語
[/b] 該系統已經成功應用于手持GPS定位導航產品中,在室溫下,其測量方向角偏差2°內,測量的溫度偏差也小于1℃,地磁傳感器V2XE以其接口簡單、功耗低、體積小和軟件設計簡單等優點在GPS定位和磁場檢測等方面有著廣闊的應用前景。
編輯:何世平