Esempio n. 1
0
        public void SetSyncOutputTriggering(ControlModule ctrlParameter)
        {
            IKtM941x VXT = VXT2;

            VXT.Source.Triggers.SynchronizationOutputTrigger.Type        = Keysight.KtM941x.SynchronizationTriggerType.PerArb;
            VXT.Source.Triggers.SynchronizationOutputTrigger.DataMarker  = Keysight.KtM941x.Marker.Marker1;
            VXT.Source.Triggers.SynchronizationOutputTrigger.Enabled     = true;
            VXT.Source.Triggers.SynchronizationOutputTrigger.PulseWidth  = 10e-6;
            VXT.Source.Triggers.SynchronizationOutputTrigger.Mode        = Keysight.KtM941x.TriggerMode.Level;
            VXT.Source.Triggers.SynchronizationOutputTrigger.Polarity    = Keysight.KtM941x.TriggerPolarity.Positive;
            VXT.Source.Triggers.SynchronizationOutputTrigger.Destination = ctrlParameter.SyncOutputTrg;// Keysight.KtM941x.Trigger.InternalTrigger;

            VXT.Source.Triggers.SynchronizationOutputTrigger2.Type        = Keysight.KtM941x.SynchronizationTriggerType.PerArb;
            VXT.Source.Triggers.SynchronizationOutputTrigger2.DataMarker  = Keysight.KtM941x.Marker.Marker1;
            VXT.Source.Triggers.SynchronizationOutputTrigger2.Enabled     = true;
            VXT.Source.Triggers.SynchronizationOutputTrigger2.PulseWidth  = 10e-6;
            VXT.Source.Triggers.SynchronizationOutputTrigger2.Mode        = Keysight.KtM941x.TriggerMode.Level;
            VXT.Source.Triggers.SynchronizationOutputTrigger2.Polarity    = Keysight.KtM941x.TriggerPolarity.Positive;
            VXT.Source.Triggers.SynchronizationOutputTrigger2.Destination = ctrlParameter.SyncOutputTrg2;// Keysight.KtM941x.Trigger.FrontPanelTrigger1;

            VXT.Source.Triggers.SynchronizationOutputTrigger3.Type        = Keysight.KtM941x.SynchronizationTriggerType.PerArb;
            VXT.Source.Triggers.SynchronizationOutputTrigger3.DataMarker  = Keysight.KtM941x.Marker.Marker1;
            VXT.Source.Triggers.SynchronizationOutputTrigger3.Enabled     = true;
            VXT.Source.Triggers.SynchronizationOutputTrigger3.PulseWidth  = 10e-6;
            VXT.Source.Triggers.SynchronizationOutputTrigger3.Mode        = Keysight.KtM941x.TriggerMode.Level;
            VXT.Source.Triggers.SynchronizationOutputTrigger3.Polarity    = Keysight.KtM941x.TriggerPolarity.Positive;
            VXT.Source.Triggers.SynchronizationOutputTrigger3.Destination = ctrlParameter.SyncOutputTrg3;// Keysight.KtM941x.Trigger.PXITrigger1;


            VXT.Source.Triggers.ExternalTrigger.Enabled = ctrlParameter.SourceExtlTrigEnabled;// true;// chkVXTExternalTrigger.Checked ? StartEvent.ExternalTrigger : StartEvent.Immediate;
            VXT.Source.Triggers.ExternalTrigger.Source  = ctrlParameter.SourceExtTrig;

            VXT.Source.Modulation.StartPlaybackOn10MHzClock = true;
            VXT.Apply();
        }
