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.
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.
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.