專利名稱:一種適用于mems陀螺系數加載的通信方法
技術領域:
本發(fā)明涉及一種適用于MEMS陀螺系數加載的通信方法。
背景技術:
由于微機械陀螺受到制作誤差、材料的不均勻性等因素影響,其刻度因子與零偏受溫度的影響很大,嚴重制約了微機械陀螺精度性能的提高。為了提高微機械陀螺在全溫范圍內的零偏穩(wěn)定性,需要進行溫度補償。溫度系數的加載是進行溫度補償的前提。目前,國內外溫度補償系數加載方式有多種多樣,其中以串行通信方式較多,比如中國專利201120437437.3的《一種串口陀螺數據收發(fā)系統》采用串口通信方式進行系數加載;科技論文《Z軸硅微機械陀螺儀溫度補償的技術研究》和《加速度計數據采集與溫度補償技術研究》也是采用串口通信進行系數加載。另外也有采用CAN總線進行數據通信的,比如科技論文《MEMS高量程微加速度計溫度補償的設計》中采用CAN總線進行數據通信,它在信號處理模塊中內置了 CAN通信接口模塊,利用CAN通信協議進行溫度補償系數加載。但是,采用串口通信方式需要配置雙方通信格式,比如波特率、數據位和奇偶校驗位等,采集終端必須與數據發(fā)送端保持一致,才能保持正常的通信。若不確定發(fā)送方的傳輸波特率或數據長度,則不能進行正常通信。另外,在傳輸多幀數據時,往往在硬件邏輯協議的基礎上,還需用軟件的方式構建應用層協議標準,在傳輸數據上加載幀頭、幀尾等驗證性數據,才能正確的獲取數據??梢?,普通的串行通信設置煩瑣、通信簡單、數據傳輸效率低。若采用CAN總線進行系數加載,眾所周知,CAN總線比較復雜,使用CAN總線必須熟悉CAN總線的數據格式、各種寄存器以及錯誤計數等等。另外,CAN總線的不一致性和不可預測性經常使得CAN總線在通信過程中進入錯誤狀態(tài),無法正常通信。
發(fā)明內容
本發(fā)明所要解決的技術問題是提供一種適用于MEMS陀螺系數加載的通信方法,有時鐘、片選、數據輸入和數據輸出四個端口,根據數據輸入端的不同命令,可以控制EEPROM進行不同的讀、寫、擦除等操作,該方法使用靈活、功能強大,適用于各種MEMS陀螺系數的加載。為解決上述技術問題,本發(fā)明提供一種。本發(fā)明所達到的有益效果:
本發(fā)明提供了一種通信方法,適用于各種MEMS陀螺系數加載,根據數據輸入端的不同命令,可以進行不同的讀、寫、擦除等操作,同時可以在輸出端輸出相應的數據,應用靈活,功能強大,傳輸可靠性高。
圖1是MEMS陀螺系數加載通信框 圖2是數據包輸入; 圖3是SDI輸入端數據格式;
圖4是SDI輸入時序 圖5是SDO串行輸出數據格式;
圖6是SDO輸出數據時序圖。
具體實施例方式下面結合附圖對本發(fā)明作進一步描述。以下實施例僅用于更加清楚地說明本發(fā)明的技術方案,而不能以此來限制本發(fā)明的保護范圍。MEMS陀螺系數加載通信過程如圖1所示,根據本發(fā)明的通信方法,上位機通過通信模塊將溫度補償系數輸入到接口模塊電路中,并將采集的數據轉換寫入EEPROM存儲,由運算器進行讀出使用。根據需要,上位PC機也可通過本發(fā)明的通信方法從EEPROM中讀取數據進行比對。該通信協議主要完成接口模塊與外部的數據通訊,將有效的數據及命令傳輸進芯片使其進行相應操作。本發(fā)明的通信方法按功能分成解碼和移位輸出兩部分。串行解碼主要根據用戶自定義的數據傳輸格式將串行數據進行解碼,然后分別根據解碼后的數據完成相應的操作;移位輸出模塊是將芯片內部的相關數據按照用戶定義的數據傳輸格式依次串行輸出。本發(fā)明的工作原理:
該通訊方法設置有四個端口,分別為:
SCK:串口時鐘。SD1:串口數據輸入。SD0:串口數據輸出。SS:片選信號,低有效。當SS為高時,忽略在SDI和SCK輸入端的變化,串口輸出SDO為三態(tài)。(I) SDI數據輸入
上位機可以連續(xù)發(fā)送多個數據包,接口模塊從中順序取出有效系數進行存儲。數據流時序如圖2所示。在上位機發(fā)出片選信號后的第一個SCK上升沿開始采集輸入數據。通過自定義,串口數據輸入端SDI總共發(fā)送40位數據,其中包括32位數據DATA[31]- DATA
,5位地址ADDR[4:0],3位命令位CMD [2:0],數據格式見圖3,其中LSB為最先輸入數據位,如圖3。SDI發(fā)送的每位數據在SCK的上升沿被采樣,當一個數據包發(fā)送并被采樣完畢,SS片選拉高以啟動內部操作。如圖4,其中CMD[2:0]為命令位,可以改變其設置分別對芯片內部EEPROM或寄存器進行不同的操作。當CMD為001時是對EEPROM進行相關的寫操作,010時是對EEPROM進行相關的讀操作,100時是對EEPROM進行相關擦除操作,其余均為無效命令。另外也可根據需求進行自定義。(2) SDO數據輸出
如圖5,SDO為串口輸出端,輸出同樣以LSB為最先輸出數據位,當SS為低時,SDI數據寫入內部,同時SDO移位輸出數據。當CMD[2:0]為010讀操作時,SDO輸出指定地址中的數據,并且在SS信號有效后的SCK上升沿開始輸出有效數據。當CMD[2:0]不為OlO讀操作時,SDO串行輸出上一個數據包的DATA、ADDR、CMD,并且在SS信號有效后的SCK上升沿開始傳輸有效數據。如圖6,SDO只在SS為低時正常輸出數據,當SS為高時,SDO為高阻態(tài)。以上所述僅是本發(fā)明的優(yōu)選實施方式,應當指出,對于本技術領域的普通技術人員來說,在不脫離本發(fā)明技術原理的前提下,還可以做出若干改進和變形,這些改進和變形也應視為本發(fā)明的保護范圍。
權利要求
1.一種適用于MEMS陀螺系數加載的通信方法,其特征是, 上位機通過通信模塊將溫度補償系數輸入到接口模塊電路中,或從接口模塊中讀取數據, 所述通信模塊與接口模塊之間通過四個端口進行通信, 四個端口分別為: SCK:串口時鐘; SD1:串口數據輸入端; SDO:串口數據輸出端; SS:片選信號,低有效;當SS為高時,串口數據輸出SDO為三態(tài); 數據輸入的步驟為:上位機連續(xù)發(fā)送I個或多個數據包,接口模塊從中順序取出有效溫度補償系數進行存儲;在上位機發(fā)出片選信號后的第一個串口時鐘SCK上升沿開始采集輸入數據; 數據輸出的步驟為: 在片選信號SS有效后的串口時鐘SCK上升沿開始,通過串口數據輸入端SDI將數據寫入接口模塊內部,同時串口數據輸出端SDO移位輸出指定地址中的數據。
2.根據權利要求1所述的適用于MEMS陀螺系數加載的通信方法,其特征是,所述串口數據輸入端SDI共發(fā)送40位數據,其中包括32位數據DATA,5位地址ADDR,3位命令位CMD。
3.根據權利要求1所述的適用于MEMS陀螺系數加載的通信方法,其特征是,串口數據輸入端SDI發(fā)送的每位數據在端口 SCK的上升沿被采樣,當一個數據包發(fā)送并被采樣完畢,端口 SS變?yōu)楦邌觾炔坎僮鳌?br>
4.根據權利要求2所述的適用于MEMS陀螺系數加載的通信方法,其特征是,數據輸入時,通過設置不同的命令位CMD分別對接口模塊內部EEPROM或寄存器進行不同的操作。
5.根據權利要求4所述的適用于MEMS陀螺系數加載的通信方法,其特征是,當命令位CMD為001時對EEPROM進行相關的寫操作,為010時對EEPROM進行相關的讀操作,為100時對EEPROM進行相關擦除操作,其余均為無效命令。
6.根據權利要求1所述的適用于MEMS陀螺系數加載的通信方法,其特征是,數據輸出時,當命令位CMD為010讀操作時,串口數據輸出端SDO輸出指定地址中的數據,并且在片選信號SS有效后的串口時鐘SCK上升沿開始輸出有效數據;當命令位CMD不為010讀操作時,串口數據輸出端SDO串行輸出上一個數據包的數據DATA、地址ADDR、命令位CMD,并且在片選信號SS有效后的串口時鐘SCK上升沿開始傳輸有效數據。
全文摘要
本發(fā)明公開了一種適用于MEMS陀螺系數加載的通信方法,上位機通過通信模塊將溫度補償系數輸入到接口模塊電路中,或從接口模塊中讀取數據,通信模塊與接口模塊之間通過四個端口進行通信,上位機連續(xù)發(fā)送1個或多個數據包,接口模塊從中順序取出有效溫度補償系數進行存儲;在上位機發(fā)出片選信號后的第一個串口時鐘SCK上升沿開始采集輸入數據或通過串口數據輸入端SDI將數據寫入接口模塊內部。本發(fā)明的通信方法,適用于各種MEMS陀螺系數加載,根據數據輸入端的不同命令,可以進行不同的讀、寫、擦除等操作,同時可以在輸出端輸出相應的數據,應用靈活,功能強大,傳輸可靠性高。
文檔編號G06F13/38GK103207848SQ20131007322
公開日2013年7月17日 申請日期2013年3月7日 優(yōu)先權日2013年3月7日
發(fā)明者張磊, 趙忠惠, 汪健 申請人:中國兵器工業(yè)集團第二一四研究所蘇州研發(fā)中心