HEX 格式:CmdHead + CmdIndex + ValidLen + ValidData + CheckSum + CmdTail
CmdHead:
由2個(gè)字節(jié)組成, CmdHead 有2種格式,分別為CmdHeadA 和CmdHeadB。
CmdHeadA = 7B 7B ( 或 ‘{‘ ‘{‘ ) ;
CmdHeadB = 7B 3C ( 或 ‘{‘ ‘<‘ ) ;
CmdIndex:
由1個(gè)字節(jié)組成,構(gòu)成指令功能。
ValidLen:
由1個(gè)字節(jié)組成,ValidLen是計(jì)算ValidData長(zhǎng)度的值。
ValidData:
由ValidLen個(gè)字節(jié)組成,構(gòu)成協(xié)議有效有用數(shù)據(jù)內(nèi)容。
CheckSum:
由1個(gè)字節(jié)組成,由CmdHead、CmdIndex、ValidLen、ValidData和CmdTail數(shù)據(jù)相加取低位1個(gè)字節(jié)構(gòu)成CheckSum,當(dāng)然為了方便特殊情況下可以手動(dòng)發(fā)指令不需要計(jì)算校驗(yàn)和,當(dāng)CheckSum為一些特殊的值時(shí),可以跳過校驗(yàn),直接解析有效數(shù)據(jù),比如CheckSum = 0x99。
CmdTail:
由2個(gè)字節(jié)組成, CmdTail = 7D 7D ( 或 ‘}’ ‘}’ )。
特殊詞:
PC:指上層統(tǒng)稱,可以是PC-tool,串口工具,網(wǎng)頁等任何給底層發(fā)數(shù)據(jù)的非底層一方。
MainB:指主板卡
SubB:指子板卡(除主板卡外其它板卡,包含輸入板、輸出板、按鍵板)
InB:指輸入板卡
OutB:指輸出板卡
KeyB:指按鍵板卡
CS:指校驗(yàn)和,CS和CheckSum是一個(gè)意思
寫在前面注意事項(xiàng):
① MainB發(fā)到InB/OutB可能做了Addr或Port的處理,具體需要根據(jù)具體代碼分析,協(xié)議不能描述到所有細(xì)節(jié)處理
② InB/OutB發(fā)到MainB可能協(xié)議頭7B 7B修改成了7B 3C,MainB發(fā)送到PC可能又把7B 3C改成7B 7B,這些協(xié)議中不會(huì)描述到,需要根據(jù)代碼了解其中轉(zhuǎn)換變化
格式:7B 7B 01 02 inPort outPort CS 7D 7D
① 當(dāng)配置的矩陣輸出口<=8時(shí)
inPort:按字節(jié)解析,最小值為0,代表輸入端口1,以此類推.
outPort:按比特解析,這個(gè)字節(jié)有8bit,bit0~bit7分別表示輸出端口1~8是否需要切換,可以切換多個(gè)輸出通道.當(dāng)值為FF表示所有輸出端口.比如: outPort = 0x03, inPort = 0x01,表示將輸出口1和2都切換為輸入2.
舉例:
輸出1切換為輸入2
7B 7B 01 02 01 01 CS 7D 7D
輸出1~8切換為輸入1,因?yàn)榫仃嚺渲?lt;=8,所以也可以指所有輸出切換為輸入1
7B 7B 01 02 00 FF CS 7D 7D
② 當(dāng)配置的矩陣輸出口>8時(shí)
inPort:按字節(jié)解析,最小值為0,代表輸入端口1,以此類推.
outPort:按字節(jié)解析,最小值為0,代表輸出端口1,以此類推.當(dāng)值為FF表示所有輸出.
舉例:
輸出2切換為輸入2
7B 7B 01 02 01 01 CS 7D 7D
所有輸出切換為輸入1
7B 7B 01 02 00 FF CS 7D 7D
格式:7B 7B 11 ValidOutNum Out1Inx Out2Inx … OutnInx CS 7D 7D
(詳情見CmdIndex = 0x11)
格式: 7B 7B 12 01 00 CS 7D 7D
格式: 7B 7B 11 ValidOutNum Out1Inx Out2Inx … OutnInx CS 7D 7D
ValidOutNum:有效的輸出端口個(gè)數(shù)n,當(dāng)你配置矩陣為4(輸入)x6(輸出)時(shí), ValidOutNum = 6,以此類推。
Out1Inx Out2Inx … OutnInx:共ValidOutNum個(gè)字節(jié), Out1Inx代表輸出端口1對(duì)應(yīng)的輸入端口,其余以此類推。OutnInx代表最后一個(gè)輸出端口n對(duì)應(yīng)的輸入端口
格式:7B 7B 94 VaildLen ValidData CS 7D 7D
ValidData:由Mode Input Output [擴(kuò)展數(shù)據(jù)]組成
① 當(dāng)Mode = 0時(shí).
[擴(kuò)展數(shù)據(jù)]為空,即ValidData由Mode Input output組成, VaildLen=3.
Input:輸入端口,從0開始,表示輸入端口1
Output:輸出端口,從0開始,表示輸出端口1
1. Mode 0,切換單個(gè)輸出的輸入信息:
舉例:
命令:7B 7B 94 03 00 01 00 88 7D 7D
功能:切換輸入2到輸出1
② 當(dāng)Mode = 1時(shí).
[擴(kuò)展數(shù)據(jù)]長(zhǎng)度為2(n-1)個(gè)字節(jié),和Input Output [擴(kuò)展數(shù)據(jù)]共組成2n個(gè)字節(jié), VaildLen = 2n+1,n最大為矩陣最大輸出端口數(shù)。
Input:輸入端口,從0開始,表示輸入端口1
Output:輸出端口,從0開始,表示輸出端口1
2. Mode 1,切換多個(gè)輸出的輸入:
舉例:
命令: 7B 7B 94 11 01 00 00 01 01 02 02 03 03 04 04 05 05 06 06 07 07 CE 7D 7D
功能:把輸入1切換到輸出1,輸入2切換到輸出2,輸入3切換輸出3,輸入4切換到輸出4,輸入5切換到輸出5,輸入6切換到輸出6,輸入7切換到輸出7,輸入8切換到輸出8;
③ 當(dāng)Mode = 2時(shí).
[擴(kuò)展數(shù)據(jù)]長(zhǎng)度為m個(gè)字節(jié),即ValidData由Mode Input output [擴(kuò)展數(shù)據(jù)]組成, VaildLen=1+1+m+1. Output的bit7~bit0的值分別表示通道1~8是否需要切換為Input,[擴(kuò)展數(shù)據(jù)]相當(dāng)于Output的擴(kuò)展。
Input:輸入端口,從0開始,表示輸入端口1
Output:輸出端口,從0開始,表示輸出端口1
3. Mode 2,切換某一輸入到多個(gè)輸出:
舉例:
命令:7B 7B 94 03 02 01 F0 7A 7D 7D
功能:切換輸入2到 輸出1/2/3/4
④ 當(dāng)Mode = 0xFF時(shí),表示切換所有輸出端口為Input.
[擴(kuò)展數(shù)據(jù)]為空,即ValidData由Mode Input output組成,且output無效不解析數(shù)據(jù)。 VaildLen=3.
Input:輸入端口,從0開始,表示輸入端口1
Output:無效,預(yù)留 = 0
4. Mode 0xFF,切換某一輸入到所有輸出:
舉例:
命令:7B 7B 94 03 FF 01 00 87 7D 7D
功能:切換輸入2到所有輸出
格式: 7B 7B 11 ValidOutNum Out1Inx Out2Inx … OutnInx CS 7D 7D
(詳情見CmdIndex = 0x11)
格式:7B 7B 95 03 Mode ValidOutSum ValidInSum CS 7D 7D
Mode: = 0表示讀取,
= 1表示設(shè)置;
ValidOutSum:有效輸出端口數(shù)
ValidInSum:有效輸入端口數(shù)
① PC->MainB時(shí),Mode = 0(讀取)時(shí),
格式:7B 7B 95 05 Mode ValidOutSum ValidInSum MaxOutSum MaxTVWallMode CS 7D 7D
ValidOutSum:有效輸出端口數(shù)
ValidInSum:有效輸入端口數(shù)
MaxOutSum:最大有效輸出端口數(shù)
MaxTVWallMode:最大拼接墻模式數(shù)
② PC->MainB時(shí),Mode = 1(設(shè)置)時(shí)
格式:7B 7B 95 03 Mode OutSum InSum CS 7D 7D
ValidOutSum:有效輸出端口數(shù)
ValidInSum:有效輸入端口數(shù)
格式:7B 7B 96 09 Addr Ctrl 00 00 00 00 00 00 00 CS 7D 7D
Addr: 目標(biāo)板卡地址,在讀取輸入輸出板卡時(shí)使用,從0開始,0表示機(jī)箱中第一個(gè)卡槽中板卡地址,其他情況默認(rèn)為0.
Ctrl: [bit7]:預(yù)留,默認(rèn)寫0
[bit6]: = 1,表示目標(biāo)板卡地址Addr描述的為輸入板卡
= 0,表示目標(biāo)板卡地址Addr描述的為輸出板卡
[bit5-4]:預(yù)留,默認(rèn)寫0
[bit3-0]: = 0,表示讀取主板卡軟件版本
= 1,表示讀取按鍵板卡軟件版本
= 2,表示讀取輸出板卡軟件版本
= 3,保留未使用
= 4,表示讀取輸入板卡軟件版本
格式:7B 7B 96 09 Addr Ctrl YearH YearL Month Day Hour Minute Second CS 7D 7D
Addr: 板卡地址,在讀取輸入輸出板卡時(shí)使用,從0開始,0表示機(jī)箱中第一個(gè)卡槽中板卡地址,其他情況默認(rèn)為0.
Ctrl: [bit7]:預(yù)留,默認(rèn)寫0
[bit6]: = 1,表示板卡地址Addr表示的輸入板卡
= 0,表示板卡地址Addr表示的輸出板卡
[bit5-4]:預(yù)留,默認(rèn)寫0
[bit3-0]: = 0,表示讀取主板卡軟件版本
= 1,表示讀取按鍵板卡軟件版本
= 2,表示讀取輸出板卡軟件版本
= 3,預(yù)留
= 4,表示讀取輸入板卡軟件版本
YearH:年份高位,其值非真實(shí)年份,16進(jìn)制顯示的表示年份.如0x20
YearL:年份低位,其值非真實(shí)年份,16進(jìn)制顯示的表示年份.如0x16
Month:月,其值非真實(shí)年份,16進(jìn)制顯示的表示年份.如0x10
Day:日,其值非真實(shí)年份,16進(jìn)制顯示的表示年份.如0x01
Hour:時(shí),其值非真實(shí)年份,16進(jìn)制顯示的表示年份.如0x08
Minute:分,其值非真實(shí)年份,16進(jìn)制顯示的表示年份.如0x30
Second:秒,其值非真實(shí)年份,16進(jìn)制顯示的表示年份.如0x00
綜上,軟件版本為2016/10/1-8:30:0
Note:
讀取輸出板卡軟件版本Ctrl = 0x02,讀取輸入板卡軟件版本Ctrl = 0x44.
格式: 7B 7B 02 01 ModeIndex CS 7D 7D
ModeIndex:模式id或模式索引,從0開始,表示模式1
格式: 7B 7B 02 01 ModeIndex CS 7D 7D
ModeIndex:模式id或模式索引,從0開始,表示模式1
格式: 7B 7B 03 01 ModeIndex CS 7D 7D
ModeIndex:模式id或模式索引,從0開始,表示模式1
格式: 7B 7B 11 ValidOutNum Out1Inx Out2Inx … OutnInx CS 7D 7D
(詳情見CmdIndex = 0x11)
格式:7B 7B 90 09 Addr Ctrl Line Column P Q SyncLock Adjust Routing CS 7D 7D
(詳情見CmdIndex = 0x90)
格式:7B 7B 93 ValidLen ValidData CS 7D 7D
(詳情見CmdIndex = 0x93)
格式: 7B 7B 97 01 ModeIndex CS 7D 7D
ModeIndex:模式id或模式索引,從0開始,表示模式1
格式: 7B 7B 97 01 ModeIndex CS 7D 7D
ModeIndex:模式id或模式索引,從0開始,表示模式1
格式: 7B 7B 98 01 ModeIndex CS 7D 7D
ModeIndex:模式id或模式索引,從0開始,表示模式1
格式: 7B 7B 11 ValidOutNum Out1Inx Out2Inx … OutnInx CS 7D 7D
(詳情見CmdIndex = 0x11)
格式:7B 7B 90 09 Addr Ctrl Line Column P Q SyncLock Adjust Routing CS 7D 7D
(詳情見CmdIndex = 0x90)
格式:7B 7B 90 09 Port Ctrl Line Column P Q SyncLock Adjust Routing CS 7D 7D
Port:端口號(hào).
Ctrl: [bit7]: = 1,表示讀取拼接參數(shù).
= 0,表示設(shè)置拼接.
[Bit6]: = 1,表示端口為輸入板卡端口.
= 0,表示端口為輸出板卡端口.
[bit5~0]:保留未使用,默認(rèn)寫0.
Line: 拼接屏幕一共的行數(shù)
Column: 拼接屏幕一共的列數(shù)
P: 當(dāng)前屏幕所在的行數(shù)
Q: 當(dāng)前屏幕所在的列數(shù)
bSyncLock:同步鎖開關(guān),1-開; 0-關(guān)
Adjust:校正值
Routing:輸出端口(Add-1)映射的輸入端口
格式:7B 7B 91 06 Port Ctrl Left Right Top Bottom CS 7D 7D
Port:端口號(hào).
Ctrl: [bit7]: = 1,表示讀取當(dāng)前屏幕的邊緣調(diào)整參數(shù).
= 0,表示設(shè)置當(dāng)前屏幕的邊緣調(diào)整參數(shù).
[bit6]: = 1,表示端口為輸入板卡端口.
= 0,表示端口為輸出板卡端口.
[bit5~0]: 保留未使用,默認(rèn)寫0.
Left:表示屏幕左邊沿的值. 單位為像素.
Right:表示屏幕右邊沿的值. 單位為像素.(目前該參數(shù)不使用,表示與Left相同)
Top:表示屏幕上邊沿的值. 單位為像素.
Bottom:表示屏幕下邊沿的值.單位為像素.(目前該參數(shù)不使用,表示與Top相同)
格式:7B 7B 92 03 Port Ctrl LockFlag CS 7D 7D
Port:端口號(hào).
Ctrl: [bit7]: = 1,表示讀取SyncLock的開關(guān)值.
= 0,表示設(shè)置SyncLock的開關(guān)值.
[bit6]: = 1,表示端口為輸入板卡端口.
= 0,表示端口為輸出板卡端口.
[bit5~0]: 保留不使用,默認(rèn)寫0.
LockFlag: = 1,表示設(shè)置同步鎖定.
= 0,表示取消同步鎖定.
格式:7B 7B 93 ValidLen ValidData CS 7D 7D
ValidLen: =2+3+5*NUM_Vaild, NUM_Vaild為拼接墻屏幕的有效個(gè)數(shù)(有效個(gè)數(shù) <= 拼接墻屏幕行*拼接墻屏幕列)
ValidData:由Addr+Ctrl+NUM_Vaild+NUM_Line+NUM_Column[+Flag+ FirstCombineID+ OutputPort+ AdjustValue+ InputPort+……]組成.
Addr:板卡地址,因?yàn)樾畔l(fā)給主板,所以Addr沒啥意義,默認(rèn)為0
Ctrl:[bit7]: = 1,表示讀取拼接墻數(shù)據(jù)
= 0,表示設(shè)置拼接墻數(shù)據(jù)
NUM_Valid:拼接墻屏幕的有效個(gè)數(shù)
NUM_Line:拼接墻屏幕的行數(shù)
NUM_Column:拼接墻屏幕的列數(shù)
Flag:[bit0]: = 1,表示拼接
= 0,表示不拼接
[bit1]: = 1,表示鎖定同步時(shí)鐘
= 0,表示不鎖定同步時(shí)鐘
FirstCombineID: NUM_Line* NUM_Column的拼接屏幕第一個(gè)屏幕的索引id
OutputPort:輸出端口
AdjustValue:校正值
InputPort:輸入端口
Flag+ FirstCombineID+ OutputPort+ AdjustValue+ InputPort+……:總共共有NUM_Valid個(gè)Flag+ FirstCombineID+ OutputPort+ AdjustValue+ InputPort結(jié)構(gòu)的數(shù)據(jù).
① 當(dāng)Ctrl的bit7為1時(shí),讀取拼接墻數(shù)據(jù), NUM_Valid= NUM_Line= NUM_Column=0; ValidLen=5
格式:7B 7B 93 ValidLen ValidData CS 7D 7D
ValidLen: =3+5*NUM_Vaild, NUM_Vaild為拼接墻屏幕的有效個(gè)數(shù)(有效個(gè)數(shù) <= 拼接墻屏幕行*拼接墻屏幕列)
ValidData:由NUM_Vaild+NUM_Line+NUM_Column+Flag+ FirstCombineID+ OutputPort+ AdjustValue+ InputPort+……組成.
NUM_Valid:拼接墻屏幕的有效個(gè)數(shù)
NUM_Line:拼接墻屏幕的行數(shù)
NUM_Column:拼接墻屏幕的列數(shù)
Flag:[bit0]: = 1,表示拼接
= 0,表示不拼接
[bit1]: = 1,表示鎖定同步時(shí)鐘
= 0,表示不鎖定同步時(shí)鐘
FirstCombineID: NUM_Line* NUM_Column的拼接屏幕第一個(gè)屏幕的索引id
OutputPort:輸出端口
AdjustValue:校正值
InputPort:輸入端口
Flag+ FirstCombineID+ OutputPort+ AdjustValue+ InputPort+……:總共共有NUM_Valid個(gè)Flag+ FirstCombineID+ OutputPort+ AdjustValue+ InputPort結(jié)構(gòu)的數(shù)據(jù).
格式:7B 7B 80 03 Port Ctrl TransparentFlag CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢OSD背景色
= 0,表示設(shè)置OSD背景色
[bit6]: = 1,表示端口是輸入板卡端口
= 0,表示端口是輸出板卡端口
[bit5~0]:保留未使用,默認(rèn)寫0
TransparentFlag: = 1,表示打開背景色透明
= 0,表示關(guān)閉背景色透明
格式:7B 7B 80 03 Port Ctrl TransparentFlag CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢OSD背景色
= 0,表示設(shè)置OSD背景色
[bit6]: = 1,表示端口是輸入板卡端口
= 0,表示端口是輸出板卡端口
[bit5~0]:保留未使用,默認(rèn)寫0
TransparentFlag: = 1,表示打開背景色透明
= 0,表示關(guān)閉背景色透明
格式:7B 7B 81 06 Port Ctrl XH XL YH YL CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢OSD文字顯示位置信息
= 0,表示設(shè)置OSD文字顯示位置信息
[bit6]: = 1,表示端口是輸入板卡端口
= 0,表示端口是輸出板卡端口
[bit5]: 保留未使用,默認(rèn)寫0
[bit4]: = 1,表示設(shè)置OSD文字時(shí),操作的是文字左上角的坐標(biāo),Ctrl[bit3~0]無效
= 0,表示設(shè)置OSD文字時(shí),操作的是文字整體位置,此時(shí),Ctrl[bit3~0]有效
[bit3~2]: 00-垂直靠上,01-垂直居中,10-垂直靠下,11-保留未使用
[bit1~0]: 00-水平靠左,01-水平居中,10-水平靠右,11-保留未使用
XH:表示x軸坐標(biāo)值的高八位(Ctrl:bit4為1時(shí)有效)
XL:表示x軸坐標(biāo)值的低八位(Ctrl:bit4為1時(shí)有效)
YH:表示y軸坐標(biāo)值的高八位(Ctrl:bit4為1時(shí)有效)
YL:表示y軸坐標(biāo)值的低八位(Ctrl:bit4為1時(shí)有效)
格式:7B 7B 81 06 Port Ctrl XH XL YH YL CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢OSD文字顯示位置信息
= 0,表示設(shè)置OSD文字顯示位置信息
[bit6]: = 1,表示端口是輸入板卡端口
= 0,表示端口是輸出板卡端口
[bit5]: 保留未使用,默認(rèn)寫0
[bit4]: = 1,表示設(shè)置OSD文字時(shí),操作的是文字左上角的坐標(biāo),Ctrl[bit3~0]無效
= 0,表示設(shè)置OSD文字時(shí),操作的是文字整體位置,此時(shí),Ctrl[bit3~0]有效
[bit3~2]: 00-垂直靠上,01-垂直居中,10-垂直靠下,11-保留未使用
[bit1~0]: 00-水平靠左,01-水平居中,10-水平靠右,11-保留未使用
XH:表示x軸坐標(biāo)值的高八位(Ctrl:bit4為1時(shí)有效)
XL:表示x軸坐標(biāo)值的低八位(Ctrl:bit4為1時(shí)有效)
YH:表示y軸坐標(biāo)值的高八位(Ctrl:bit4為1時(shí)有效)
YL:表示y軸坐標(biāo)值的低八位(Ctrl:bit4為1時(shí)有效)
格式:7B 7B 82 04 Port Ctrl Type Size CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢字體信息
= 0,表示設(shè)置字體信息
[bit6]: = 1,表示端口為輸入板卡端口
= 0,表示端口為輸出板卡端口
[bit5]:保留未使用,默認(rèn)寫0
[bit 4]: = 1,表示顏色反轉(zhuǎn)
= 0,表示顏色不反轉(zhuǎn)
[bit 3]: = 1,表示斜體
= 0,表示正常
[bit 2]: = 1,表示下劃線
= 0,表示無下劃線
[bit 1]: = 1,表示加黑
= 0,表示不加黑
[bit0]: = 1,表示加粗
= 0,表示不加粗
Type:表示字體類型, 0x00-黑體、0x01-楷體、0x02宋體、0x03-仿宋、其他值保留使用
Size:表示字體大小, 0x00-32*32、0x01-48*48、0x02-64*64、0x03-80*80、0x04-96*96、其他值保留使用
格式:7B 7B 82 04 Port Ctrl Type Size CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢字體信息
= 0,表示設(shè)置字體信息
[bit6]: = 1,表示端口為輸入板卡端口
= 0,表示端口為輸出板卡端口
[bit5]:保留未使用,默認(rèn)寫0
[bit 4]: = 1,表示顏色反轉(zhuǎn)
= 0,表示顏色不反轉(zhuǎn)
[bit 3]: = 1,表示斜體
= 0,表示正常
[bit 2]: = 1,表示下劃線
= 0,表示無下劃線
[bit 1]: = 1,表示加黑
= 0,表示不加黑
[bit0]: = 1,表示加粗
= 0,表示不加粗
Type:表示字體類型, 0x00-黑體、0x01-楷體、0x02宋體、0x03-仿宋、其他值保留使用
Size:表示字體大小, 0x00-32*32、0x01-48*48、0x02-64*64、0x03-80*80、0x04-96*96、其他值保留使用
格式:7B 7B 83 05 Port Ctrl Rval Gval Bval CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢OSD顏色
= 0,表示設(shè)置OSD顏色
[bit6]: = 1,表示端口為輸入板卡端口
= 0,表示端口為輸出板卡端口
[bit5~2]: 保留未使用
[bit1]: = 1,表示RGB 參數(shù)為十進(jìn)制
= 0,表示RGB 參數(shù)為十六進(jìn)制
[bit0]: = 1,表示設(shè)置背景色
= 0,表示設(shè)置前景色(文字顏色)
Rval:RGB中Red的值,配合Ctrl[bit1]的值計(jì)算
Gval:RGB中Green的值,配合Ctrl[bit1]的值計(jì)算
Bval:RGB中Blue的值,配合Ctrl[bit1]的值計(jì)算
格式:7B 7B 83 05 Port Ctrl Rval Gval Bval CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢OSD顏色
= 0,表示設(shè)置OSD顏色
[bit6]: = 1,表示端口為輸入板卡端口
= 0,表示端口為輸出板卡端口
[bit5~2]: 保留未使用
[bit1]: = 1,表示RGB 參數(shù)為十進(jìn)制
= 0,表示RGB 參數(shù)為十六進(jìn)制
[bit0]: = 1,表示設(shè)置背景色
= 0,表示設(shè)置前景色(文字顏色)
Rval:RGB中Red的值,配合Ctrl[bit1]的值計(jì)算
Gval:RGB中Green的值,配合Ctrl[bit1]的值計(jì)算
Bval:RGB中Blue的值,配合Ctrl[bit1]的值計(jì)算
格式:7B 7B 84 03 Port Ctrl DataInfo TimeInfo UpdateFrequence SaveFrequence CharsNUM_Before_Data CharsNUM_Before_Time IDInfo BaseData(N Bytes) CS 7D 7D
Port:端口號(hào)
Ctrl:[bit7]: =1,表示查詢,查詢時(shí)設(shè)備先返回0x84指令(不包含設(shè)置時(shí)的BaseData信息),然后返回0x85指令的數(shù)據(jù)
=0,表示設(shè)置
[bit6]: =1,表示端口為輸入板卡的端口
=0,表示端口為輸出板卡的端口
[bit5]: 保留未使用
[bit4]: =0,顯性O(shè)SD模式
=1,隱性O(shè)SD模式
[bit3]: =1,當(dāng)Ctrl的bit7=0時(shí)有效,表示最后1條BaseData數(shù)據(jù)
=0,當(dāng)Ctrl的bit7=0時(shí)有效,表示第1條BaseData數(shù)據(jù)(當(dāng)數(shù)據(jù)量大的時(shí)候需要發(fā)送兩條)
[bit2]: =1,表示需要板卡自動(dòng)計(jì)算時(shí)間
=0,表示不需要自動(dòng)計(jì)算時(shí)間
[bit1~0]:表示OSD模式,0-正常模式,1-3x3模式,2-3x4模式,3-保留未使用;(隱性O(shè)SD模式時(shí)請(qǐng)?jiān)O(shè)置為非零值!)
顯性O(shè)SD模式時(shí),參數(shù)解析:
DateInfo: 高4位,表示日期的格式,取值0-3有效(含義見PC工具OSD設(shè)置頁面);
低4位,表示日期所在的行號(hào),取值0-15分別表示第1-16行
TimeInfo: 高4位,表示時(shí)間的格式,取值0-3有效(含義見PC工具OSD設(shè)置頁面);
低4位,表示時(shí)間所在的行號(hào),取值0-15分別表示第1-16行
UpdateFrequence:時(shí)間更新的頻率,單位秒
SaveFrequence:時(shí)間保存的頻率,單位分鐘
CharsNUM_Before_Date:日期前面的字的字節(jié)個(gè)數(shù)
CharsNUM_Before_Time:時(shí)間前面的字的字節(jié)個(gè)數(shù)
IDInfo:該字節(jié)的值保留不使用
BaseData:需要顯示的所有不同字的GBK編碼的字節(jié)數(shù)據(jù),每條命令N取值最大為75;且需要全部的ASCII字節(jié)數(shù)據(jù)排列在前,其余的非ASCII碼的數(shù)據(jù)(如漢字的字節(jié)數(shù)據(jù))排列在后.
注!!!:
1. BaseData用于加載字體的點(diǎn)陣信息使用
2. 數(shù)字的ASCII值不需要寫入BaseData里面,設(shè)備默認(rèn)自動(dòng)加載數(shù)字的點(diǎn)陣信息.
3. 只需要發(fā)送一條0x84指令時(shí),Ctrl的bit3需要為1;需要發(fā)送兩條0x84指令時(shí),第一條指令的Ctrl的bit3需要為0,第2條指令的Ctrl的bit3需要為1
單條指令的最大長(zhǎng)度為90,BaseData的長(zhǎng)度為Nbyte,所以N的最大值為75
隱性O(shè)SD模式時(shí),參數(shù)解析:
DateInfo: 高4位,月(Month)的所在行數(shù)
低4為,日(Day)的所在行數(shù)
TimeInfo: 高4位,小時(shí)的所在行數(shù)
低4位,分鐘的所在行數(shù)
UpdateFrequence:時(shí)間更新的頻率,單位秒
SaveFrequence:時(shí)間保存的頻率,單位分鐘
CharsNUM_Before_Date: 高4位,月(Month)前面的字的字節(jié)個(gè)數(shù)
低4位,日(Day)前面的字的字節(jié)個(gè)數(shù)
CharsNUM_Before_Time: 高4位,小時(shí)前面的字的字節(jié)個(gè)數(shù)
低4位,分鐘前面的字的字節(jié)個(gè)數(shù)
IDInfo: 高4位,ID所在的行數(shù)
低4位,ID前面的字的字節(jié)個(gè)數(shù)
BaseData:固定長(zhǎng)度5個(gè)字節(jié),含義如下:
第一個(gè)字節(jié): HiddenOsdMode:1-重復(fù)x1,2-重復(fù)x5,3-重復(fù)x9,其他值保留不使用
第二個(gè)字節(jié): YearSecondInfo:高4位,年的所在行數(shù);低4位,秒的所在行數(shù).
第三個(gè)字節(jié): CharsNUM_Before_YearSecond:高4位,年前面的字的字節(jié)個(gè)數(shù);低4位,秒前面的字的字節(jié)個(gè)數(shù).
第四個(gè)字節(jié): ID的高8位.
第五個(gè)字節(jié): ID的低8位.
注!!!:
隱性OSD模式時(shí),年月日時(shí)分秒所在的行數(shù)值:
1. 取值0-7: 表示行數(shù)值
2. 其他值: 無效,該行數(shù)值將導(dǎo)致對(duì)應(yīng)的年月日時(shí)分秒不顯示出來。
隱性OSD模式時(shí),年月日時(shí)分秒前面的字的字節(jié)個(gè)數(shù),用于在一行上面左右移動(dòng)其顯示的位置(補(bǔ)充空白)。
格式:7B 7B 84 03 Port Ctrl DataInfo TimeInfo UpdateFrequence SaveFrequence CharsNUM_Before_Data CharsNUM_Before_Time IDInfo BaseData(N Bytes) CS 7D 7D
Port:端口號(hào)
Ctrl:[bit7]: =1,表示查詢,查詢時(shí)設(shè)備先返回0x84指令(不包含設(shè)置時(shí)的BaseData信息),然后返回0x85指令的數(shù)據(jù)
=0,表示設(shè)置
[bit6]: =1,表示端口為輸入板卡的端口
=0,表示端口為輸出板卡的端口
[bit5]: 保留未使用
[bit4]: =0,顯性O(shè)SD模式
=1,隱性O(shè)SD模式
[bit3]: =1,當(dāng)Ctrl的bit7=0時(shí)有效,表示最后1條BaseData數(shù)據(jù)
=0,當(dāng)Ctrl的bit7=0時(shí)有效,表示第1條BaseData數(shù)據(jù)(當(dāng)數(shù)據(jù)量大的時(shí)候需要發(fā)送兩條)
[bit2]: =1,表示需要板卡自動(dòng)計(jì)算時(shí)間
=0,表示不需要自動(dòng)計(jì)算時(shí)間
[bit1~0]:表示OSD模式,0-正常模式,1-3x3模式,2-3x4模式,3-保留未使用;(隱性O(shè)SD模式時(shí)請(qǐng)?jiān)O(shè)置為非零值!)
顯性O(shè)SD模式時(shí),參數(shù)解析:
DateInfo: 高4位,表示日期的格式,取值0-3有效(含義見PC工具OSD設(shè)置頁面);
低4位,表示日期所在的行號(hào),取值0-15分別表示第1-16行
TimeInfo: 高4位,表示時(shí)間的格式,取值0-3有效(含義見PC工具OSD設(shè)置頁面);
低4位,表示時(shí)間所在的行號(hào),取值0-15分別表示第1-16行
UpdateFrequence:時(shí)間更新的頻率,單位秒
SaveFrequence:時(shí)間保存的頻率,單位分鐘
CharsNUM_Before_Date:日期前面的字的字節(jié)個(gè)數(shù)
CharsNUM_Before_Time:時(shí)間前面的字的字節(jié)個(gè)數(shù)
IDInfo:該字節(jié)的值保留不使用
BaseData:需要顯示的所有不同字的GBK編碼的字節(jié)數(shù)據(jù),每條命令N取值最大為75;且需要全部的ASCII字節(jié)數(shù)據(jù)排列在前,其余的非ASCII碼的數(shù)據(jù)(如漢字的字節(jié)數(shù)據(jù))排列在后.
注!!!:
4. BaseData用于加載字體的點(diǎn)陣信息使用
5. 數(shù)字的ASCII值不需要寫入BaseData里面,設(shè)備默認(rèn)自動(dòng)加載數(shù)字的點(diǎn)陣信息.
6. 只需要發(fā)送一條0x84指令時(shí),Ctrl的bit3需要為1;需要發(fā)送兩條0x84指令時(shí),第一條指令的Ctrl的bit3需要為0,第2條指令的Ctrl的bit3需要為1
單條指令的最大長(zhǎng)度為90,BaseData的長(zhǎng)度為Nbyte,所以N的最大值為75
隱性O(shè)SD模式時(shí),參數(shù)解析:
DateInfo: 高4位,月(Month)的所在行數(shù)
低4為,日(Day)的所在行數(shù)
TimeInfo: 高4位,小時(shí)的所在行數(shù)
低4位,分鐘的所在行數(shù)
UpdateFrequence:時(shí)間更新的頻率,單位秒
SaveFrequence:時(shí)間保存的頻率,單位分鐘
CharsNUM_Before_Date: 高4位,月(Month)前面的字的字節(jié)個(gè)數(shù)
低4位,日(Day)前面的字的字節(jié)個(gè)數(shù)
CharsNUM_Before_Time: 高4位,小時(shí)前面的字的字節(jié)個(gè)數(shù)
低4位,分鐘前面的字的字節(jié)個(gè)數(shù)
IDInfo: 高4位,ID所在的行數(shù)
低4位,ID前面的字的字節(jié)個(gè)數(shù)
BaseData:固定長(zhǎng)度5個(gè)字節(jié),含義如下:
第一個(gè)字節(jié): HiddenOsdMode:1-重復(fù)x1,2-重復(fù)x5,3-重復(fù)x9,其他值保留不使用
第二個(gè)字節(jié): YearSecondInfo:高4位,年的所在行數(shù);低4位,秒的所在行數(shù).
第三個(gè)字節(jié): CharsNUM_Before_YearSecond:高4位,年前面的字的字節(jié)個(gè)數(shù);低4位,秒前面的字的字節(jié)個(gè)數(shù).
第四個(gè)字節(jié): ID的高8位.
第五個(gè)字節(jié): ID的低8位.
注!!!:
隱性OSD模式時(shí),年月日時(shí)分秒所在的行數(shù)值:
3. 取值0-7: 表示行數(shù)值
4. 其他值: 無效,該行數(shù)值將導(dǎo)致對(duì)應(yīng)的年月日時(shí)分秒不顯示出來。
隱性OSD模式時(shí),年月日時(shí)分秒前面的字的字節(jié)個(gè)數(shù),用于在一行上面左右移動(dòng)其顯示的位置(補(bǔ)充空白)。
格式:7B 7B 85 ValidLen Port Ctrl Line Column StringS CS 7D 7D
ValidLen:有效長(zhǎng)度為4+N字節(jié),其中N為StringS所表示一系列編碼數(shù)據(jù)的長(zhǎng)度
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢OSD文字內(nèi)容
= 0,表示設(shè)置OSD文字內(nèi)容
[bit6]: = 1,表示端口為輸入板卡的端口
= 0,表示端口為輸出板卡的端口
[bit5~3]:保留未使用
[bit2]: = 1,表示快速顯示字符串(可能顯示不全)
= 0,表示全面顯示字符串(可能耗時(shí)長(zhǎng))
[bit1]: = 1,表示將某行的(Line,Column)位置的寫入內(nèi)容之前的部分擦除為空白
= 0,表示不擦除
[bit0]: = 1,表示將某行的(Line,Column)位置的寫入內(nèi)容之后的部分擦除為空白
= 0,表示不擦除
Line:表示需要訪問的行序
Column:表示需要訪問的列序
StringS:表示一系列需要寫入的文字串的編碼值,長(zhǎng)度為任意的N個(gè)字節(jié),當(dāng)Ctrl[bit7]為1時(shí),StringS為空
格式:7B 7B 85 ValidLen Port Ctrl Line Column StringS CS 7D 7D
ValidLen:有效長(zhǎng)度為4+N字節(jié),其中N為StringS所表示一系列編碼數(shù)據(jù)的長(zhǎng)度
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢OSD文字內(nèi)容
= 0,表示設(shè)置OSD文字內(nèi)容
[bit6]: = 1,表示端口為輸入板卡的端口
= 0,表示端口為輸出板卡的端口
[bit5~3]:保留未使用
[bit2]: = 1,表示快速顯示字符串(可能顯示不全)
= 0,表示全面顯示字符串(可能耗時(shí)長(zhǎng))
[bit1]: = 1,表示將某行的(Line,Column)位置的寫入內(nèi)容之前的部分擦除為空白
= 0,表示不擦除
[bit0]: = 1,表示將某行的(Line,Column)位置的寫入內(nèi)容之后的部分擦除為空白
= 0,表示不擦除
Line:表示需要訪問的行序
Column:表示需要訪問的列序
StringS:表示一系列需要寫入的文字串的編碼值,長(zhǎng)度為任意的N個(gè)字節(jié),當(dāng)Ctrl[bit7]為1時(shí),StringS為空
格式:7B 7B 86 03 Port Ctrl OpaqueVal CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢OSD不透明度的值
= 0,表示設(shè)置OSD不透明度的值
[bit6]: = 1,表示端口為輸入板卡的端口
= 0,表示端口為輸出板卡的端口
[bit5~0]:保留未使用
OpaqueVal: 不透明度的值
格式:7B 7B 86 03 Port Ctrl OpaqueVal CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢OSD不透明度的值
= 0,表示設(shè)置OSD不透明度的值
[bit6]: = 1,表示端口為輸入板卡的端口
= 0,表示端口為輸出板卡的端口
[bit5~0]:保留未使用
OpaqueVal: 不透明度的值
格式:7B 7B 87 Port Ctrl Flag CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢OSD開關(guān)狀態(tài)
= 0,表示設(shè)置OSD開關(guān)狀態(tài)
[bit6]: = 1,表示端口為輸入板卡的端口
= 0,表示端口為輸出板卡的端口
[bit5~0]:保留未使用
Flag: = 1,表示OSD開啟
= 0,表示OSD關(guān)閉
格式:7B 7B 87 Port Ctrl Flag CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢OSD開關(guān)狀態(tài)
= 0,表示設(shè)置OSD開關(guān)狀態(tài)
[bit6]: = 1,表示端口為輸入板卡的端口
= 0,表示端口為輸出板卡的端口
[bit5~0]:保留未使用
Flag: = 1,表示OSD開啟
= 0,表示OSD關(guān)閉
格式:7B 7B 88 03 Port Ctrl Id CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示讀取OSD預(yù)存信息
= 0,表示存儲(chǔ)OSD預(yù)存信息
[bit6]: = 1,表示端口為輸入板卡的端口
= 0,表示端口為輸出板卡的端口
[bit5~0]:保留未使用,默認(rèn)寫0
Id:表示預(yù)設(shè)id編號(hào),如果該號(hào)碼已經(jīng)被存儲(chǔ)了,則覆蓋之前的該預(yù)設(shè)號(hào)碼的存儲(chǔ)內(nèi)容
格式:7B 7B 88 03 Port Ctrl Id CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示讀取OSD預(yù)存信息
= 0,表示存儲(chǔ)OSD預(yù)存信息
[bit6]: = 1,表示端口為輸入板卡的端口
= 0,表示端口為輸出板卡的端口
[bit5~0]:保留未使用,默認(rèn)寫0
Id:表示預(yù)設(shè)id編號(hào),如果該號(hào)碼已經(jīng)被存儲(chǔ)了,則覆蓋之前的該預(yù)設(shè)號(hào)碼的存儲(chǔ)內(nèi)容
格式:7B 7B 89 03 Port Ctrl Width Height CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢OSD尺寸
= 0,表示設(shè)置OSD尺寸
[bit6]: = 1,表示端口為輸入板卡的端口
= 0,表示端口為輸出板卡的端口
[bit5~0]:保留未使用,默認(rèn)寫0
Width:OSD寬度,單位是16個(gè)像素, 應(yīng)確保Width*16小于等于1920
Height:OSD的高度,單位是字體行數(shù)
格式:7B 7B 89 03 Port Ctrl Width Height CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢OSD尺寸
= 0,表示設(shè)置OSD尺寸
[bit6]: = 1,表示端口為輸入板卡的端口
= 0,表示端口為輸出板卡的端口
[bit5~0]:保留未使用,默認(rèn)寫0
Width:OSD寬度,單位是16個(gè)像素, 應(yīng)確保Width*16小于等于1920
Height:OSD的高度,單位是字體行數(shù)
格式:7B 7B AA 02 01 01 9E 7D 7D
格式:7B 7B AA 02 Addr Ctrl CS 7D 7D
Addr:目標(biāo)板卡地址,0xFF所有輸入板或者所有輸出板,輸入板還是輸出板由Ctrl的bit6決定
Ctrl: [bit7]: = 1,表示讀取
= 0,表示設(shè)置
[bit6]: = 1,表示輸入板卡
= 0,表示輸出板卡
格式:7B 7B FF 03 Port Ctrl OptType CS 7D 7D
Port:端口號(hào)
Ctrl:操作碼
OptType:操作類型
① 若發(fā)送命令成功處理,則設(shè)置命令的返回?cái)?shù)據(jù)與發(fā)送的數(shù)據(jù)相同,查詢命令的返回?cái)?shù)據(jù)與查詢內(nèi)容相關(guān)
② 若發(fā)送命令處理失敗,則統(tǒng)一返回命令碼0xFF,命令體長(zhǎng)度為3個(gè)字節(jié),命令體內(nèi)容為發(fā)送命令的目標(biāo)地址/端口號(hào)+命令碼+操作類型(操作類型為設(shè)置-0x00或查詢-0x01)
Note:插卡機(jī)箱中,輸入板卡的輸出端子類型和輸出板卡的輸入端子類型恒為HDMI.
格式:7B 7B B0 04 Port Ctrl SignalType BoardType CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢端子類型
= 0,表示設(shè)置端子類型
[bit6]: = 1,表示端口為輸入板卡的端口
= 0,表示端口為輸出板卡的端口
[bit5]: = 1,表示操作的是輸入端子類型
= 0,表示操作的是輸出端子類型
[bit4~0]:保留未使用,默認(rèn)寫0
SignalType:表示端子類型索引,這個(gè)似程序而定
BoardType:表示板卡類型,設(shè)置不了板卡類型,常為查詢時(shí)返回(不一定都用到,要用時(shí)再判斷).
目前端子類型定義索引如下:
//信號(hào)類型/端子類型
typedef enum _OUTPUT_TYPE_
{
EM_OUTPUT_TYPE_FIBER = 0 , // = 0
EM_OUTPUT_TYPE_SDI , // = 1
EM_OUTPUT_TYPE_HDBST , // = 2
EM_OUTPUT_TYPE_DVI , // = 3
EM_OUTPUT_TYPE_CVBS , // = 4
EM_OUTPUT_TYPE_YPbPr , // = 5
EM_OUTPUT_TYPE_VGA , // = 6
EM_OUTPUT_TYPE_HDMI , // = 7
EM_OUTPUT_TYPE_DIRECTHDMI , // = 8
EM_OUTPUT_TYPE_UHDHDMI , // = 9
EM_OUTPUT_TYPE_UHDDVI , // = 10
EM_OUTPUT_TYPE_UHDHDMI14 , // = 11
EM_OUTPUT_TYPE_UHDHDMI22 , // = 12
EM_OUTPUT_TYPE_MAX ,
}EM_OUTPUT_TYPE;
格式:7B 7B B1 03 Port Ctrl ResolutionIndex CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢分辨率信息
= 0,表示設(shè)置分辨率信息
[bit6]: = 1,表示端口為輸入板卡的端口
= 0,表示端口為輸出板卡的端口
[bit5]: = 1,表示操作的是輸入分辨率(bit6=1,bit5=1,則表示輸入板卡的輸入端分辨率)
= 0,表示操作的是輸出分辨率(bit6=1,bit5=0,則表示輸出板卡的輸出端分辨率)
[bit4~0]:保留未使用,默認(rèn)為0
ResolutionIndex:分辨率索引
格式:7B 7B B6 08 Port Ctrl HresH HresL VresH VresL PorI Frequency CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢分辨率
=
0,表示設(shè)置分辨率
[bit6]: = 1,表示端口為輸入板卡的端口
=
0,表示端口為輸出板卡的端口
[bit5]: = 1,表示操作的是輸入分辨率
=
0,表示操作的是輸出分辨率
[bit4~0]:保留未使用,默認(rèn)寫0
HresH:圖像水平分辨率的高8位,水平分辨率由高8位和低8位值計(jì)算得出.
HresL:圖像水平分辨率的低8位,水平分辨率由高8位和低8位值計(jì)算得出.
VresH:圖像垂直分辨率的高8位,垂直分辨率由高8位和低8位值計(jì)算得出.
VresL:圖像垂直分辨率的低8位,垂直分辨率由高8位和低8位值計(jì)算得出.
PorI: = 1,表示逐行掃描方式(progressive)
= 0,表示隔行掃描方式(interlaced)
Frequency:表示屏幕刷新率
格式:7B 7B B7 ValidLen Port Ctrl Format{1,2} CS 7D 7D
ValidLen:有效長(zhǎng)度為2+ Format{1,2}結(jié)構(gòu)的長(zhǎng)度.
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢端子類型和分辨率
= 0,表示設(shè)置端子類型和分辨率
[bit6]: = 1,表示端口為輸入板卡的端口,且描述的是輸入板卡
= 0,表示端口為輸出板卡的端口,且描述的是輸出板卡
[bit5]: = 1,表示Format{1,2}選擇為格式2
= 0,表示Format{1,2}選擇為格式1
[bit4~0]:保留未使用,默認(rèn)寫0
① 當(dāng)ctrl的bit5 = 0時(shí),使用格式1解析
格式1: 7B 7B B7 08 Port Ctrl DataVaild InType OutType InRes OutRes BoardType CS 7D 7D
DataVaild: [bit7~4]:保留未使用,默認(rèn)寫0
[bit3]: = 1,表示InType數(shù)據(jù)有效
= 0,表示InType數(shù)據(jù)無效(無效數(shù)據(jù)不解析)
[bit2]: = 1,表示OutType數(shù)據(jù)有效
= 0,表示OutType數(shù)據(jù)無效(無效數(shù)據(jù)不解析)
[bit1]: = 1,表示InRes數(shù)據(jù)有效
= 0,表示InRes數(shù)據(jù)無效(無效數(shù)據(jù)不解析)
[bit0]: = 1,表示OutRes數(shù)據(jù)有效
= 0,表示OutRes數(shù)據(jù)無效(無效數(shù)據(jù)不解析)
InType:輸入端子類型索引或輸入信號(hào)類型索引
OutType:輸出端子類型索引或輸出信號(hào)類型索引
InRes:輸入分辨率索引
OutRes:輸出分辨率索引
BoardType:板卡類型索引,Ctrl的bit6決定描述的是輸入板卡類型還是輸出板卡類型
② 當(dāng)ctrl的bit5 = 1時(shí),使用格式2解析
格式2: 7B 7B B7 07 Port Ctrl HresH HresL VresH VresL PorI_ Frequency CS 7D 7D
HresH:圖像水平分辨率的高8位,水平分辨率由高8位和低8位值計(jì)算得出.
HresL:圖像水平分辨率的低8位,水平分辨率由高8位和低8位值計(jì)算得出.
VresH:圖像垂直分辨率的高8位,垂直分辨率由高8位和低8位值計(jì)算得出.
VresL:圖像垂直分辨率的低8位,垂直分辨率由高8位和低8位值計(jì)算得出.
PorI_ Frequency: [bit7]: = 1,表示逐行掃描方式(progressive)
= 0,表示隔行掃描方式(interlaced)
[bit6~0]:表示屏幕刷新率(取值范圍0~0x7F)
格式:7B 7B B2 03 Port Ctrl Value CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢圖像顏色信息
= 0,表示設(shè)置圖像顏色信息
[bit6]: = 1,表示端口為輸入板卡的端口
= 0,表示端口為輸出板卡的端口
[bit5~4]: = 00,表示加1
= 01,表示減1
= 10,表示絕對(duì)值
= 11,表示恢復(fù)出廠設(shè)置
[bit3~0]: = 0000,表示操作亮度
= 0001,表示操作對(duì)比度
= 0010,表示操作飽和度
= 0011,表示操作銳度
= 0100,表示操作色調(diào)
= 0101,表示操作R-Gain
= 0110,表示操作G-Gain
= 0111,表示操作B-Gain
= 1000,表示操作R-Offset
= 1001,表示操作G-Offset
= 1010,表示操作B-Offset
Value:表示Ctrl的bit3~0所選擇的操作內(nèi)容的值
格式:7B 7B B3 03 Port Ctrl Value CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢圖像顏色信息
= 0,表示設(shè)置圖像顏色信息
[bit6]: = 1,表示端口為輸入板卡的端口
= 0,表示端口為輸出板卡的端口
[bit5~4]: = 00,表示加1
= 01,表示減1
= 10,表示絕對(duì)值
= 11,表示恢復(fù)出廠設(shè)置
[bit3~0]: = 0000,表示操作HPostion
= 0001,表示操作VPostion
= 0010,表示操作HSize
= 0011,表示操作Vsize
Value:表示Ctrl的bit3~0所選擇的操作內(nèi)容的值
格式:7B 7B B4 VaildLen Port Ctrl DataS CS 7D 7D
VaildLen:最大有效長(zhǎng)度為(2+MaxOut/8),MaxOut為矩陣可配置的最大輸出端口數(shù)
Port:端口號(hào),此為0xFF,表示所有輸出端口
Ctrl: [bit7]: = 1,表示查詢
= 0,表示設(shè)置
[bit6]: = 1,表示端口為輸入板卡的端口
= 0,表示端口為輸出板卡的端口
[bit5~0]:保留未使用,默認(rèn)寫0
DataS:由單個(gè)或多個(gè)字節(jié)組成,總共1+(MaxPortid/8)字節(jié), MaxPortid最小為0, MaxPortid=0~7分別表示端口1~ 8.DataS所表示的字節(jié)組中的第一個(gè)字節(jié)的bit7~bit0分別表示輸出端口1~8是否需要凍結(jié)(對(duì)應(yīng)bit位為1表示需要凍結(jié),否則,正常輸出不凍結(jié)),假如有第二個(gè)字節(jié),則第一個(gè)字節(jié)的bit7~bit0分別表示輸出端口1~8是否需要凍結(jié)(對(duì)應(yīng)bit位為1表示需要凍結(jié),否則,正常輸出不凍結(jié)),其它以此類推.
舉例場(chǎng)景:
eg1)16x16的機(jī)箱,切換輸出端口9的輸入信號(hào)源輸入1,則主板發(fā)送0xB4指令給輸出板卡,發(fā)送的指令如下:
7B 7B B4 04 FF 00 00 80 CS 7D 7D(CS校驗(yàn)和就不列舉了,按照前文可以自行計(jì)算)
eg2)16x16的機(jī)箱,切換輸出端口6的輸入信號(hào)源輸入2,則主板發(fā)送0xB4指令給輸出板卡,發(fā)送的指令如下:
7B 7B B4 04 FF 00 04 00 CS 7D 7D(CS校驗(yàn)和就不列舉了,按照前文可以自行計(jì)算)
eg3)8x8的機(jī)箱,切換輸出端口6的輸入信號(hào)源輸入2,則主板發(fā)送0xB4指令給輸出板卡,發(fā)送的指令如下:
7B 7B B4 03 FF 00 04 CS 7D 7D(CS校驗(yàn)和就不列舉了,按照前文可以自行計(jì)算)
格式:7B 7B B8 13 Port Ctrl Offset VaildEdidDatas CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示讀取EDID信息
= 0,表示設(shè)置EDID信息
[bit6]: = 1,表示端口為輸入板卡的端口
= 0,表示端口為輸出板卡的端口
[bit5~0]:保留未使用
Offset: 表示VaildEdidDatas 所代表的EDID內(nèi)容在整個(gè)EDID中的偏移量
VaildEdidDatas:表示部分EDID的內(nèi)容,共有(0x13 – 3) = 0x10個(gè)字節(jié)
Note:
① 輸入板卡只可以設(shè)置EDID,讀取EDID則返回錯(cuò)誤
② 輸出板卡只可以讀取EDID,設(shè)置EDID則返回錯(cuò)誤
格式:7B 7B 45 0C Addr Ctrl IB1 IB2 … IB10 CS 7D 7D
Addr:目標(biāo)板卡地址(如果是主板和按鍵板,此位填0)
Ctrl: [bit7]: = 1,表示查詢輸入冗余
= 0,表示設(shè)置輸入冗余
[bit6~4]: = 100,表示目標(biāo)板卡為輸入板
= 011,表示目標(biāo)板卡為輸出板
= 010,表示目標(biāo)板卡為按鍵板
= 111,表示目標(biāo)板卡為主板
[bit3~0]:保留未使用,默認(rèn)寫0
IB1 IB2 … IB10:總共10個(gè)字節(jié),其中IB1的bit 0-7分別表示輸入端口1-8是否設(shè)置輸入冗余 (=1表示設(shè)置,=0表示不設(shè)置),IB2的bit 0-7分別表示輸入端口9-16是否設(shè)置輸入冗余,以此類推, IB10的bit 0-7分別表示輸入端口73-80是否設(shè)置輸入冗余
舉例:(只能相鄰2個(gè)奇偶端口可以設(shè)置-比如1-2,3-4,5-6。。。。)
1) PC設(shè)置輸入板輸入口3和4做輸入冗余功能
Send :7B 7B 45 0C 00 70 0C 00 00 00 00 00 00 00 00 00 xx 7D 7D
Recv: 7B 7B 45 0C 00 70 0C 00 00 00 00 00 00 00 00 00 xx 7D 7D
2) PC取消輸入板輸入口3和4做輸入冗余功能(正常矩陣)
Send :7B 7B 45 0C 00 70 00 00 00 00 00 00 00 00 00 00 xx 7D 7D
Recv: 7B 7B 45 0C 00 70 00 00 00 00 00 00 00 00 00 00 xx 7D 7D
3) PC查詢輸入冗余功能設(shè)置情況
Send :7B 7B 45 0C 00 F0 00 00 00 00 00 00 00 00 00 00 xx 7D 7D
Recv: 7B 7B 45 0C 00 F0 00 00 00 00 00 00 00 00 00 00 xx 7D 7D
格式:7B 7B 45 0C Addr Ctrl IB1 IB2 … IB10 CS 7D 7D
Addr:目標(biāo)板卡地址(如果是主板和按鍵板,此位填0)
Ctrl: [bit7]: = 1,表示查詢輸入冗余
= 0,表示設(shè)置輸入冗余
[bit6~4]: = 100,表示目標(biāo)板卡為輸入板
= 011,表示目標(biāo)板卡為輸出板
= 010,表示目標(biāo)板卡為按鍵板
= 111,表示目標(biāo)板卡為主板
[bit3~0]:保留未使用,默認(rèn)寫0
IB1 IB2 … IB10:總共10個(gè)字節(jié),其中IB1的bit 0-7分別表示輸入端口1-8是否設(shè)置輸入冗余 (=1表示設(shè)置,=0表示不設(shè)置),IB2的bit 0-7分別表示輸入端口9-16是否設(shè)置輸入冗余,以此類推, IB10的bit 0-7分別表示輸入端口73-80是否設(shè)置輸入冗余
格式:7B 7B 46 06 Addr Ctrl OC2 OC1 IC2 IC1 CS 7D 7D
Addr:目標(biāo)板卡地址(如果是主板和按鍵板,此位填0)
Ctrl: [bit7]: = 1,表示查詢輸入冗余
= 0,表示設(shè)置輸入冗余
[bit6~4]: = 100,表示目標(biāo)板卡為輸入板
= 011,表示目標(biāo)板卡為輸出板
= 010,表示目標(biāo)板卡為按鍵板
= 111,表示目標(biāo)板卡為主板
[bit3~0]:保留未使用,默認(rèn)寫0
OC2:此byte的bit 0-7分別表示輸出卡槽9-16的卡槽板卡插入狀態(tài)(=1表示已插卡,=0表示未插卡)
OC1:此byte的bit 0-7分別表示輸出卡槽1-8的卡槽板卡插入狀態(tài)(=1表示已插卡,=0表示未插卡)
IC2:此byte的bit 0-7分別表示輸入卡槽9-16的卡槽板卡插入狀態(tài)(=1表示已插卡,=0表示未插卡)
IC1:此byte的bit 0-7分別表示輸入卡槽1-8的卡槽板卡插入狀態(tài)(=1表示已插卡,=0表示未插卡)
舉例:
PC查詢輸入輸出插槽狀態(tài)-假如輸入輸出全插滿了(8x8矩陣)
Send :7B 7B 46 06 00 F0 00 00 00 00 xx 7D 7D
Recv: 7B 7B 46 06 00 F0 00 0F 00 0F xx 7D 7D
PC查詢輸入輸出插槽狀態(tài)-假如輸入輸出全插滿了(16x16矩陣)
Send :7B 7B 46 06 00 F0 00 00 00 00 xx 7D 7D
Recv: 7B 7B 46 06 00 F0 00 FF 00 FF xx 7D 7D
格式:7B 7B 46 06 Addr Ctrl OC2 OC1 IC2 IC1 CS 7D 7D
Addr:目標(biāo)板卡地址(如果是主板和按鍵板,此位填0)
Ctrl: [bit7]: = 1,表示查詢輸入冗余
= 0,表示設(shè)置輸入冗余
[bit6~4]: = 100,表示目標(biāo)板卡為輸入板
= 011,表示目標(biāo)板卡為輸出板
= 010,表示目標(biāo)板卡為按鍵板
= 111,表示目標(biāo)板卡為主板
[bit3~0]:保留未使用,默認(rèn)寫0
OC2:此byte的bit 0-7分別表示輸出卡槽9-16的卡槽板卡插入狀態(tài)(=1表示已插卡,=0表示未插卡)
OC1:此byte的bit 0-7分別表示輸出卡槽1-8的卡槽板卡插入狀態(tài)(=1表示已插卡,=0表示未插卡)
IC2:此byte的bit 0-7分別表示輸入卡槽9-16的卡槽板卡插入狀態(tài)(=1表示已插卡,=0表示未插卡)
IC1:此byte的bit 0-7分別表示輸入卡槽1-8的卡槽板卡插入狀態(tài)(=1表示已插卡,=0表示未插卡)
格式:7B 7B 49 04 Addr Ctrl FuncCmd OnOff CS 7D 7D
Addr:目標(biāo)板卡地址(如果是主板和按鍵板,此位填0)
Ctrl: [bit7]: = 1,表示查詢
= 0,表示設(shè)置
[bit6~4]: = 100,表示目標(biāo)板卡為輸入板
= 011,表示目標(biāo)板卡為輸出板
= 010,表示目標(biāo)板卡為按鍵板
= 111,表示目標(biāo)板卡為主板
[bit3~0]:保留未使用,默認(rèn)寫0
///////////////////////////////////////////////////////////////////////////////////////////////////////////
FuncCmd = 0x01,表示輸入綁定設(shè)置
OnOff: = 0x01,表示輸入綁定打開
= 0x00,表示輸入綁定關(guān)閉
///////////////////////////////////////////////////////////////////////////////////////////////////////////
FuncCmd = 0x02,表示向上匯報(bào)設(shè)置
OnOff: = 0x01,表示向上匯報(bào)打開
= 0x00,表示向上匯報(bào)關(guān)閉
///////////////////////////////////////////////////////////////////////////////////////////////////////////
FuncCmd = 0x03,表示凍結(jié)顯示設(shè)置
OnOff: = 0x01,表示凍結(jié)打開
= 0x00,表示凍結(jié)關(guān)閉
///////////////////////////////////////////////////////////////////////////////////////////////////////////
FuncCmd = 0x04,表示紅外開關(guān)設(shè)置
OnOff: = 0x01,表示紅外打開
= 0x00,表示紅外關(guān)閉
///////////////////////////////////////////////////////////////////////////////////////////////////////////
FuncCmd = 0x05,表示音頻關(guān)閉開關(guān)設(shè)置
OnOff: = 0x01,表示音頻關(guān)閉
= 0x00,表示音頻打開
///////////////////////////////////////////////////////////////////////////////////////////////////////////
舉例:其它例子以此類推即可
EG1:
打開主板上輸入綁定功能開關(guān)
Send :7B 7B 49 04 00 70 01 01 99 7D 7D
Recv: 7B 7B 49 04 00 70 01 01 99 7D 7D
關(guān)閉主板上輸入綁定功能開關(guān)
Send :7B 7B 49 04 00 70 01 00 99 7D 7D
Recv: 7B 7B 49 04 00 70 01 00 99 7D 7D
EG2:
打開主板上向上反饋功能開關(guān)
Send :7B 7B 49 04 00 70 02 01 99 7D 7D
Recv: 7B 7B 49 04 00 70 02 01 99 7D 7D
關(guān)閉主板上向上反饋功能開關(guān)
Send :7B 7B 49 04 00 70 02 00 99 7D 7D
Recv: 7B 7B 49 04 00 70 02 00 99 7D 7D
EG3:
輸出端口2顯示畫面凍結(jié)
Send :7B 7B 49 04 01 30 03 01 99 7D 7D
Recv: 7B 7B 49 04 01 30 03 01 CS 7D 7D
輸出端口2顯示畫面解凍(正常顯示)
Send :7B 7B 49 04 01 30 03 00 99 7D 7D
Recv: 7B 7B 49 04 01 30 03 00 CS 7D 7D
EG4:
打開按鍵板上紅外指令處理
Send :7B 7B 49 04 00 20 04 01 CS 7D 7D
Recv: 7B 7B 49 04 00 20 04 01 CS 7D 7D
關(guān)閉按鍵板上紅外指令處理
Send :7B 7B 49 04 00 20 04 00 CS 7D 7D
Recv: 7B 7B 49 04 00 20 04 00 CS 7D 7D
EG5:
輸出端口1打開音頻開關(guān)
Send :7B 7B 49 04 00 30 05 01 CS 7D 7D
Recv: 7B 7B 49 04 00 30 05 01 CS 7D 7D
輸出端口1關(guān)閉音頻開關(guān)
Send :7B 7B 49 04 00 30 05 00 CS 7D 7D
Recv: 7B 7B 49 04 00 30 05 00 CS 7D 7D
格式:7B 7B 49 04 Addr Ctrl FuncCmd OnOff CS 7D 7D
Addr:目標(biāo)板卡地址(如果是主板和按鍵板,此位填0)
Ctrl: [bit7]: = 1,表示查詢輸入冗余
= 0,表示設(shè)置輸入冗余
[bit6~4]: = 100,表示目標(biāo)板卡為輸入板
= 011,表示目標(biāo)板卡為輸出板
= 010,表示目標(biāo)板卡為按鍵板
= 111,表示目標(biāo)板卡為主板
[bit3~0]:保留未使用,默認(rèn)寫0
///////////////////////////////////////////////////////////////////////////////////////////////////////////
FuncCmd = 0x01,表示輸入綁定設(shè)置
OnOff: = 0x01,表示輸入綁定打開
= 0x00,表示輸入綁定關(guān)閉
///////////////////////////////////////////////////////////////////////////////////////////////////////////
FuncCmd = 0x02,表示向上匯報(bào)設(shè)置
OnOff: = 0x01,表示向上匯報(bào)打開
= 0x00,表示向上匯報(bào)關(guān)閉
///////////////////////////////////////////////////////////////////////////////////////////////////////////
格式:7B 7B BC 03 Addr Ctrl SignalStatus CS 7D 7D
Addr:目標(biāo)板卡地址(如果是主板和按鍵板,此位填0)
Ctrl: [bit7]: = 1,表示查詢輸入冗余
= 0,表示設(shè)置輸入冗余
[bit6~4]: = 100,表示目標(biāo)板卡為輸入板
= 011,表示目標(biāo)板卡為輸出板
= 010,表示目標(biāo)板卡為按鍵板
= 111,表示目標(biāo)板卡為主板
[bit3~0]:保留未使用,默認(rèn)寫0
SignalStatus: = 1,表示有信號(hào)
= 0,表示無信號(hào)
舉例:
1) 當(dāng)輸入需要匯報(bào)信號(hào)狀態(tài)時(shí),Main Board發(fā)送給所有輸入板詢問狀態(tài)變化(Main->INPUT)
MainBoard Send :7B 7B BC 03 FF C0 FF xx 7D 7D
2) 當(dāng)輸入端口2有信號(hào),并且需要匯報(bào)信號(hào)狀態(tài)時(shí)(Main<-INPUT)
MainBoard Recv: 7B 7B BC 03 02 C0 01 xx 7D 7D
格式:7B 7B BC 03 Addr Ctrl SignalStatus CS 7D 7D
Addr:目標(biāo)板卡地址(如果是主板和按鍵板,此位填0)
Ctrl: [bit7]: = 1,表示查詢輸入冗余
= 0,表示設(shè)置輸入冗余
[bit6~4]: = 100,表示目標(biāo)板卡為輸入板
= 011,表示目標(biāo)板卡為輸出板
= 010,表示目標(biāo)板卡為按鍵板
= 111,表示目標(biāo)板卡為主板
[bit3~0]:保留未使用,默認(rèn)寫0
SignalStatus: = 1,表示有信號(hào)
= 0,表示無信號(hào)
格式:7B 7B BD 03 Addr Ctrl ResMode CS 7D 7D
Addr:目標(biāo)板卡地址(如果是主板和按鍵板,此位填0)
Ctrl: [bit7]: = 1,表示查詢輸入冗余
= 0,表示設(shè)置輸入冗余
[bit6~4]: = 100,表示目標(biāo)板卡為輸入板
= 011,表示目標(biāo)板卡為輸出板
= 010,表示目標(biāo)板卡為按鍵板
= 111,表示目標(biāo)板卡為主板
[bit3~0]:保留未使用,默認(rèn)寫0
ResMode: = 1,表示User模式(輸出分辨率可限定分辨率范圍內(nèi)自由設(shè)置)
= 0,表示Auto模式(輸出分辨率自動(dòng)跟隨輸入分辨率,輸出分辨率=輸入分辨率)
舉例:
1) 設(shè)置SDI輸出口1分辨率模式為auto(輸出跟隨輸入)時(shí),指令發(fā)送
PC Send: 7B 7B BD 03 00 10 00 xx 7D 7D
格式:7B 7B BD 03 Addr Ctrl ResMode CS 7D 7D
Addr:目標(biāo)板卡地址(如果是主板和按鍵板,此位填0)
Ctrl: [bit7]: = 1,表示查詢輸入冗余
= 0,表示設(shè)置輸入冗余
[bit6~4]: = 100,表示目標(biāo)板卡為輸入板
= 011,表示目標(biāo)板卡為輸出板
= 010,表示目標(biāo)板卡為按鍵板
= 111,表示目標(biāo)板卡為主板
[bit3~0]:保留未使用,默認(rèn)寫0
ResMode: = 1,表示User模式(輸出分辨率可限定分辨率范圍內(nèi)自由設(shè)置)
= 0,表示Auto模式(輸出分辨率自動(dòng)跟隨輸入分辨率,輸出分辨率=輸入分辨率)
格式:7B 7B D7 03 Port Ctrl OutMode CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢輸出模式
= 0,表示設(shè)置輸出模式
[bit6]: = 1,表示端口為輸入板卡的端口
= 0,表示端口為輸出板卡的端口
[bit5]: = 1,表示輸入端工作模式
= 0,表示輸出端工作模式
[bit4~0]:保留未使用,默認(rèn)寫0
① 當(dāng)Ctrl = 0x40時(shí),表示輸入板卡輸入端無信號(hào)時(shí)輸出端工作模式,模式有三種
OutMode: = 0,輸出顯示無信號(hào)提示畫面
= 1,輸出黑屏
= 2,關(guān)閉輸出
② 當(dāng)Ctrl = 0x00時(shí),表示輸出板卡輸入端無信號(hào)時(shí)輸出端工作模式,模式有三種
OutMode: = 0,輸出黑屏
= 1,輸出藍(lán)屏
= 2,關(guān)閉輸出
格式:7B 7B D7 03 Port Ctrl OutMode CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢輸出模式
= 0,表示設(shè)置輸出模式
[bit6]: = 1,表示端口為輸入板卡的端口
= 0,表示端口為輸出板卡的端口
[bit5]: = 1,表示輸入端工作模式
= 0,表示輸出端工作模式
[bit4~0]:保留未使用,默認(rèn)寫0
① 當(dāng)Ctrl = 0x40時(shí),表示輸入板卡輸入端無信號(hào)時(shí)輸出端工作模式,模式有三種
OutMode: = 0,輸出顯示無信號(hào)提示畫面
= 1,輸出黑屏
= 2,關(guān)閉輸出
② 當(dāng)Ctrl = 0x00時(shí),表示輸出板卡輸入端無信號(hào)時(shí)輸出端工作模式,模式有三種
OutMode: = 0,輸出黑屏
= 1,輸出藍(lán)屏
= 2,關(guān)閉輸出
格式:7B 7B D8 03 Port Ctrl ModeOnOff/ModeSelect CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢輸出模式
= 0,表示設(shè)置輸出模式
[bit6]: = 1,表示端口為輸入板卡的端口
= 0,表示端口為輸出板卡的端口
[bit5~4]: 保留未使用,默認(rèn)寫0
[bit3~0]: = 0000,表示操作測(cè)試模式開關(guān), ModeOnOff/ModeSelect中選擇ModeOnOff
=
0001,表示操作測(cè)試模式選擇, ModeOnOff/ModeSelect中選擇ModeSelect
ModeOnOff([bit3~0]: = 0000): = 1,表示打開測(cè)試模式
= 0,表示關(guān)閉測(cè)試模式(默認(rèn)為關(guān)閉)
ModeSelect([bit3~0]: = 0001): 只有測(cè)試測(cè)試開關(guān)打開時(shí)才生效,表示測(cè)試圖選項(xiàng)
舉例:
EG1:設(shè)置輸出口2的測(cè)試模式打開,并顯示測(cè)試圖編號(hào)2
Send1:7B 7B D8 03 01 00 01 99 7D 7D(打開測(cè)試模式,打開時(shí)默認(rèn)是黑屏測(cè)試圖,編號(hào)0)
Recv1: 7B 7B D8 03 01 00 01 CS 7D 7D
Send2:7B 7B D8 03 01 01 02 99 7D 7D(設(shè)置測(cè)試圖為編號(hào)2的測(cè)試圖)
Recv2: 7B 7B D8 03 01 01 02 CS 7D 7D
EG2:設(shè)置輸出口2的測(cè)試模式關(guān)閉
Send1:7B 7B D8 03 01 00 00 99 7D 7D(關(guān)閉測(cè)試模式)
Recv1: 7B 7B D8 03 01 00 00 CS 7D 7D
格式:7B 7B D8 03 Port Ctrl ModeOnOff/ModeSelect CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢輸出模式
= 0,表示設(shè)置輸出模式
[bit6]: = 1,表示端口為輸入板卡的端口
= 0,表示端口為輸出板卡的端口
[bit5~4]: 保留未使用,默認(rèn)寫0
[bit3~0]: = 0000,表示操作測(cè)試模式開關(guān), ModeOnOff/ModeSelect中選擇ModeOnOff
=
0001,表示操作測(cè)試模式選擇, ModeOnOff/ModeSelect中選擇ModeSelect
ModeOnOff([bit3~0]: = 0000): = 1,表示打開測(cè)試模式
= 0,表示關(guān)閉測(cè)試模式(默認(rèn)為關(guān)閉)
ModeSelect([bit3~0]: = 0001): 只有測(cè)試測(cè)試開關(guān)打開時(shí)才生效,表示測(cè)試圖選項(xiàng)
格式:7B 7B 76 03 Port Ctrl OnOff CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢分辨率信息
= 0,表示設(shè)置分辨率信息
[bit6]: = 1,表示端口為輸入板卡的端口
= 0,表示端口為輸出板卡的端口
OnOff: = 1,表示打開debug模式
= 0,表示關(guān)閉debug模式
格式:7B 7B 76 03 Port Ctrl OnOff CS 7D 7D
Port:端口號(hào)
Ctrl: [bit7]: = 1,表示查詢分辨率信息
= 0,表示設(shè)置分辨率信息
[bit6]: = 1,表示端口為輸入板卡的端口
= 0,表示端口為輸出板卡的端口
OnOff: = 1,表示打開debug模式
= 0,表示關(guān)閉debug模式
格式:
7B 7B FE VaildLen BoardSel Port AllPackH AllPackL CurPackH CurPackL UpdateDataS CS 7D 7D
VaildLen:大小為6+ UpdateDataS所表示的一串?dāng)?shù)據(jù)的長(zhǎng)度,VaildLen最大為(6+128) = 0x86
BoardSel: = 0,表示操作的是主板
= 1,表示操作的是按鍵板
= 2,表示操作的是輸出板
= 3,表示操作的是輸入板(V56板卡不支持)
Port:當(dāng)BoardSel = 2或BoardSel = 3時(shí),分別表示輸出端口號(hào)或輸入端口號(hào),其它情況填0
AllPackH:傳輸總包數(shù)的高8位, 傳輸總包數(shù)高低8位計(jì)算可得總包數(shù)
AllPackL:傳輸總包數(shù)的低8位, 傳輸總包數(shù)高低8位計(jì)算可得總包數(shù)
CurPackH:當(dāng)前傳輸包數(shù)序號(hào)高8位,當(dāng)前傳輸包數(shù)序號(hào)高低8位計(jì)算可得當(dāng)前傳輸包數(shù)序號(hào)
CurPackL:當(dāng)前傳輸包數(shù)序號(hào)低8位,當(dāng)前傳輸包數(shù)序號(hào)高低8位計(jì)算可得當(dāng)前傳輸包數(shù)序號(hào)
UpdateDataS:表示整個(gè)程序中的拆分?jǐn)?shù)據(jù),最大為128字節(jié)組成,每次傳輸128字節(jié),最后一個(gè)傳輸包不滿128字節(jié)時(shí), UpdateDataS就由剩下字節(jié)組成結(jié)束傳輸
格式:
7B 7B FE 06 BoardSel Port AllPackH AllPackL CurPackH CurPackL CS 7D 7D
BoardSel: = 0,表示操作的是主板
= 1,表示操作的是按鍵板
= 2,表示操作的是輸出板
= 3,表示操作的是輸入板(V56板卡不支持)
Port:當(dāng)BoardSel = 2或BoardSel = 3時(shí),分別表示輸出端口號(hào)或輸入端口號(hào),其它情況填0
AllPackH:傳輸總包數(shù)的高8位, 傳輸總包數(shù)高低8位計(jì)算可得總包數(shù)
AllPackL:傳輸總包數(shù)的低8位, 傳輸總包數(shù)高低8位計(jì)算可得總包數(shù)
CurPackH:當(dāng)前傳輸包數(shù)序號(hào)高8位,當(dāng)前傳輸包數(shù)序號(hào)高低8位計(jì)算可得當(dāng)前傳輸包數(shù)序號(hào)
CurPackL:當(dāng)前傳輸包數(shù)序號(hào)低8位,當(dāng)前傳輸包數(shù)序號(hào)高低8位計(jì)算可得當(dāng)前傳輸包數(shù)序號(hào)