From f40b209feba63ac1eb8cd332ded5651d177e2dea Mon Sep 17 00:00:00 2001 From: giacomo892 Date: Fri, 2 Nov 2018 21:29:36 +0100 Subject: [PATCH] refactor and add getCurrentTemperature() --- src/main/sensors/temperature.c | 16 ++++++++-------- src/main/sensors/temperature.h | 2 -- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/src/main/sensors/temperature.c b/src/main/sensors/temperature.c index 9e6d2794b0..f7d4bd60c6 100644 --- a/src/main/sensors/temperature.c +++ b/src/main/sensors/temperature.c @@ -32,29 +32,29 @@ #include "sensors/gyro.h" #include "sensors/barometer.h" -static bool tempSensorValid[TEMP_COUNT]; static int16_t tempSensorValue[TEMP_COUNT]; - -bool isTemperatureSensorValid(tempSensor_e sensor) -{ - return tempSensorValid[sensor]; -} +static tempSensor_e tempSensorValid; int16_t getTemperature(tempSensor_e sensor) { return tempSensorValue[sensor]; } +int16_t getCurrentTemperature(void) +{ + return tempSensorValue[tempSensorValid]; +} + void temperatureUpdate(void) { // TEMP_GYRO: Update gyro temperature in decidegrees if (gyroReadTemperature()) { - tempSensorValid[TEMP_GYRO] = true; tempSensorValue[TEMP_GYRO] = gyroGetTemperature(); + tempSensorValid=TEMP_GYRO; } // TEMP_BARO: Update baro temperature in decidegrees if(sensors(SENSOR_BARO)){ - tempSensorValid[TEMP_BARO] = true; tempSensorValue[TEMP_BARO] = baroGetTemperature(); + tempSensorValid=TEMP_BARO; } } diff --git a/src/main/sensors/temperature.h b/src/main/sensors/temperature.h index 0f3b4cb1ea..02075b1997 100644 --- a/src/main/sensors/temperature.h +++ b/src/main/sensors/temperature.h @@ -26,7 +26,5 @@ typedef enum { } tempSensor_e; // Temperature is returned in degC*10 - -bool isTemperatureSensorValid(tempSensor_e sensor); int16_t getTemperature(tempSensor_e sensor); void temperatureUpdate(void);