Paparazzi UAS  v5.12_stable-4-g9b43e9b
Paparazzi is a free software Unmanned Aircraft System.
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
meteo_stick_calib.h File Reference

Parser for calibration data coming from 25AA256 EEPROM of the Meteo Stick. More...

#include <stdint.h>
#include <stdbool.h>
#include <stddef.h>
#include <time.h>
+ Include dependency graph for meteo_stick_calib.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  Sensors_params
 Calibration_params structure initialized with calibvration data read from meteostick eeprom. More...
 
struct  Calibration_params
 

Macros

#define MTOSTK_MAX_SEEK_ARRAY_SIZE   20
 
#define MTOSTK_MAX_POLY_ARRAY_SIZE   6
 
#define MTOSTK_MAX_TEMP_ARRAY_SIZE   6
 
#define UUID_LEN   13
 

Enumerations

enum  Mtostk_sensors {
  MTOSTK_TEMP = 0, MTOSTK_ABS_PRESS, MTOSTK_DIF_PRESS, MTOSTK_HUMIDITY,
  MTOSTK_NUM_SENSORS
}
 

Functions

bool mtostk_populate_cal_from_buffer (Calibration_params *cp, uint8_t *eeprom_buffer)
 Initializes a Calibration_params structure from memory buffer. More...
 
float mtostk_get_calibrated_value (Calibration_params *cp, Mtostk_sensors type, float uncal, float temp)
 get calibrated value for a sensor according to current temperature More...
 

Detailed Description

Parser for calibration data coming from 25AA256 EEPROM of the Meteo Stick.

Definition in file meteo_stick_calib.h.


Data Structure Documentation

struct Sensors_params

Calibration_params structure initialized with calibvration data read from meteostick eeprom.

Definition at line 61 of file meteo_stick_calib.h.

Data Fields
float coeffs[MTOSTK_MAX_TEMP_ARRAY_SIZE][MTOSTK_MAX_POLY_ARRAY_SIZE]
uint16_t num_coeff
uint16_t num_temp
float temps[MTOSTK_MAX_TEMP_ARRAY_SIZE]
time_t timestamp
struct Calibration_params

Definition at line 69 of file meteo_stick_calib.h.

+ Collaboration diagram for Calibration_params:
Data Fields
Sensors_params params[MTOSTK_NUM_SENSORS]
char uuid[13]

Macro Definition Documentation

#define MTOSTK_MAX_POLY_ARRAY_SIZE   6

Definition at line 39 of file meteo_stick_calib.h.

Referenced by mtostk_populate_float_array_from_buffer().

#define MTOSTK_MAX_SEEK_ARRAY_SIZE   20

Definition at line 38 of file meteo_stick_calib.h.

Referenced by mtostk_seek_array_buffer().

#define MTOSTK_MAX_TEMP_ARRAY_SIZE   6
#define UUID_LEN   13

Definition at line 41 of file meteo_stick_calib.h.

Referenced by mtostk_populate_uuid_from_buffer().

Enumeration Type Documentation

Enumerator
MTOSTK_TEMP 
MTOSTK_ABS_PRESS 
MTOSTK_DIF_PRESS 
MTOSTK_HUMIDITY 
MTOSTK_NUM_SENSORS 

Definition at line 43 of file meteo_stick_calib.h.

Function Documentation

float mtostk_get_calibrated_value ( Calibration_params cp,
Mtostk_sensors  type,
float  uncal,
float  temp 
)

get calibrated value for a sensor according to current temperature

Parameters
[in]cppointer to calibration structure
[in]typesensor type
[in]uncaluncalibrated value
[in]tempcurrent temperature (not relevant for calibration of temperature sensor)
Returns
calibrated value

Definition at line 71 of file meteo_stick_calib.c.

References Sensors_params::coeffs, mtostk_apply_polynomial(), mtostk_apply_polynomial_temp(), MTOSTK_NUM_SENSORS, MTOSTK_TEMP, Sensors_params::num_coeff, Sensors_params::num_temp, Calibration_params::params, and Sensors_params::timestamp.

Referenced by get_diff(), get_humidity(), get_pressure(), and get_temp().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

bool mtostk_populate_cal_from_buffer ( Calibration_params cp,
uint8_t eeprom_buffer 
)

Initializes a Calibration_params structure from memory buffer.

Precondition
the memory buffer must be initialized with data read from the spi eeprom embeded on the meteostick
Parameters
[out]cppointer to the Calibration_params structure to be initialized
[in]eeprom_bufferpointer to word aligned buffer of bytes

Definition at line 53 of file meteo_stick_calib.c.

References MTOSTK_NUM_SENSORS, mtostk_populate_sensor_from_buffer(), mtostk_populate_uuid_from_buffer(), MTOSTK_TEMP, Calibration_params::params, and Calibration_params::uuid.

Referenced by meteo_stick_periodic().

+ Here is the call graph for this function:

+ Here is the caller graph for this function: