view Small_CPU/Inc/pressure.h @ 955:9b29995d6619 Evo_2_23 tip

GNSS backup position: In the previous implementation a position had to be provided by the module in order to be stored in the log. This may cause a wrong position entry (default) in the log, for example if signal is lost while preparing for the dive in the water. To avoid this the last received position will be used for ~2 hours => Diver may take the dive side position before starting with the dive preparation. The last known position will be display in the GNSS position search window as well.
author Ideenmodellierer
date Wed, 01 Jan 2025 20:37:17 +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 */