Mercurial > public > ostc4
view Small_CPU/Inc/batteryGasGauge.h @ 173:05c770dc2911 max-depth
Bugfix: make max depth move with current depth (part 1)
The display in dive mode of the max depth was updated before the actual
depth, which looks very strange. The reason for this was conceptually
simple. The depth value was averaged over a set of depth samples, but
the current depth was only taken from the current sample. So, per
definition, on an initial descend, the current depth is always bigger
(deeper) than any average from previous shallower samples.
This part 1 commit introduces a new function that is used immediate
after reception of the new sample from the RTE. This function does the
trivial average of a set of samples. Notice that also the surface and
ambient mbar pressures are taken into account (which are used heavily
over the entire code). This is a consistency thing. We should base any
further calculation from the data presented in the UI, instead of
presenting A, and use A' for further calculations.
Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
author | Jan Mulder <jlmulder@xs4all.nl> |
---|---|
date | Mon, 11 Mar 2019 19:48:57 +0100 |
parents | 5f11787b4f42 |
children | 2defc8cd93ce |
line wrap: on
line source
/** ****************************************************************************** * @file batteryGasGauge.h * @author heinrichs weikamp gmbh * @version V0.0.1 * @date 09-Dec-2014 * @brief LTC2942 * @verbatim ============================================================================== ##### How to use ##### ============================================================================== @endverbatim ****************************************************************************** * @attention * * <h2><center>© COPYRIGHT(c) 2014 heinrichs weikamp</center></h2> * ****************************************************************************** */ /* Define to prevent recursive inclusion -------------------------------------*/ #ifndef BATTERY_GAS_GAUGE_H #define BATTERY_GAS_GAUGE_H #ifdef __cplusplus extern "C" { #endif /* Includes ------------------------------------------------------------------*/ void init_battery_gas_gauge(void); float get_voltage(void); float get_charge(void); void battery_gas_gauge_get_data(void); void battery_gas_gauge_set_charge_full(void); void battery_gas_gauge_set(float percentage); #ifdef __cplusplus } #endif #endif /* BATTERY_GAS_GAUGE_H */ /************************ (C) COPYRIGHT heinrichs weikamp *****END OF FILE****/