Loom 4 v4.5
Arduino library for Internet of Things Rapid Prototyping in environmental sensing
Loading...
Searching...
No Matches
Loom_ADS1115.h
1#pragma once
2
3#include <Adafruit_ADS1X15.h>
4#include <map>
5
6#include "../I2CDevice.h"
7#include "Loom_Manager.h"
8
14class Loom_ADS1115 : public I2CDevice{
15 protected:
16
17 void power_down() override {};
18
19 public:
20 void initialize() override;
21 void measure() override;
22 void package() override;
23 void power_up() override;
24
35 Manager& man,
36 byte address = ADS1X15_ADDRESS,
37 bool useMux = false,
38 bool enable_analog = true,
39 bool enable_diff = false,
40 adsGain_t gain = adsGain_t::GAIN_ONE
41 );
42
43
48 int getAnalog(int pin) { return analogData[pin-1]; };
49
54 int getDiff(int pin) { return analogData[pin-1]; };
55
56 private:
57 Manager* manInst; // Instance of the manager
58 Adafruit_ADS1115 ads; // Instance of the ADS1115 Library
59
60 adsGain_t adc_gain; // Gain to set the amplifier to
61 byte i2c_address; // I2C address
62 bool enableAnalog; // Read from the analog pins
63 bool enableDiff; // Read differentials
64
65 int16_t analogData[4]; // Stores the analog ADS1115 data
66 int16_t diffData[2]; // Stores the differential data from the sensor
67 float volts[4]; // Stores Computed Voltage Conversions
68};
Definition: I2CDevice.h:6
Definition: Loom_ADS1115.h:14
int getDiff(int pin)
Definition: Loom_ADS1115.h:54
int getAnalog(int pin)
Definition: Loom_ADS1115.h:48
Definition: Loom_Manager.h:18