可編程 USB 轉(zhuǎn)串口適配器開發(fā)板 S2S 功能介紹
USB2S 支持基于 STC 單片機(jī)的二次開發(fā),若有需要,可參照原理圖和單片機(jī)型號手冊自行開發(fā)具有特殊功能的固件程序。
1.自帶固件S2S 功能介紹?
默認(rèn)情況下 USB2S 出廠時(shí)自帶廠家固件程序 S2S,并提供固件程序文件,若有需要可以隨時(shí)重新下載到 MCU。?
S2S 固件不斷升級中,請?jiān)L問穩(wěn)控科技公司下載最新固件程序。?
S2S(Serial port To Serial port)固件可實(shí)現(xiàn)任意一個(gè)串行口的數(shù)據(jù)轉(zhuǎn)發(fā)到另一個(gè)指定的串行口,并自動(dòng)轉(zhuǎn)換接口硬件層協(xié)議,使用的協(xié)議為S2S 串口轉(zhuǎn)發(fā)協(xié)議。?
S2S 固件支持MODBUS 通訊協(xié)議的 03 和 06 指令碼,關(guān)于 MODBUS 協(xié)議內(nèi)容請自行參閱標(biāo)準(zhǔn)協(xié)議手冊, 或者向我們索要使用說明,MODBUS03 和 06 指令碼所操作的保持寄存器定義見下表。?
1.1MODBUS 協(xié)議保持寄存器匯總?
2.S2S 通訊協(xié)議?
S2S 通訊協(xié)議規(guī)則十分簡單,說明如下:?
最小收發(fā)單位為字符串幀,幀由若干關(guān)鍵字和數(shù)據(jù)組成。 控制關(guān)鍵字以‘[’起始,以‘]’結(jié)束。連續(xù)的數(shù)據(jù)字符串之間用空格分隔。 關(guān)鍵字可單個(gè)使用也可以任意多個(gè)組合使用。注意事項(xiàng): UART 接口的接收緩存為 254 字節(jié),指令(關(guān)鍵字)數(shù)量最多 64 個(gè),數(shù)據(jù)寫入和讀出緩存分別為 128 字節(jié),超出部分會(huì)被舍棄。 10 進(jìn)制數(shù)據(jù)可以用 1~3 個(gè)字符表示(每個(gè)字符必須為‘0’~‘9’),16 進(jìn)制數(shù)據(jù)必須用 2 個(gè)字符表示(每個(gè)字符必須為‘0’~‘9’或大寫‘A’~‘F’)。?
3.S2S 協(xié)議使用舉例單個(gè)關(guān)鍵字?
[IIC] 設(shè)置數(shù)據(jù)的目標(biāo)端口為 IIC 接口?
[WT3H]A0 A1 A2 向目標(biāo)端口(IIC)寫 3 個(gè)字節(jié) 16 進(jìn)制數(shù)據(jù),即:從 IIC 端口輸出 3 個(gè)字節(jié)數(shù)據(jù)。[RD05N] 從 IIC 接口讀取 5 字節(jié)數(shù)據(jù),每讀取 1 個(gè)字節(jié)后輸出應(yīng)答信號,最后 1 個(gè)字節(jié)讀取完成后發(fā)送非應(yīng)答信號。?
?
[HELP]或者[HELPxx] 獲取幫助信息,xx 為信息類別碼(2 位數(shù)字)。?
?
連續(xù)多個(gè)關(guān)鍵字?
[IIC][START][WT6H]A0 00 00 01 02 03[STOP] 設(shè)置目標(biāo)端口為 IIC,從IIC 發(fā)出開始信號,從IIC 輸出 6 字節(jié)數(shù)據(jù),從IIC 發(fā)出停止信號。若之前已經(jīng)設(shè)置過目標(biāo)端口為IIC,則上面的指令幀可省略[IIC],即可以為:[START][WT6H]A0 00 00 01 02 03[STOP]?
?
[STIIC]40 MSB[SAVE][IIC][START][WT6H]A0 00 00 01 02 03[STOP] 先設(shè)置IIC 接口通訊參數(shù),
永久保存,再開始一次通訊。?
?
[IIC][FIND]搜索 IIC 總線上所有從設(shè)備,并返回從設(shè)備地址值。?
?
4.反饋信息說明?
當(dāng)開啟了調(diào)試信息輸出或者數(shù)據(jù)回顯功能時(shí)(默認(rèn)),每幀關(guān)鍵字指令發(fā)送后會(huì)輸出對指令的解析和執(zhí)行信息。這些信息僅在關(guān)鍵字指令幀執(zhí)行不正常時(shí)需要查看分析錯(cuò)誤原因,正常使用時(shí)無需關(guān)心,可使用指令關(guān)閉這些功能(3.3.4)。?
?
例如:?
向設(shè)備發(fā)送 [IIC][START][WT6H]A0 00 00 01 02 03[STOP]?
設(shè)備返回 [IIC][START][WT6H]A0 00 00 01 02 03[STOP] //回顯接收到的內(nèi)容?
S2SCMD 0003 0901 0106 0902? //關(guān)鍵字指令碼?
S2SDAT A0 00 00 01 02 03? ? //指令碼數(shù)據(jù)?
解析碼(指令碼) 與本幀數(shù)據(jù)中每個(gè)關(guān)鍵字指令一一對應(yīng),指令碼為 16 位,高字節(jié)表示指令類別,低字節(jié)表示本指令的附加參數(shù)。?
指令碼數(shù)據(jù) 執(zhí)行指令碼時(shí)所需要的數(shù)據(jù),如:要發(fā)送的數(shù)據(jù),要設(shè)置的參數(shù)值等。