public AO_Channel(AnalogOutChannelsEnum Channel, AgilentU254xClass Driver) { switch (Channel) { case AnalogOutChannelsEnum.AOut1: _channelName = ChannelNamesEnum.AOUT1; break; case AnalogOutChannelsEnum.AOut2: _channelName = ChannelNamesEnum.AOUT2; break; default: throw new ArgumentException(); } _driver = Driver; _DigitalChannels = new DigitalChannels(_driver); switch (Channel) { case AnalogOutChannelsEnum.AOut1: { _Selector_A0 = new DigitalBit(_DigitalChannels[DigitalChannelsEnum.DIOA], 4); _Selector_A1 = new DigitalBit(_DigitalChannels[DigitalChannelsEnum.DIOA], 5); _Selector_A2 = new DigitalBit(_DigitalChannels[DigitalChannelsEnum.DIOA], 6); _Enable = new DigitalBit(_DigitalChannels[DigitalChannelsEnum.DIOA], 7); } break; case AnalogOutChannelsEnum.AOut2: { _Selector_A0 = new DigitalBit(_DigitalChannels[DigitalChannelsEnum.DIOA], 0); _Selector_A1 = new DigitalBit(_DigitalChannels[DigitalChannelsEnum.DIOA], 1); _Selector_A2 = new DigitalBit(_DigitalChannels[DigitalChannelsEnum.DIOA], 2); _Enable = new DigitalBit(_DigitalChannels[DigitalChannelsEnum.DIOA], 3); } break; default: break; } _driver.AnalogOut.set_Polarity(_channelName, AgilentU254xAnalogPolarityEnum.AgilentU254xAnalogPolarityBipolar); }
public DigitalChannel(DigitalChannelsEnum Channel, AgilentU254xClass Driver) { int width = 0; switch (Channel) { case DigitalChannelsEnum.DIOA: { _channelName = ChannelNamesEnum.DIOA; width = 8; } break; case DigitalChannelsEnum.DIOB: { _channelName = ChannelNamesEnum.DIOB; width = 8; } break; case DigitalChannelsEnum.DIOC: { _channelName = ChannelNamesEnum.DIOC; width = 4; } break; case DigitalChannelsEnum.DIOD: { _channelName = ChannelNamesEnum.DIOD; width = 4; } break; default: throw new ArgumentException(); } _driver = Driver; Driver.Digital.Channels.get_Item(_channelName).Direction = AgilentU254xDigitalChannelDirectionEnum.AgilentU254xDigitalChannelDirectionOut; _bitArray = new DigitalBit[width]; for (int i = 0; i < width; i++) { _bitArray[i] = new DigitalBit(this, i); } }