view Small_CPU/Inc/pressure.h @ 926:875933272056 Evo_2_23 tip

Bugfix sensor de-/activation handling: In the previous version a CO2 sensor could cause a not used analog channel to be displayed. Rootcause was that all sensor type, not only o2 sensors, were used for o2 sensor deactivation evaluation. The deactivation state is the criteria if a value is displayed or not. In the new version only o2 sensor type are used for handling of sensor de-/activation state. In addition the cursor will now be set to the first valid sensor entry in case sensor slot 0 is empty.
author Ideenmodellierer
date Thu, 14 Nov 2024 20:13:18 +0100
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 */