21#ifndef Adafruit_ADS1015_h
22#define Adafruit_ADS1015_h
37 #define ADS1015_ADDRESS (0x48)
43 #define ADS1015_CONVERSIONDELAY (1)
44 #define ADS1115_CONVERSIONDELAY (12)
50 #define ADS1015_REG_POINTER_MASK (0x03)
51 #define ADS1015_REG_POINTER_CONVERT (0x00)
52 #define ADS1015_REG_POINTER_CONFIG (0x01)
53 #define ADS1015_REG_POINTER_LOWTHRESH (0x02)
54 #define ADS1015_REG_POINTER_HITHRESH (0x03)
60 #define ADS1015_REG_CONFIG_OS_MASK (0x8000)
61 #define ADS1015_REG_CONFIG_OS_SINGLE (0x8000)
62 #define ADS1015_REG_CONFIG_OS_BUSY (0x0000)
63 #define ADS1015_REG_CONFIG_OS_NOTBUSY (0x8000)
65 #define ADS1015_REG_CONFIG_MUX_MASK (0x7000)
66 #define ADS1015_REG_CONFIG_MUX_DIFF_0_1 (0x0000)
67 #define ADS1015_REG_CONFIG_MUX_DIFF_0_3 (0x1000)
68 #define ADS1015_REG_CONFIG_MUX_DIFF_1_3 (0x2000)
69 #define ADS1015_REG_CONFIG_MUX_DIFF_2_3 (0x3000)
70 #define ADS1015_REG_CONFIG_MUX_SINGLE_0 (0x4000)
71 #define ADS1015_REG_CONFIG_MUX_SINGLE_1 (0x5000)
72 #define ADS1015_REG_CONFIG_MUX_SINGLE_2 (0x6000)
73 #define ADS1015_REG_CONFIG_MUX_SINGLE_3 (0x7000)
75 #define ADS1015_REG_CONFIG_PGA_MASK (0x0E00)
76 #define ADS1015_REG_CONFIG_PGA_6_144V (0x0000)
77 #define ADS1015_REG_CONFIG_PGA_4_096V (0x0200)
78 #define ADS1015_REG_CONFIG_PGA_2_048V (0x0400)
79 #define ADS1015_REG_CONFIG_PGA_1_024V (0x0600)
80 #define ADS1015_REG_CONFIG_PGA_0_512V (0x0800)
81 #define ADS1015_REG_CONFIG_PGA_0_256V (0x0A00)
83 #define ADS1015_REG_CONFIG_MODE_MASK (0x0100)
84 #define ADS1015_REG_CONFIG_MODE_CONTIN (0x0000)
85 #define ADS1015_REG_CONFIG_MODE_SINGLE (0x0100)
87 #define ADS1015_REG_CONFIG_DR_MASK (0x00E0)
88 #define ADS1015_REG_CONFIG_DR_128SPS (0x0000)
89 #define ADS1015_REG_CONFIG_DR_250SPS (0x0020)
90 #define ADS1015_REG_CONFIG_DR_490SPS (0x0040)
91 #define ADS1015_REG_CONFIG_DR_920SPS (0x0060)
92 #define ADS1015_REG_CONFIG_DR_1600SPS (0x0080)
93 #define ADS1015_REG_CONFIG_DR_2400SPS (0x00A0)
94 #define ADS1015_REG_CONFIG_DR_3300SPS (0x00C0)
96 #define ADS1015_REG_CONFIG_CMODE_MASK (0x0010)
97 #define ADS1015_REG_CONFIG_CMODE_TRAD (0x0000)
98 #define ADS1015_REG_CONFIG_CMODE_WINDOW (0x0010)
100 #define ADS1015_REG_CONFIG_CPOL_MASK (0x0008)
101 #define ADS1015_REG_CONFIG_CPOL_ACTVLOW (0x0000)
102 #define ADS1015_REG_CONFIG_CPOL_ACTVHI (0x0008)
104 #define ADS1015_REG_CONFIG_CLAT_MASK (0x0004)
105 #define ADS1015_REG_CONFIG_CLAT_NONLAT (0x0000)
106 #define ADS1015_REG_CONFIG_CLAT_LATCH (0x0004)
108 #define ADS1015_REG_CONFIG_CQUE_MASK (0x0003)
109 #define ADS1015_REG_CONFIG_CQUE_1CONV (0x0000)
110 #define ADS1015_REG_CONFIG_CQUE_2CONV (0x0001)
111 #define ADS1015_REG_CONFIG_CQUE_4CONV (0x0002)
112 #define ADS1015_REG_CONFIG_CQUE_NONE (0x0003)
117 GAIN_TWOTHIRDS = ADS1015_REG_CONFIG_PGA_6_144V,
118 GAIN_ONE = ADS1015_REG_CONFIG_PGA_4_096V,
119 GAIN_TWO = ADS1015_REG_CONFIG_PGA_2_048V,
120 GAIN_FOUR = ADS1015_REG_CONFIG_PGA_1_024V,
121 GAIN_EIGHT = ADS1015_REG_CONFIG_PGA_0_512V,
122 GAIN_SIXTEEN = ADS1015_REG_CONFIG_PGA_0_256V
Definition OWMAdafruit_ADS1015.h:126
int16_t readADC_Differential_2_3(void)
Reads the conversion results, measuring the voltage difference between the P (AIN2) and N (AIN3) inpu...
Definition OWMAdafruit_ADS1015.cpp:249
void setGain(adsGain_t gain)
Sets the gain and input voltage range.
Definition OWMAdafruit_ADS1015.cpp:121
uint16_t readADC_SingleEnded(uint8_t channel)
Gets a single-ended ADC reading from the specified channel.
Definition OWMAdafruit_ADS1015.cpp:141
int16_t readADC_Differential_0_1(void)
Reads the conversion results, measuring the voltage difference between the P (AIN0) and N (AIN1) inpu...
Definition OWMAdafruit_ADS1015.cpp:198
adsGain_t getGain(void)
Gets a gain and input voltage range.
Definition OWMAdafruit_ADS1015.cpp:131
void begin(void)
Sets up the HW (reads coefficients values, etc.)
Definition OWMAdafruit_ADS1015.cpp:112
int16_t getLastConversionResults()
In order to clear the comparator, we need to read the conversion results. This function reads the las...
Definition OWMAdafruit_ADS1015.cpp:347
void startComparator_SingleEnded(uint8_t channel, int16_t threshold)
Sets up the comparator to operate in basic mode, causing the ALERT/RDY pin to assert (go from high to...
Definition OWMAdafruit_ADS1015.cpp:301
Definition OWMAdafruit_ADS1015.h:150
int reset_count
number of resets retrieved for NVS
Definition scheduler.hpp:31