13#ifndef ZEPHYR_INCLUDE_DRIVERS_ADC_CURRENT_SENSE_AMPLIFIER_H_
14#define ZEPHYR_INCLUDE_DRIVERS_ADC_CURRENT_SENSE_AMPLIFIER_H_
64#define CURRENT_SENSE_AMPLIFIER_DT_SPEC_GET(node_id) \
66 .port = ADC_DT_SPEC_GET(node_id), \
67 .power_gpio = GPIO_DT_SPEC_GET_OR(node_id, power_gpios, {0}), \
68 .sense_milli_ohms = DT_PROP(node_id, sense_resistor_milli_ohms), \
69 .sense_gain_mult = DT_PROP(node_id, sense_gain_mult), \
70 .sense_gain_div = DT_PROP(node_id, sense_gain_div), \
71 .noise_threshold = DT_PROP(node_id, zephyr_noise_threshold), \
72 .zero_current_voltage_mv = DT_PROP(node_id, zero_current_voltage_mv), \
73 .gain_extended_range = DT_STRING_TOKEN_OR(node_id, gain_extended_range, 0xFF), \
74 .enable_calibration = DT_PROP_OR(node_id, enable_calibration, false), \
Main header file for ADC (Analog-to-Digital Converter) driver API.
Main header file for GPIO driver API.
static int32_t current_sense_amplifier_scale_ua_dt(const struct current_sense_amplifier_dt_spec *spec, int32_t microvolts)
Calculates the actual amperage from a measured voltage.
Definition current_sense_amplifier.h:109
static void current_sense_amplifier_scale_dt(const struct current_sense_amplifier_dt_spec *spec, int32_t *v_to_i)
Calculates the actual amperage from a measured voltage.
Definition current_sense_amplifier.h:85
adc_gain
ADC channel gain factors.
Definition adc.h:42
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
__INT32_TYPE__ int32_t
Definition stdint.h:74
__UINT16_TYPE__ uint16_t
Definition stdint.h:89
__INT64_TYPE__ int64_t
Definition stdint.h:75
__INT16_TYPE__ int16_t
Definition stdint.h:73
Container for ADC channel information specified in devicetree.
Definition adc.h:291
Current sense amplifier DT struct.
Definition current_sense_amplifier.h:33
uint16_t noise_threshold
Noise threshold.
Definition current_sense_amplifier.h:45
bool enable_calibration
Enable calibration.
Definition current_sense_amplifier.h:51
uint16_t sense_gain_div
Sense amplifier gain divider.
Definition current_sense_amplifier.h:43
int16_t zero_current_voltage_mv
Voltage at zero current in millivolts.
Definition current_sense_amplifier.h:47
uint16_t sense_gain_mult
Sense amplifier gain multiplier.
Definition current_sense_amplifier.h:41
enum adc_gain gain_extended_range
Gain range.
Definition current_sense_amplifier.h:49
uint32_t sense_milli_ohms
Sense resistor value in milliohms.
Definition current_sense_amplifier.h:39
struct adc_dt_spec port
ADC channel info.
Definition current_sense_amplifier.h:35
struct gpio_dt_spec power_gpio
GPIO to enable the amplifier.
Definition current_sense_amplifier.h:37
Container for GPIO pin information specified in devicetree.
Definition gpio.h:296