19 lines
584 B
C++
19 lines
584 B
C++
#pragma once
|
|
#include <ESPMegaPRO.h>
|
|
class ESPMega_CT {
|
|
public:
|
|
ESPMega_CT(uint8_t analog_pin,float(*adc_to_watts)(uint16_t adc_value), uint32_t fram_address);
|
|
void begin();
|
|
void loop();
|
|
float get_power();
|
|
long double get_energy();
|
|
void reset_energy();
|
|
private:
|
|
uint8_t analog_pin;
|
|
uint32_t fram_address;
|
|
unsigned long last_conversion_timestamp;
|
|
float power;
|
|
long double energy;
|
|
float (*adc_to_watts)(uint16_t adc_value);
|
|
float adc_to_watts_builtin(uint16_t adc_value);
|
|
}; |