通訊協(xié)議是上位機(jī)通過VMXXX 模塊支持的數(shù)字接口完成信息交互的數(shù)據(jù)格式、傳輸步驟、
通訊速率等的一系列預(yù)先約定。上位機(jī)必須按照本章描述的通訊協(xié)議規(guī)則來完成與VMXXX 的數(shù)據(jù)交互工作。
寄存器機(jī)制
VMXXX 內(nèi)部維護(hù)有若干寄存器,模塊在寄存器參數(shù)值的控制下完成振弦傳感器的測(cè)量工作。
寄存器的值總是以整數(shù)形式存在,基本操作單位為“字”(2 字節(jié)整數(shù),大端模式),有掉電保 存和掉電丟失兩種類型(對(duì)應(yīng)“讀/寫”和“只讀”兩種屬性)。通過模塊的數(shù)字接口可完成對(duì) 寄存器的讀取和寫入(修改)操作。寄存器寫(修改)壽命典型值為 10 萬次,讀取次數(shù)沒有限制。
數(shù)據(jù)模式
寄存器數(shù)據(jù)值采用大端模式,數(shù)據(jù)的高字節(jié)保存在內(nèi)存的低地址中,而數(shù)據(jù)的低字節(jié)保存
在內(nèi)存的高地址中,數(shù)據(jù)幀傳輸時(shí)先傳輸?shù)偷刂纷止?jié)后傳輸高字節(jié)。每個(gè)寄存器對(duì)應(yīng)兩個(gè)字節(jié)則單個(gè)寄存器的值=低字節(jié)值*256+高字節(jié)值。
使用握手協(xié)議
在讀寫寄存器時(shí),建議使用VMXXX 模塊的握手協(xié)議(非必須),當(dāng)檢測(cè)到模塊空閑時(shí)發(fā)起寄存器操作
硬件握手
基于RTS 輸出信號(hào)的時(shí)域特點(diǎn),此管腳還可作為數(shù)字接口的硬件握手信號(hào)使用。當(dāng)模塊的
UART 接口為 RS232 時(shí),RTS 管腳已經(jīng)轉(zhuǎn)換為 RS232 電平信號(hào),直接連接上位機(jī) RS232 接口的 CTS即可。
軟件握手
模塊開始一次測(cè)量時(shí),從UART 接口主動(dòng)發(fā)送 XOFF 信號(hào)(0x13),表示模塊開始忙于測(cè)量數(shù)據(jù),當(dāng)測(cè)量完成時(shí)主動(dòng)發(fā)送 XON 信號(hào)(0x11),表示模塊本次測(cè)量完成,正處于空閑狀態(tài)。在開啟模塊的軟件握手功能后,若需要向模塊發(fā)送指令,建議 UART 的通訊流程為:首先等待模塊返回 XON 信號(hào)(0x11),當(dāng)收到 XON 信號(hào)或等待超時(shí)后立即向模塊發(fā)送指令。
注:在一主多從的總線應(yīng)用中,嚴(yán)禁開啟模塊的軟件握手功能。
沖突解決
當(dāng)模塊收到上位機(jī)指令時(shí)原則上會(huì)立即處理并返回應(yīng)答信息,若模塊“正忙”時(shí),VMXXX 采
用測(cè)量優(yōu)先的原則,等待當(dāng)前測(cè)量周期結(jié)束才會(huì)響應(yīng)。不同的工作參數(shù)會(huì)有不同的“忙”時(shí)長(詳見“3.15 測(cè)量時(shí)長與優(yōu)化”),在發(fā)送指令后,若模塊未能及時(shí)回復(fù),應(yīng)繼續(xù)等待其響應(yīng)并返回響應(yīng)信息。在模塊未回復(fù)前,向模塊發(fā)送多條指令沒有意義,模塊僅會(huì)響應(yīng)最先收到的一條指令。
注:數(shù)字接口通訊會(huì)在一定程度上影響振弦傳感器頻率采集精度,不要過于頻繁的對(duì)數(shù)字
接口發(fā)送指令
審核編輯 黃昊宇
-
模塊
+關(guān)注
關(guān)注
7文章
2659瀏覽量
47298 -
通訊協(xié)議
+關(guān)注
關(guān)注
10文章
267瀏覽量
20312
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論