Beispiel #1
0
        private void ApplyAutomaticLOConfiguration(NIRfsg rfsg, RFmxInstrMX instr)
        {
            SG.InstrumentConfiguration sgConfig = SG.InstrumentConfiguration.GetDefault(rfsg);
            SG.ConfigureInstrument(rfsg, sgConfig);

            RFmxInstr.InstrumentConfiguration instrConfig = RFmxInstr.InstrumentConfiguration.GetDefault();
            RFmxInstr.ConfigureInstrument(instr, instrConfig);
        }
Beispiel #2
0
        private void ApplyNoLOSharingConfiguration(NIRfsg rfsg, RFmxInstrMX instr)
        {
            SG.InstrumentConfiguration sgConfig = SG.InstrumentConfiguration.GetDefault(rfsg);
            sgConfig.LOSharingMode = LocalOscillatorSharingMode.None;
            SG.ConfigureInstrument(rfsg, sgConfig);

            RFmxInstr.InstrumentConfiguration instrConfig = RFmxInstr.InstrumentConfiguration.GetDefault();
            instrConfig.LOSharingMode = LocalOscillatorSharingMode.None;
            RFmxInstr.ConfigureInstrument(instr, instrConfig);
        }
Beispiel #3
0
        public override Task <Empty> ConfigureInstrument(RfsgServiceInstrumentConfiguration request, ServerCallContext context)
        {
            var rfsg        = sessionMap[(IntPtr)request.Session.Handle];
            var instrConfig = new SG.InstrumentConfiguration()
            {
                CarrierFrequency_Hz      = request.CarrierFrequencyHz,
                DutAverageInputPower_dBm = request.DutAverageInputPowerDBm,
                ExternalAttenuation_dB   = request.ExternalAttenuationDB,
                ReferenceClockSource     = request.ReferenceClockSource,
                SelectedPorts            = request.SelectedPorts,
                LOSharingMode            = (LocalOscillatorSharingMode)request.LOSharingMode
            };

            SG.ConfigureInstrument(rfsg, instrConfig);
            return(Task.FromResult(new Empty()));
        }