public AI_Channels(ref AgilentU254x Driver) { _pulseBit = new DigitalBit(new DigitalChannel(DigitalChannelsEnum.DIOD, ref Driver), 0); _setResetBit = new DigitalBit(new DigitalChannel(DigitalChannelsEnum.DIOD, ref Driver), 1); _selector_A0 = new DigitalBit(new DigitalChannel(DigitalChannelsEnum.DIOB, ref Driver), 0); _selector_A1 = new DigitalBit(new DigitalChannel(DigitalChannelsEnum.DIOB, ref Driver), 1); _channelModeSwitch = new ChannelModeSwitch(_pulseBit, _setResetBit, _selector_A0, _selector_A1); _filter = new Filter(new DigitalChannel(DigitalChannelsEnum.DIOA, ref Driver)); HOLD_CS = new DigitalBit(new DigitalChannel(DigitalChannelsEnum.DIOC, ref Driver), 2); HOLD_CS.Reset(); _gainAmplifier = new ProgrammableGainAmplifier(new DigitalChannel(DigitalChannelsEnum.DIOC, ref Driver)); _latch = new AnalogInLatch( _selector_A0, _selector_A1, new DigitalBit(new DigitalChannel(DigitalChannelsEnum.DIOD, ref Driver), 2)); _channels = new AI_Channel[4] { new AI_Channel(AnalogInChannelsEnum.AIn1, ref Driver, _channelModeSwitch, _filter, _gainAmplifier, _latch), new AI_Channel(AnalogInChannelsEnum.AIn2, ref Driver, _channelModeSwitch, _filter, _gainAmplifier, _latch), new AI_Channel(AnalogInChannelsEnum.AIn3, ref Driver, _channelModeSwitch, _filter, _gainAmplifier, _latch), new AI_Channel(AnalogInChannelsEnum.AIn4, ref Driver, _channelModeSwitch, _filter, _gainAmplifier, _latch) }; }
private void _Set_Enabled(bool Enabled) { _driver.AnalogOut.set_Enabled(_channelName, Enabled); if (Enabled) { _Enable.Set(); } else { _Enable.Reset(); } }
private void _Set_ActiveChennel(BOX_AnalogOutChannelsEnum Channel) { switch (Channel) { case BOX_AnalogOutChannelsEnum.BOX_AOut_01: { _Selector_A0.Reset(); _Selector_A1.Reset(); _Selector_A2.Reset(); } break; case BOX_AnalogOutChannelsEnum.BOX_AOut_02: { _Selector_A0.Set(); _Selector_A1.Reset(); _Selector_A2.Reset(); } break; case BOX_AnalogOutChannelsEnum.BOX_AOut_03: { _Selector_A0.Reset(); _Selector_A1.Set(); _Selector_A2.Reset(); } break; case BOX_AnalogOutChannelsEnum.BOX_AOut_04: { _Selector_A0.Set(); _Selector_A1.Set(); _Selector_A2.Reset(); } break; case BOX_AnalogOutChannelsEnum.BOX_AOut_05: { _Selector_A0.Reset(); _Selector_A1.Reset(); _Selector_A2.Set(); } break; case BOX_AnalogOutChannelsEnum.BOX_AOut_06: { _Selector_A0.Set(); _Selector_A1.Reset(); _Selector_A2.Set(); } break; case BOX_AnalogOutChannelsEnum.BOX_AOut_07: { _Selector_A0.Reset(); _Selector_A1.Set(); _Selector_A2.Set(); } break; case BOX_AnalogOutChannelsEnum.BOX_AOut_08: { _Selector_A0.Set(); _Selector_A1.Set(); _Selector_A2.Set(); } break; case BOX_AnalogOutChannelsEnum.BOX_AOut_09: { _Selector_A0.Reset(); _Selector_A1.Reset(); _Selector_A2.Reset(); } break; case BOX_AnalogOutChannelsEnum.BOX_AOut_10: { _Selector_A0.Set(); _Selector_A1.Reset(); _Selector_A2.Reset(); } break; case BOX_AnalogOutChannelsEnum.BOX_AOut_11: { _Selector_A0.Reset(); _Selector_A1.Set(); _Selector_A2.Reset(); } break; case BOX_AnalogOutChannelsEnum.BOX_AOut_12: { _Selector_A0.Set(); _Selector_A1.Set(); _Selector_A2.Reset(); } break; case BOX_AnalogOutChannelsEnum.BOX_AOut_13: { _Selector_A0.Reset(); _Selector_A1.Set(); _Selector_A2.Set(); } break; case BOX_AnalogOutChannelsEnum.BOX_AOut_14: { _Selector_A0.Set(); _Selector_A1.Set(); _Selector_A2.Set(); } break; case BOX_AnalogOutChannelsEnum.BOX_AOut_15: { _Selector_A0.Set(); _Selector_A1.Reset(); _Selector_A2.Set(); } break; case BOX_AnalogOutChannelsEnum.BOX_AOut_16: { _Selector_A0.Reset(); _Selector_A1.Reset(); _Selector_A2.Set(); } break; case BOX_AnalogOutChannelsEnum.NotSet: { } break; default: throw new ArgumentException(); } }