view Small_CPU/Inc/compass.h @ 474:4be72d55b09a Improve_Button_Sleep

Added error detection for reading of ADC values in sleep mode: ADC value were used for pressure calculation without making sure that the I2C operations used for reading the values were called successfully. As result a invalid pressure could be calculated causing the OSTC to wakeup or (worstcase) to enter dive mode. To avoid this the return values are now evaluated and pressure calculation is only done if I2C signaled no error during transmission
author ideenmodellierer
date Tue, 12 May 2020 22:42:52 +0200
parents 5f11787b4f42
children
line wrap: on
line source

/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef COMPASS_H
#define COMPASS_H

#include <stdint.h>

void compass_init(uint8_t fast, uint8_t gain);
void accelerator_init(void);
void compass_read(void);
void acceleration_read(void);
int compass_calib(void);
void compass_calc(void);
//void compass_calc_mini_during_calibration(void);
 
float check_compass_calib(void);

void compass_sleep(void);
void accelerator_sleep(void);

#endif /* COMPASS_H */