private List <SignalPath> GetAllSignalPathData() { var signalPaths = new List <SignalPath>(); Log.log.Info("Start The Calibration."); VNA.SetMarkerActive(); VNA.SetMarkerX(Matrix.Frequency * 1000000); //关闭Vertex所有通道,后面用哪个打开哪个 foreach (var v in Vertexs) { v.CloseAllChannel(v.APortNum, v.BPortNum); } //for (int c = 1; c <= vertex.BPortNum; c++) //{ for (int b = 1; b <= Matrix.BPortConnectNum; b++) { //下行 var vertexID = (b - 1) / Vertexs[0].APortConnectNum; var inPortID = (b - 1) % Vertexs[0].APortConnectNum + 1; var outPortID = 1; Vertexs[vertexID].OpenChannel(inPortID, outPortID, UpDown.DOWN); if (Log.log.IsInfoEnabled) { Log.log.InfoFormat("第{0}台Vertex响应。打开通道{1}{2},方向{3}。", vertexID, inPortID, outPortID, UpDown.DOWN); } for (int a = 1; a <= Matrix.APortConnectNum; a++) { var calBoxAPortID = a; var calBoxBPortID = ((b - 1) / Vertexs[0].APortConnectNum) * Vertexs[0].BPortConnectNum + 1; SwitchAdapter.DoSwitch(calBoxAPortID, calBoxBPortID); //_calBoxToMatrix.Set64B16Switch(calBoxAPortID, calBoxBPortID, 1, 1); //_calBoxToMatrix.SetSwitch(calBoxAPortID); //_calBoxToVertex.SetSwitch(calBoxBPortID); if (Log.log.IsInfoEnabled) { Log.log.InfoFormat("衰减校准阶段切开关 {0}{1} OK。", calBoxAPortID, calBoxBPortID); } var signalPath = new SignalPath(SwitchAdapter.CalBoxData, Matrix.PhaseStepShiftDirection) { APortID = a, BPortID = b, CPortID = 1, Attenuation = VNA.GetMarkerY(VNA.AttMarkPoint), }; signalPaths.Add(signalPath); } Vertexs[vertexID].CloseChannel(inPortID, outPortID, UpDown.DOWN); if (Log.log.IsInfoEnabled) { Log.log.InfoFormat("第{0}台Vertex响应。关闭通道{1}{2},方向{3}。", vertexID, inPortID, outPortID, UpDown.DOWN); } } return(signalPaths); }