public ExplorerHat_ADS1015(IXI2CDevice i2cDevice, ExplorerHat_ADS1015_Channel channel, XGain gain = XGain.Volt5, XSamplesPerSecond samples = XSamplesPerSecond.SPS1600) : base(i2cDevice, 0x48) { _channel = channel; _xGain = gain; _xSamples = samples; }
public static ElectricPotential ToElectricPotenital(this XGain xGain) { switch (xGain) { case XGain.Volt5: return(ElectricPotential.From(5, ElectricPotentialUnit.Volt)); case XGain.Volt33: return(ElectricPotential.From(3.3, ElectricPotentialUnit.Volt)); default: throw new NotImplementedException($"No ElectricPotential mapping for {xGain}"); } }
public static ushort ForADS1015(this XGain xGain) { ushort[] programmableGainMap = { 0x0000, 0x0200, 0x0400, 0x0600, 0x0800, 0x0A00 }; return(programmableGainMap[(int)xGain]); }