59 lines
1.6 KiB
Java
59 lines
1.6 KiB
Java
package com.cbsd.client.parse;
|
||
|
||
import com.cbsd.client.parse.IParseDataInterface;
|
||
|
||
public class Parse_a0642d4e2da0458b9a5dbbe0d45d448a implements IParseDataInterface {
|
||
|
||
/**
|
||
* 从数据解析物理值
|
||
*
|
||
* @param sn 当前字段序号
|
||
* @param sourceData 源数据
|
||
* @param fieldData 当前字段数据
|
||
* @param endian BIG:大端序 LITTLE:小端序
|
||
* @param binStr 二进制字符串
|
||
* @return 解析后的数据值
|
||
*/
|
||
@Override
|
||
public String parsePhysicalFromData(int sn, byte[] sourceData, byte[] fieldData, String endian, String binStr) {
|
||
// 低2bit控制星间速率,高2bit控制星地速率
|
||
String high2Bit = binStr.substring(0, 2);
|
||
String low2Bit = binStr.substring(2, 4);
|
||
|
||
String starGroundRate = "";
|
||
String interStarRate = "";
|
||
|
||
// 解析星地速率(高2bit)
|
||
switch (high2Bit) {
|
||
case "01":
|
||
starGroundRate = "星地速率:256Kbps";
|
||
break;
|
||
case "10":
|
||
starGroundRate = "星地速率:1Mbps";
|
||
break;
|
||
}
|
||
|
||
// 解析星间速率(低2bit)
|
||
switch (low2Bit) {
|
||
case "01":
|
||
interStarRate = "星间速率:4.096Kbps";
|
||
break;
|
||
case "10":
|
||
interStarRate = "星间速率:20.48Kbps";
|
||
break;
|
||
}
|
||
|
||
return starGroundRate + ";" + interStarRate;
|
||
}
|
||
|
||
/**
|
||
* 描述
|
||
*
|
||
* @return 描述内容
|
||
*/
|
||
@Override
|
||
public String comment() {
|
||
return "信息速率";
|
||
}
|
||
}
|