Mercurial > public > ostc4
view Small_CPU/Inc/pressure.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 | 4093ac18b25c |
children |
line wrap: on
line source
/* Define to prevent recursive inclusion -------------------------------------*/ #ifndef PRESSURE_H #define PRESSURE_H #include <stdint.h> uint8_t init_pressure(void); void pressure_set_offset (float pressureOffset, float temperatureOffset); uint8_t pressure_update(void); void pressure_update_alternating(void); uint8_t is_init_pressure_done(void); HAL_StatusTypeDef pressure_sensor_get_pressure_raw(void); HAL_StatusTypeDef pressure_sensor_get_temperature_raw(void); void pressure_calculation(void); float get_temperature(void); float get_pressure_mbar(void); float get_surface_mbar(void); uint8_t is_surface_pressure_stable(void); float set_last_surface_pressure_stable(void); void init_surface_ring(uint8_t force); void update_surface_pressure(uint8_t call_rhythm_seconds); uint32_t demo_modify_temperature_and_pressure(int32_t divetime_in_seconds, uint8_t subseconds, float ceiling_mbar); #endif /* PRESSURE_H */