From 3c36cd4242ae94971ebe4d6dfcc6ade6ea9a6cb8 Mon Sep 17 00:00:00 2001 From: Eug Krashtan Date: Thu, 29 Apr 2021 17:43:43 +0300 Subject: [PATCH] drivers: sensor: Add sensor_value_from_double Add helper function to convert double to struct sensor_value. Signed-off-by: Eug Krashtan --- include/drivers/sensor.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/include/drivers/sensor.h b/include/drivers/sensor.h index 9d852bad648..20b2458e8ba 100644 --- a/include/drivers/sensor.h +++ b/include/drivers/sensor.h @@ -648,6 +648,18 @@ static inline double sensor_value_to_double(struct sensor_value *val) return (double)val->val1 + (double)val->val2 / 1000000; } +/** + * @brief Helper function for converting double to struct sensor_value. + * + * @param val A pointer to a sensor_value struct. + * @param inp The converted value. + */ +static inline void sensor_value_from_double(struct sensor_value *val, double inp) +{ + val->val1 = (int32_t) inp; + val->val2 = (int32_t)(inp * 1000000) % 1000000; +} + /** * @} */