30 :
cf_store_(*pulse_counter::get_storage(USE_PCNT)),
cf1_store_(*pulse_counter::get_storage(USE_PCNT)) {}
32 void setup()
override;
This class simplifies creating components that periodically check a state.
void set_change_mode_every(uint32_t change_mode_every)
void set_energy_sensor(sensor::Sensor *energy_sensor)
void set_initial_mode(HLW8012InitialMode initial_mode)
sensor::Sensor * voltage_sensor_
sensor::Sensor * current_sensor_
pulse_counter::PulseCounterStorageBase & cf_store_
void set_sel_pin(GPIOPin *sel_pin)
void set_voltage_divider(float voltage_divider)
void dump_config() override
void set_current_resistor(float current_resistor)
void set_cf1_pin(InternalGPIOPin *cf1_pin)
sensor::Sensor * power_sensor_
pulse_counter::PulseCounterStorageBase & cf1_store_
void set_power_sensor(sensor::Sensor *power_sensor)
uint32_t change_mode_every_
void set_current_sensor(sensor::Sensor *current_sensor)
HLW8012SensorModels sensor_model_
InternalGPIOPin * cf_pin_
float voltage_multiplier_
uint64_t cf_total_pulses_
sensor::Sensor * energy_sensor_
float current_multiplier_
void set_cf_pin(InternalGPIOPin *cf_pin)
void set_voltage_sensor(sensor::Sensor *voltage_sensor)
InternalGPIOPin * cf1_pin_
float get_setup_priority() const override
void set_sensor_model(HLW8012SensorModels sensor_model)
Base-class for all sensors.
@ HLW8012_SENSOR_MODEL_BL0937
@ HLW8012_SENSOR_MODEL_CSE7759
@ HLW8012_SENSOR_MODEL_HLW8012
@ HLW8012_INITIAL_MODE_CURRENT
@ HLW8012_INITIAL_MODE_VOLTAGE
Providing packet encoding functions for exchanging data with a remote host.