private string ParsePara(byte[] myReadBuffer) { BSSParameter p = new BSSParameter(); byte[] b = new byte[56]; Buffer.BlockCopy(myReadBuffer, 8, b, 0, 56); if (p.Parse(b)) { StringBuilder sb = new StringBuilder(); sb.AppendLine("设备序列号:" + p.DeviceID); sb.AppendLine("左舷发射中心频率:" + p.PortCentralFq); sb.AppendLine("右舷发射中心频率:" + p.StarBoardCentralFq); sb.AppendLine("脉冲长度:" + p.Ls); sb.AppendLine("左舷发射信号带宽:" + p.PortBandWidth); sb.AppendLine("右舷发射信号带宽:" + p.StarBoardBandWidth); sb.AppendLine("接收延时:" + p.RcvDelay); sb.AppendLine("探测距离:" + p.Range); sb.AppendLine("工作周期:" + p.Period); sb.AppendLine("AD数据采样率:" + p.ADSamples); sb.AppendLine("控制标识:" + p.Flag); sb.AppendLine("TVG延时:" + p.TVGDelay); sb.AppendLine("TVG更新速率:" + p.TVGReRate); sb.AppendLine("TVG比例因子:" + p.TvgBeta); sb.AppendLine("TVG吸收衰减:" + p.TvgAlpha); sb.AppendLine("TVG起始增益:" + p.TvgG); sb.AppendLine("命令标识:" + p.Com); sb.AppendLine("返回数据类型标识:" + p.RetID); sb.AppendLine("固定TVG:" + p.FixedTVG); return(sb.ToString()); } else { return(@"参数解析不正确"); } }
public bool Parse(byte[] dataBytes) { try { byte[] b = new byte[56]; byte[] d = new byte[dataBytes.Length - 56]; Buffer.BlockCopy(dataBytes, 0, b, 0, 56); Buffer.BlockCopy(dataBytes, 56, d, 0, dataBytes.Length - 56); if (Parameter.Parse(b) == false) { return(false); } if (Data.Parse(d) == false) { return(false); } return(true); } catch (Exception) { return(false); } }
private string ParsePara(byte[] myReadBuffer) { BSSParameter p =new BSSParameter(); byte[] b = new byte[56]; Buffer.BlockCopy(myReadBuffer,8,b,0,56); if (p.Parse(b)) { StringBuilder sb = new StringBuilder(); sb.AppendLine("设备序列号:"+p.DeviceID); sb.AppendLine("左舷发射中心频率:" + p.PortCentralFq); sb.AppendLine("右舷发射中心频率:" + p.StarBoardCentralFq); sb.AppendLine("脉冲长度:" + p.Ls); sb.AppendLine("左舷发射信号带宽:" + p.PortBandWidth); sb.AppendLine("右舷发射信号带宽:" + p.StarBoardBandWidth); sb.AppendLine("接收延时:" + p.RcvDelay); sb.AppendLine("探测距离:" + p.Range); sb.AppendLine("工作周期:" + p.Period); sb.AppendLine("AD数据采样率:" + p.ADSamples); sb.AppendLine("控制标识:" + p.Flag); sb.AppendLine("TVG延时:" + p.TVGDelay); sb.AppendLine("TVG更新速率:" + p.TVGReRate); sb.AppendLine("TVG比例因子:" + p.TvgBeta); sb.AppendLine("TVG吸收衰减:" + p.TvgAlpha); sb.AppendLine("TVG起始增益:" + p.TvgG); sb.AppendLine("命令标识:" + p.Com); sb.AppendLine("返回数据类型标识:" + p.RetID); sb.AppendLine("固定TVG:" + p.FixedTVG); return sb.ToString(); } else { return @"参数解析不正确"; } }