fork from github

This commit is contained in:
2021-11-28 12:03:26 +01:00
commit aef37c6fe8
29 changed files with 2881 additions and 0 deletions

View File

@@ -0,0 +1,95 @@
//
// FILE: ADS_async_differential.ino
// AUTHOR: Rob.Tillaart
// VERSION: 0.1.0
// PURPOSE: read multiple differential continuously
//
// test
// connect 4 potmeters
//
// GND ---[ x ]------ 5V
// |
//
// measure at x - connect to AIN0..4.
//
//
#include "ADS1X15.h"
// choose you sensor
// ADS1013 ADS(0x48);
// ADS1014 ADS(0x48);
// ADS1015 ADS(0x48);
// ADS1113 ADS(0x48);
// ADS1114 ADS(0x48);
ADS1115 ADS(0x48);
uint8_t pair = 01;
int16_t val_01 = 0;
int16_t val_23 = 0;
void setup()
{
Serial.begin(115200);
Serial.println(__FILE__);
Serial.print("ADS1X15_LIB_VERSION: ");
Serial.println(ADS1X15_LIB_VERSION);
ADS.begin();
ADS.setGain(0); // 6.144 volt
ADS.setDataRate(4); // medium
// single shot mode
ADS.setMode(1);
// start with first pair
pair = 01;
// trigger first read
ADS.requestADC_Differential_0_1();
}
void loop()
{
if (handleConversion() == true)
{
Serial.print("COMP:\t");
Serial.print(val_01);
Serial.print("\t");
Serial.print(val_23);
Serial.println();
}
// do other stuff here
delay(10);
}
// can be changed to hold other differentials reads too.
bool handleConversion()
{
if (ADS.isReady())
{
if (pair == 01)
{
val_01 = ADS.getValue();
pair = 23;
ADS.requestADC_Differential_2_3();
return false; // only one done
}
// last of series to check
if (pair == 23)
{
val_23 = ADS.getValue();
pair = 01;
ADS.requestADC_Differential_0_1();
return true; // both are updated
}
}
return false; // default not all read
}
// -- END OF FILE --