网络通讯协议
服务器端:ARM
客户端:PC
IP地址:192.168.1.120
端口号:8088
通讯方式:TCP
1.协议格式
发送命令格式:(由PC机发入ARM)
FLAG1 双字节帧头,为十六进制的7E7E。
LEN 单字节,从ADR到SUM的字节数(含ADR和SUM)。
ADR 单字节地址(FF为通用地址)。
COMND 单字节,命令字节。
DATA 数据字节,长度不定。
SUM 单字节校验和,SUM=FLAG1+LEN+ADR+COMND+DATA。
应答命令格式:(ARM应答PC机命令)
FLAG2 双字节帧头,为十六进制的E7E7。
LEN 单字节,从ADR到SUM的字节数(含ADR和SUM)。
ADR 单字节地址(FF为通用地址)。
RESP 单字节,应答字节。接收命令无误时同命令字节,命令错误时为FF。DATA 数据字节,长度不定。
SUM 单字节校验和,SUM=FLAG2+LEN+ADR+RESP+DATA。
其中:
2. 详细命令格式 a) 读取全部参数 命令字:0x00 命令帧格式:
FLAG1
0x03
0xFF
0x00
SUM
应答:
测试数据: PC: 7e 7e 03 ff 00 fe
ARM: e7 e7 25 ff 00 01 02 03 04 05 06 07 07 08 09 5a 0a 5b 0b 5c 0c 5d 0d 5e 0e 5f 0f 50 10 51 11 52 12 53 13 54 14 55 15 fa
b)
读取序列号
命令字:0x01 命令帧格式:
FLAG2 0x39 0xFF 0x00 SN1 SN2 SN3 ALM1 ALM2 ALM3 TEMP Op_Mode Op_Para Pin Pout
Pin_th
Pout_
th
P1_lop
P1_Power
P1_Tchip
P1_co
oler
P2_lop
P2_Po
wer
P2_Tc
hip
P2_co
oler
预留
预留
预留 预留 预留 预留 预留
预留
预留
预留
SUM
应答:
EDFA的序列号= SN1*65536 +SN2*256+SN3 测试数据:
PC: 7e 7e 03 ff 01 ff
ARM: e7 e7 06 ff 01 01 02 03 da
c)读取告警字节
命令字:0x02
命令帧格式:
应答:
ALM1:
ALM2:
ALM3:预留
测试数据:
PC: 7e 7e 03 ff 02 00
ARM:e7 e7 06 ff 02 01 02 03 db
d)读取模块温度:
命令字:0x03
命令帧格式:
应答:
模块温度(℃)= TEMP/10 注:模块温度为有符号数。测试数据:
PC: 7e 7e 03 ff 03 01 ARM: e7 e7 05 ff 03 01 02 d8
e)读取泵浦数目:命令字:0x10
命令帧格式:
应答:
泵浦数目NUM = 1 单泵
NUM = 2 双泵测试数据:
PC: 7e 7e 03 ff 10 0e ARM: e7 e7 04 ff 10 02 e3
f)读取泵浦1参数:
命令字:0x11
命令帧格式:
应答:
泵浦1工作电流(mA)= P1_Iop/10
泵浦1泵浦功率(mW) = P1_Power/10
泵浦1管芯温度(℃)= P1_Tchip/10
泵浦1制冷电流(mA)=P1_Cooler/10 - 3000 测试数据:
PC: 7e 7e 03 ff 11 0f
ARM: e7 e7 0b ff 11 01 02 03 04 05 06 07 08 0d
g)读取泵浦2参数:
命令字:0x12
命令帧格式:
应答:
泵浦2工作电流(mA)= P2_Iop/10
泵浦2泵浦功率(mW) = P2_Power/10
泵浦2管芯温度(℃)= P2_Tchip/10
泵浦2制冷电流(mA)=P2_Cooler/10 – 3000 当模块无泵浦2的时候,全部返回为0。
测试数据:
PC: 7e 7e 03 ff 12 10
ARM: e7 e7 0b ff 12 01 02 03 04 05 06 07 08 0e
h) 读取光功率:
命令字:0x20 命令帧格式:
应答:
输入光功率(dbm ) = Pin/10-70 输出光功率(dbm )
= Pout/10-70
输入光功率门限(dbm ) = Pin_th/10-70 输出光功率门限(dbm ) =Pout_th/10-70 测试数据: PC: 7e 7e 03 ff 20 1e
ARM: e7 e7 0b ff 20 01 02 03 04 05 06 07 08 1c
i) 读取工作方式: 命令字:0x30 命令帧格式:
应答:
Op_
Mode :工作模式:0x00-APC 方式; 0x02-ACC 方式
Op_Para : 0x00(ACC 方式)
读取Power 值(APC 方式);Power(dBm) = Op_Para