internal MAIMeasurementChannelCT CreateTmpMeaschan() { switch (Mode) { case CounterMode.IMPULSECOUNTER: m_measchan = Channel.CreateImpulseCounter(PresetValue, UpOrDown, Edge, ADSync); m_MeasurementType = "Impulse"; break; case CounterMode.FREQUENCYCOUNTER: m_measchan = Channel.CreateFrequencyCounter(Edge, FCResolution, ADSync); m_MeasurementType = "Frequency"; break; case CounterMode.PULSEWIDTHCOUNTER: m_measchan = Channel.CreatePulswidthCounter(Edge, Resolution, ADSync); m_MeasurementType = "Pulsewidth"; break; case CounterMode.PERIODCOUNTER: m_measchan = Channel.CreatePeriodCounter(Edge, Resolution, ADSync); m_MeasurementType = "Period"; break; case CounterMode.UPDOWNCOUNTER: m_measchan = Channel.CreateUpDownCounter(PresetValue, UpOrDown, Edge, SoftwareReset, ADSync); m_MeasurementType = "UpDown"; break; case CounterMode.INCREMENTALCOUNTER: m_measchan = Channel.CreateIncrementalCounter(Edge, SoftwareReset, HWResetMode, HWResetEdge, InterpolationMode, ADSync); m_MeasurementType = "Incremental"; break; case CounterMode.INCEEXTTIMESTAMP: m_measchan = Channel.CreateIncrementalExtensionTimestamp(IncTimestampResolution); m_MeasurementType = "IncrementalExtensionTimestamp"; break; case CounterMode.INCEEXTFLOWRATE: m_measchan = Channel.CreateIncrementalExtensionFlowRate(IncTimestampResolution); m_MeasurementType = "IncrementalExtensionFlowRate"; break; } return(m_measchan); }
internal MAIMeasurementChannelCT CreateTmpMeaschan() { switch (Mode) { case CounterMode.IMPULSECOUNTER: m_measchan = Channel.CreateImpulseCounter(PresetValue, UpOrDown, Edge, ADSync); m_MeasurementType = "Impulse"; break; case CounterMode.FREQUENCYCOUNTER: m_measchan = Channel.CreateFrequencyCounter(Edge, FCResolution, ADSync); m_MeasurementType = "Frequency"; break; case CounterMode.PULSEWIDTHCOUNTER: m_measchan = Channel.CreatePulswidthCounter(Edge, Resolution, ADSync); m_MeasurementType = "Pulsewidth"; break; case CounterMode.PERIODCOUNTER: m_measchan = Channel.CreatePeriodCounter(Edge, Resolution, ADSync); m_MeasurementType = "Period"; break; case CounterMode.UPDOWNCOUNTER: m_measchan = Channel.CreateUpDownCounter(PresetValue, UpOrDown, Edge, SoftwareReset, ADSync); m_MeasurementType = "UpDown"; break; case CounterMode.INCREMENTALCOUNTER: m_measchan = Channel.CreateIncrementalCounter(Edge, SoftwareReset, HWResetMode, HWResetEdge, InterpolationMode, ADSync); m_MeasurementType = "Incremental"; break; case CounterMode.INCEEXTTIMESTAMP: m_measchan = Channel.CreateIncrementalExtensionTimestamp(IncTimestampResolution); m_MeasurementType = "IncrementalExtensionTimestamp"; break; case CounterMode.INCEEXTFLOWRATE: m_measchan = Channel.CreateIncrementalExtensionFlowRate(IncTimestampResolution); m_MeasurementType = "IncrementalExtensionFlowRate"; break; } return m_measchan; }
private void ConfigAndStartMeas() { if (checkBoxAD0.Checked) { MAIMeasurementChannelAD c = m_maiDevice.ADChannels[0].CreateMeasurementChannel(OversamplingMode.Disabled, GainFactor.Disabled, true); c.Name = "AD0"; } if (checkBoxAD1.Checked) { MAIMeasurementChannelAD c = m_maiDevice.ADChannels[1].CreateMeasurementChannel(OversamplingMode.Disabled, GainFactor.Disabled, true); c.Name = "AD1"; } if (checkBoxAD2.Checked) { MAIMeasurementChannelAD c = m_maiDevice.ADChannels[2].CreateMeasurementChannel(OversamplingMode.Disabled, GainFactor.Disabled, true); c.Name = "AD2"; } if (checkBoxAD3.Checked) { MAIMeasurementChannelAD c = m_maiDevice.ADChannels[3].CreateMeasurementChannel(OversamplingMode.Disabled, GainFactor.Disabled, true); c.Name = "AD3"; } if (checkBoxCT0.Checked) { MAIMeasurementChannelCT c = m_maiDevice.CTChannels[0].CreatePeriodCounter(m_ct0SignalEdge, m_ct0Resolution, true); } if (checkBoxCT1.Checked) { MAIMeasurementChannelCT c = m_maiDevice.CTChannels[1].CreatePeriodCounter(m_ct1SignalEdge, m_ct1Resolution, true); } if (!checkBoxLoopBack.Checked) { if (checkBoxDA0.Checked) { if (m_Out0Buffer == null) { m_Out0Buffer = FormChooseOutputWave.CalcuateSinePeriod(Convert.ToDouble(comboBoxOutputRate.Text), (double)m_Out0SineFreq, (double)m_Out0SineAmplitude); } MAIMeasurementChannelDA c = m_maiDevice.DAChannels[0].CreateAutomaticOutputChannel(m_Out0Buffer); } if (checkBoxDA1.Checked) { if (m_Out1Buffer == null) { m_Out1Buffer = FormChooseOutputWave.CalcuateSinePeriod(Convert.ToDouble(comboBoxOutputRate.Text), (double)m_Out1SineFreq, (double)m_Out1SineAmplitude); } MAIMeasurementChannelDA c = m_maiDevice.DAChannels[1].CreateAutomaticOutputChannel(m_Out1Buffer); } } double sr = (double)Convert.ToUInt32(comboBoxSamplerate.Text); m_maiDevice.ADChannels.SetSampleRate(sr); m_maiDevice.ADChannels.DataSink.Target = m_dsTarget; m_maiDevice.ConfigMeasure(); if (m_maiDevice.DAChannels.MeasurementChannelsCount > 0) { m_maiDevice.DAChannels.SetMeasurementBufferNotificationLevel(1); m_maiDevice.DAChannels.StartNotificationThread(); m_maiDevice.DAChannels.StartOutput(); } m_maiDevice.ADChannels.DataSink.Enable(DateTime.Now); // Datasink starten SetUpPrevPresets(); m_maiDevice.StartMeasure(); }