GY-63_MS5611/libraries/AD5245/AD5245.h

60 lines
1.0 KiB
C
Raw Normal View History

2022-08-03 05:00:56 -04:00
#pragma once
//
// FILE: AD5245.h
// AUTHOR: Rob Tillaart
2023-09-21 15:37:28 -04:00
// VERSION: 0.2.1
2022-08-03 05:00:56 -04:00
// PURPOSE: Arduino library for I2C digital potentiometer AD5245.
// DATE: 2022-07-31
// URL: https://github.com/RobTillaart/AD5245
// experimental - to be tested - use at own risk
#include "Arduino.h"
#include "Wire.h"
2023-09-21 15:37:28 -04:00
#define AD5245_LIB_VERSION (F("0.2.1"))
2022-08-03 05:00:56 -04:00
#define AD5245_OK 0
#define AD5245_ERROR 100
2023-01-16 08:38:52 -05:00
#define AD5245_MIDPOINT 128
2022-08-03 05:00:56 -04:00
class AD5245
{
public:
explicit AD5245(const uint8_t address, TwoWire *wire = &Wire);
#if defined (ESP8266) || defined(ESP32)
bool begin(uint8_t sda, uint8_t scl);
#endif
bool begin();
bool isConnected();
uint8_t reset();
uint8_t read(); // read from cache (fast!)
uint8_t readDevice(); // read from device
uint8_t write(const uint8_t value);
2022-10-25 15:41:23 -04:00
// experimental - to be tested - use at own risk
2022-08-03 05:00:56 -04:00
uint8_t shutDown();
private:
uint8_t send(const uint8_t cmd, const uint8_t value);
uint8_t _address;
uint8_t _lastValue;
TwoWire* _wire;
};
2023-02-03 02:42:59 -05:00
// -- END OF FILE --
2022-08-03 05:00:56 -04:00