Mercurial > public > ostc4
view Small_CPU/Inc/batteryGasGauge.h @ 794:bb37d4f3e50e
Restructure UART based sensor handling:
In the previous version every UART sensor instance had its own protocol handling instance (requests, timeout, errors). With the introduction of the multiplexer these functionalities had to be harmonized. E.g. only one errorhandling which is applied to all sensors. In the new structure the sensor communication is split into one function which takes care for the control needs of a sensor and one function which handles the incoming data. The functions behalf the same independend if the sensor are connected to multiplexer or directly to the OSTC.
Second big change in the external sensor concepts is that the data processing is no longer focussed at the three existing ADC channels. Every external sensor (up to 3 ADC and 4 UART) sensor has its own instance. If the ADC slots are not in use then they may be used for visiualization of UART sensors by creating a mirror instance but this is no longer a must.
author | Ideenmodellierer |
---|---|
date | Mon, 31 Jul 2023 19:46:29 +0200 |
parents | c1e203ffb478 |
children |
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 ------------------------------------------------------------------*/ #include <stdint.h> #define BATTERY_DEFAULT_VOLTAGE (6.0f) #define BATTERY_ENDOF_CHARGE_VOLTAGE (4.05f) #define BATTERY_CHARGER_CONNECTED_VOLTAGE (4.2f) #define BATTERY_CHARGE_UNKNOWN (-1.0f) 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); uint8_t battery_gas_gauge_CheckConfigOK(void); uint8_t battery_gas_gauge_isChargeValueValid(void); void battery_gas_gauge_setChargeValueValid(void); #ifdef __cplusplus } #endif #endif /* BATTERY_GAS_GAUGE_H */ /************************ (C) COPYRIGHT heinrichs weikamp *****END OF FILE****/