13#ifndef SENSOR_READING_H
14#define SENSOR_READING_H
17#include <zephyr/drivers/gpio.h>
18#include <zephyr/drivers/adc.h>
27 struct gpio_dt_spec d1;
29 struct gpio_dt_spec d2;
31 const struct adc_dt_spec voltage_read;
33 const struct adc_dt_spec current_read;
36#define VOLTAGE_READ_DIVIDER_HIGH 100
37#define VOLTAGE_READ_DIVIDER_LOW 13
38#define CURRENT_READ_RESISTOR 50
39#define PULSE_DEBOUNCE_MS 50
This is a library to keep track of sensor ids and sensor power ids. As well as the configuration for ...
sensor_id
Sensor identifiers.
Definition sensor_id.h:20
sensor_types
Types of sensors that can be configured.
Definition sensor_id.h:29
float get_sensor_voltage_reading(sensor_reading_config_t *config)
Get the sensor voltage reading for a given sensor, takes into account the VOLTAGE_READ_DIVIDER_HIGH a...
Definition sensor_reading.c:169
enum sensor_types get_sensor_reading_setup(sensor_reading_config_t *config)
Get the sensor type set for a hardware configuration.
Definition sensor_reading.c:141
float get_sensor_current_reading(sensor_reading_config_t *config)
Get the sensor current reading for a given sensor in milliamperes, takes into account the CURRENT_REA...
Definition sensor_reading.c:184
int get_sensor_pulse_count(sensor_reading_config_t *config)
Get the current number of pulses captured on since initialization or last reset.
Definition sensor_reading.c:200
int sensor_reading_setup(sensor_reading_config_t *config, enum sensor_types sensor_type)
Setup sensor for sensor_type with hardware configuration.
Definition sensor_reading.c:102
int reset_sensor_pulse_count(sensor_reading_config_t *config)
Reset the pulse count for a given sensor to 0.
Definition sensor_reading.c:209
Sensor data pin configuration.
Definition sensor_reading.h:23