protected void InitLibAndHandle(int channelIndex) { if (_i2cHandle != IntPtr.Zero) { return; } LibMpsse.Init(); var config = Config; var result = CheckResult(LibMpsse.I2C_OpenChannel(channelIndex, out _i2cHandle)); if (_i2cHandle == IntPtr.Zero) { throw new I2CNotConnectedException(FtdiMpsseI2CResult.InvalidAddress); } result = CheckResult(LibMpsse.I2C_InitChannel(_i2cHandle, ref config)); Config = config; }
public GpioI2CDevice(I2C_CHANNEL_CONFIG config, int channelIndex) : base(config, channelIndex) { }
public GpioI2CDeviceBaseClass(I2C_CHANNEL_CONFIG config, int channelIndex) { Config = config; InitLibAndHandle(channelIndex); GpioInit(); }