#pragma once #include #include #include #define ANALOG_INPUT_BANK_A_ADDRESS 0x48 #define ANALOG_INPUT_BANK_B_ADDRESS 0x49 #define DAC0_ADDRESS 0x60 #define DAC1_ADDRESS 0x61 #define DAC2_ADDRESS 0x62 #define DAC3_ADDRESS 0x63 class AnalogCard : public ExpansionCard { public: AnalogCard(); void dacWrite(uint8_t pin, uint16_t value); uint16_t analogRead(uint8_t pin); bool begin(); void loop(); private: MCP4725 dac0; MCP4725 dac1; MCP4725 dac2; MCP4725 dac3; Adafruit_ADS1115 analogInputBankA; Adafruit_ADS1115 analogInputBankB; };