48 #define EX_BMP085_VERSION           "1.0.1"    53 #define EX_BMP085_MAJOR             1    58 #define EX_BMP085_MINOR             0    63 #define EX_BMP085_PATCH             1    70 #define BMP085_BARO_NUMBER_OF_AXES  1U        72 #define BMP085_P_RES                0.01      79 #define BMP085_THERMO_NUMBER_OF_AXES 1U      81 #define BMP085_T_RES                0.1       88 #define BMP085_AD_CR                0xF4     89 #define BMP085_AD_T_DR_MSB          0xF6     90 #define BMP085_AD_T_DR_LSB          0xF7     91 #define BMP085_AD_P_DR_MSB          0xF6     92 #define BMP085_AD_P_DR_LSB          0xF7     93 #define BMP085_AD_P_DR_XLSB         0xF8     94 #define BMP085_AD_CC_AC1_MSB        0xAA     95 #define BMP085_AD_CC_AC1_LSB        0xAB     96 #define BMP085_AD_CC_AC2_MSB        0xAC     97 #define BMP085_AD_CC_AC2_LSB        0xAD     98 #define BMP085_AD_CC_AC3_MSB        0xAE     99 #define BMP085_AD_CC_AC3_LSB        0xAF    100 #define BMP085_AD_CC_AC4_MSB        0xB0    101 #define BMP085_AD_CC_AC4_LSB        0xB1    102 #define BMP085_AD_CC_AC5_MSB        0xB2    103 #define BMP085_AD_CC_AC5_LSB        0xB3    104 #define BMP085_AD_CC_AC6_MSB        0xB4    105 #define BMP085_AD_CC_AC6_LSB        0xB5    106 #define BMP085_AD_CC_B1_MSB         0xB6    107 #define BMP085_AD_CC_B1_LSB         0xB7    108 #define BMP085_AD_CC_B2_MSB         0xB8    109 #define BMP085_AD_CC_B2_LSB         0xB9    110 #define BMP085_AD_CC_MB_MSB         0xBA    111 #define BMP085_AD_CC_MB_LSB         0xBB    112 #define BMP085_AD_CC_MC_MSB         0xBC    113 #define BMP085_AD_CC_MC_LSB         0xBD    114 #define BMP085_AD_CC_MD_MSB         0xBE    115 #define BMP085_AD_CC_MD_LSB         0xBF    132 #if !defined(BMP085_USE_I2C) || defined(__DOXYGEN__)   133 #define BMP085_USE_I2C                     TRUE   141 #if !defined(BMP085_USE_ADVANCED) || defined(__DOXYGEN__)   142 #define BMP085_USE_ADVANCED            TRUE   151 #if !defined(BMP085_SHARED_I2C) || defined(__DOXYGEN__)   152 #define BMP085_SHARED_I2C                  FALSE   161 #error "BMP085_USE_I2C requires HAL_USE_I2C"   164 #if BMP085_SHARED_I2C && !I2C_USE_MUTUAL_EXCLUSION   165 #error "BMP085_SHARED_I2C requires I2C_USE_MUTUAL_EXCLUSION"   262 #if BMP085_USE_I2C || defined(__DOXYGEN__)   289 #if BMP085_USE_ADVANCED || defined(__DOXYGEN__)   320 #define _bmp085_baro_methods                                                 \   321   _base_barometer_methods   326 #define _bmp085_thermo_methods                                               \   327   _base_thermometer_methods   350 #define _bmp085_data                                                         \   351   _base_barometer_data                                                       \   352   _base_thermometer_data                                                     \   354   bmp085_state_t      state;                                                 \   356   const BMP085Config  *config;                                               \   358   float               barosensitivity[BMP085_BARO_NUMBER_OF_AXES];           \   360   int32_t             barobias[BMP085_BARO_NUMBER_OF_AXES];                  \   362   float               thermosensitivity[BMP085_THERMO_NUMBER_OF_AXES];       \   364   int32_t             thermobias[BMP085_THERMO_NUMBER_OF_AXES];              \   366   bmp085_cd_t         calibrationdata; const I2CConfig * i2ccfg
I2C configuration associated to this BMP085 subsystem. 
#define _bmp085_data
BMP085Driver specific data. 
Type of I2C driver configuration structure. 
BMP085 thermometer virtual methods table. 
BaseThermometer virtual methods table. 
const struct BaseBarometerVMT * vmt_basebarometer
BaseBarometer Virtual Methods Table. 
bmp085_baro_mode_t mode
BMP085 barometer subsystem mode. 
Generic barometer interface header. 
BaseBarometer virtual methods table. 
bmp085_baro_mode_t
BMP085 barometer subsystem mode. 
bmp085_baro_ct_t
BMP085 barometer subsystem pressure conversion time. 
float * bias
HTS221 initial bias. 
void bmp085Start(BMP085Driver *devp, const BMP085Config *config)
Configures and activates BMP085 Complex Driver peripheral. 
void bmp085Stop(BMP085Driver *devp)
Deactivates the BMP085 Complex Driver peripheral. 
const struct BaseThermometerVMT * vmt_basethermometer
BaseThermometer Virtual Methods Table. 
#define _bmp085_thermo_methods
BMP085 thermometer subsystem specific methods. 
void bmp085ObjectInit(BMP085Driver *devp)
Initializes an instance. 
Structure representing an I2C driver. 
I2CDriver * i2cp
I2C driver associated to this BMP085. 
bmp085_thermo_ct_t tct
BMP085 thermometer subsystem temperature conversion time. 
bmp085_state_t
Driver state machine possible states. 
BMP085 barometer virtual methods table. 
bmp085_thermo_ct_t
BMP085 thermometer subsystem temperature conversion time. 
#define _bmp085_baro_methods
BMP085 barometer subsystem specific methods. 
bmp085_baro_ct_t bct
BMP085 barometer subsystem pressure conversion time. 
BMP085 barometer subsystem calibration data. 
bmp085_baro_oss_t
BMP085 barometer oversampling setting. 
const struct BaseSensorVMT * vmt_basesensor
BaseSensor Virtual Methods Table. 
Generic thermometer interface header. 
BMP085 configuration structure. 
float * sensitivity
HTS221 initial sensitivity. 
bmp085_baro_oss_t oss
BMP085 barometer subsystem oversampling setting. 
float * outputdatarate
HTS221 output data rate selection. 
BaseSensor virtual methods table.