Ejemplo n.º 1
0
        private static byte[] BuildConfigCommand(
            ADS1115MultiplexerMode mux,
            ADS1115PgaScaling gain,
            ADS1115SampleRate rate,
            ADS1115DeviceMode mode,
            ADS1115ComparatorPolarity comparatorPolarity,
            ADS1115ComparatorMode comparatorMode,
            ADS1115ComparatorLatching comparatorLatching,
            ADS1115ComparatorQueueMode comparatorQueueMode)
        {
            var command = new byte[3];

            command[0] = Ads1X15PointerConfig;

            command[1] = (byte)((byte)mode << 7
                                | (byte)mux << 4
                                | (byte)gain << 1
                                | (byte)mode);

            command[2] = (byte)((byte)rate << 5
                                | (byte)comparatorMode << 4
                                | (byte)comparatorPolarity << 3
                                | (byte)comparatorLatching << 2
                                | (byte)comparatorQueueMode);

            return(command);
        }
Ejemplo n.º 2
0
        private void StartComparatorInternal(
            ADS1115MultiplexerMode mux,
            ADS1115PgaScaling gain,
            ADS1115SampleRate rate,
            ADS1115DeviceMode mode,
            ushort lowThreshold,
            ushort highThreshold,
            ADS1115ComparatorPolarity comparatorPolarity,
            ADS1115ComparatorMode comparatorMode,
            ADS1115ComparatorLatching comparatorLatching,
            ADS1115ComparatorQueueMode comparatorQueueMode)
        {
            WriteThreshold(lowThreshold, highThreshold);

            var command = BuildConfigCommand(
                mux,
                gain,
                rate,
                mode,
                comparatorPolarity,
                comparatorMode,
                comparatorLatching,
                comparatorQueueMode);

            _device.Write(command);
        }
Ejemplo n.º 3
0
 public void StartComparator(
     ADS1115MultiplexerMode mux,
     ushort lowThreshold                            = 32768,
     ushort highThreshHold                          = 32767,
     ADS1115PgaScaling gain                         = ADS1115PgaScaling.TwoThirds,
     ADS1115SampleRate sampleRate                   = ADS1115SampleRate.X128Sps,
     ADS1115ComparatorMode comparatorMode           = ADS1115ComparatorMode.Traditional,
     ADS1115ComparatorPolarity comparatorPolarity   = ADS1115ComparatorPolarity.ActiveLow,
     ADS1115ComparatorLatching comparatorLatching   = ADS1115ComparatorLatching.Latching,
     ADS1115ComparatorQueueMode comparatorQueueMode = ADS1115ComparatorQueueMode.TwoConversions)
 {
     StartComparatorInternal(
         mux,
         gain,
         sampleRate,
         ADS1115DeviceMode.Continuous,
         lowThreshold,
         highThreshHold,
         comparatorPolarity,
         comparatorMode,
         comparatorLatching,
         comparatorQueueMode);
 }