Esempio n. 2
0
        public void InitializeVXT2(ControlModule ctrlParameter)
        {
            try
            {
                options = "QueryInstrStatus = true, Simulate = false, DriverSetup=UseFileSystemBackingStore=0,AppStart=" + (ctrlParameter.RunXapp.ToString().ToLower());// "QueryInstrStatus=true, Simulate=false, DriverSetup= DisableLoadCorrection=true,ModuleDiagnostics=true,ShareAllVisaSessions=true";
                //options = "QueryInstrStatus = true, Simulate = false, DriverSetup=AppStart=" + (ctrlParameter.RunXapp.ToString().ToLower() );// "QueryInstrStatus=true, Simulate=false, DriverSetup= DisableLoadCorrection=true,ModuleDiagnostics=true,ShareAllVisaSessions=true";
                Log(options);
                VXT2 = new KtM941x(ctrlParameter.VXTVISAAddress, true, true, options);
                VXT2.Source.Triggers.ExternalTrigger.Delay = 0;
                VXT2.Source.RF.Level           = 0;
                VXT2.Source.RF.Frequency       = ctrlParameter.FrequencyInMhz * 1e6;
                VXT2.Source.Modulation.Enabled = true;
                //VXT.Source.Modulation.IQ.ArbEnabled = true;
                VXT2.Source.RF.OutputEnabled = true;
                VXT2.Apply();

                IKtM941x VXT = VXT2;
                VXT.Source.Triggers.SynchronizationOutputTrigger.Type        = Keysight.KtM941x.SynchronizationTriggerType.PerArb;
                VXT.Source.Triggers.SynchronizationOutputTrigger.DataMarker  = Keysight.KtM941x.Marker.Marker1;
                VXT.Source.Triggers.SynchronizationOutputTrigger.Enabled     = true;
                VXT.Source.Triggers.SynchronizationOutputTrigger.PulseWidth  = 10e-6;
                VXT.Source.Triggers.SynchronizationOutputTrigger.Mode        = Keysight.KtM941x.TriggerMode.Level;
                VXT.Source.Triggers.SynchronizationOutputTrigger.Polarity    = Keysight.KtM941x.TriggerPolarity.Positive;
                VXT.Source.Triggers.SynchronizationOutputTrigger.Destination = ctrlParameter.SyncOutputTrg;// Keysight.KtM941x.Trigger.InternalTrigger;

                VXT.Source.Triggers.SynchronizationOutputTrigger2.Type        = Keysight.KtM941x.SynchronizationTriggerType.PerArb;
                VXT.Source.Triggers.SynchronizationOutputTrigger2.DataMarker  = Keysight.KtM941x.Marker.Marker1;
                VXT.Source.Triggers.SynchronizationOutputTrigger2.Enabled     = true;
                VXT.Source.Triggers.SynchronizationOutputTrigger2.PulseWidth  = 10e-6;
                VXT.Source.Triggers.SynchronizationOutputTrigger2.Mode        = Keysight.KtM941x.TriggerMode.Level;
                VXT.Source.Triggers.SynchronizationOutputTrigger2.Polarity    = Keysight.KtM941x.TriggerPolarity.Positive;
                VXT.Source.Triggers.SynchronizationOutputTrigger2.Destination = ctrlParameter.SyncOutputTrg2;// Keysight.KtM941x.Trigger.FrontPanelTrigger1;

                VXT.Source.Triggers.SynchronizationOutputTrigger3.Type        = Keysight.KtM941x.SynchronizationTriggerType.PerArb;
                VXT.Source.Triggers.SynchronizationOutputTrigger3.DataMarker  = Keysight.KtM941x.Marker.Marker1;
                VXT.Source.Triggers.SynchronizationOutputTrigger3.Enabled     = true;
                VXT.Source.Triggers.SynchronizationOutputTrigger3.PulseWidth  = 10e-6;
                VXT.Source.Triggers.SynchronizationOutputTrigger3.Mode        = Keysight.KtM941x.TriggerMode.Level;
                VXT.Source.Triggers.SynchronizationOutputTrigger3.Polarity    = Keysight.KtM941x.TriggerPolarity.Positive;
                VXT.Source.Triggers.SynchronizationOutputTrigger3.Destination = ctrlParameter.SyncOutputTrg3;// Keysight.KtM941x.Trigger.PXITrigger1;


                VXT.Source.Triggers.ExternalTrigger.Enabled = ctrlParameter.SourceExtlTrigEnabled;// true;// chkVXTExternalTrigger.Checked ? StartEvent.ExternalTrigger : StartEvent.Immediate;
                VXT.Source.Triggers.ExternalTrigger.Source  = ctrlParameter.SourceExtTrig;

                VXT.Source.Modulation.StartPlaybackOn10MHzClock = true;

                // Added for ET
                VXT2.Service.SetValue("Source;UseSourceDspTrigger", "true");

                VXT.Apply();
                //Set PXI0 as input trigger for external triggering of RF output
                //NOTE: this code is moved here to try to solve the conflict w HVI trigger class
                //VXT2.Source.Triggers.ExternalTrigger.Source = Trigger.PXITrigger0;
                //VXT2.Source.Triggers.ExternalTrigger.Enabled = true; //chkVXTExternalTrigger.Checked;
                Log("VXT2 Initialize Done!");
            }
            catch (Exception ex)
            {
                Log(ex.Message);
                throw ex;
            }
        }