ChibiOS  21.6.0
bmp085.h File Reference

BMP085 Digital pressure sensor interface module header. More...

#include "ex_barometer.h"
#include "ex_thermometer.h"

Go to the source code of this file.

Data Structures

struct  bmp085_cd_t
 BMP085 barometer subsystem calibration data. More...
 
struct  BMP085Config
 BMP085 configuration structure. More...
 
struct  BMP085BAROVMT
 BMP085 barometer virtual methods table. More...
 
struct  BMP085THERMOVMT
 BMP085 thermometer virtual methods table. More...
 
struct  BMP085Driver
 BMP085 driver structure. More...
 

Macros

Version identification
#define EX_BMP085_VERSION   "1.0.1"
 BMP085 driver version string. More...
 
#define EX_BMP085_MAJOR   1
 BMP085 driver version major number. More...
 
#define EX_BMP085_MINOR   0
 BMP085 driver version minor number. More...
 
#define EX_BMP085_PATCH   1
 BMP085 driver version patch number. More...
 
#define BMP085_BARO_NUMBER_OF_AXES   1U
 BMP085 barometer subsystem characteristics. More...
 
#define BMP085_P_RES   0.01
 
#define BMP085_THERMO_NUMBER_OF_AXES   1U
 BMP085 thermometer subsystem characteristics. More...
 
#define BMP085_T_RES   0.1
 
BMP085 Registers addresses.
#define BMP085_AD_CR   0xF4
 
#define BMP085_AD_T_DR_MSB   0xF6
 
#define BMP085_AD_T_DR_LSB   0xF7
 
#define BMP085_AD_P_DR_MSB   0xF6
 
#define BMP085_AD_P_DR_LSB   0xF7
 
#define BMP085_AD_P_DR_XLSB   0xF8
 
#define BMP085_AD_CC_AC1_MSB   0xAA
 
#define BMP085_AD_CC_AC1_LSB   0xAB
 
#define BMP085_AD_CC_AC2_MSB   0xAC
 
#define BMP085_AD_CC_AC2_LSB   0xAD
 
#define BMP085_AD_CC_AC3_MSB   0xAE
 
#define BMP085_AD_CC_AC3_LSB   0xAF
 
#define BMP085_AD_CC_AC4_MSB   0xB0
 
#define BMP085_AD_CC_AC4_LSB   0xB1
 
#define BMP085_AD_CC_AC5_MSB   0xB2
 
#define BMP085_AD_CC_AC5_LSB   0xB3
 
#define BMP085_AD_CC_AC6_MSB   0xB4
 
#define BMP085_AD_CC_AC6_LSB   0xB5
 
#define BMP085_AD_CC_B1_MSB   0xB6
 
#define BMP085_AD_CC_B1_LSB   0xB7
 
#define BMP085_AD_CC_B2_MSB   0xB8
 
#define BMP085_AD_CC_B2_LSB   0xB9
 
#define BMP085_AD_CC_MB_MSB   0xBA
 
#define BMP085_AD_CC_MB_LSB   0xBB
 
#define BMP085_AD_CC_MC_MSB   0xBC
 
#define BMP085_AD_CC_MC_LSB   0xBD
 
#define BMP085_AD_CC_MD_MSB   0xBE
 
#define BMP085_AD_CC_MD_LSB   0xBF
 
Configuration options
#define BMP085_USE_I2C   TRUE
 BMP085 I2C interface selector. More...
 
#define BMP085_USE_ADVANCED   TRUE
 BMP085 sensor subsystem advanced configurations switch. More...
 
#define BMP085_SHARED_I2C   FALSE
 BMP085 shared I2C switch. More...
 

Enumerations

BMP085 barometer subsystem data structures and types.
enum  bmp085_baro_ct_t { BMP085_BARO_CT_LOW = 0x05, BMP085_BARO_CT_STD = 0x18, BMP085_BARO_CT_HR = 0x0E, BMP085_BARO_CT_LUHR = 0x1A }
 BMP085 barometer subsystem pressure conversion time. More...
 
enum  bmp085_baro_mode_t { BMP085_BARO_MODE_LOW = 0x00, BMP085_BARO_MODE_STD = 0x01, BMP085_BARO_MODE_HR = 0x02, BMP085_BARO_MODE_LUHR = 0x03 }
 BMP085 barometer subsystem mode. More...
 
enum  bmp085_baro_oss_t { BMP085_BARO_OSS_0 = 0x00, BMP085_BARO_OSS_1 = 0x01, BMP085_BARO_OSS_2 = 0x02, BMP085_BARO_OSS_3 = 0x04 }
 BMP085 barometer oversampling setting. More...
 
BMP085 thermometer subsystem data structures and types.
enum  bmp085_thermo_ct_t { BMP085_THERMO_CT_LOW = 0x05, BMP085_THERMO_CT_STD = 0x18, BMP085_THERMO_CT_HR = 0x0E, BMP085_THERMO_CT_LUHR = 0x1A }
 BMP085 thermometer subsystem temperature conversion time. More...
 

Functions

void bmp085ObjectInit (BMP085Driver *devp)
 Initializes an instance. More...
 
void bmp085Start (BMP085Driver *devp, const BMP085Config *config)
 Configures and activates BMP085 Complex Driver peripheral. More...
 
void bmp085Stop (BMP085Driver *devp)
 Deactivates the BMP085 Complex Driver peripheral. More...
 

BMP085 main system data structures and types.

#define _bmp085_baro_methods   _base_barometer_methods
 BMP085 barometer subsystem specific methods. More...
 
#define _bmp085_thermo_methods   _base_thermometer_methods
 BMP085 thermometer subsystem specific methods. More...
 
#define _bmp085_data
 BMP085Driver specific data. More...
 
enum  bmp085_state_t { BMP085_UNINIT = 0, BMP085_STOP = 1, BMP085_READY = 2 }
 Driver state machine possible states. More...
 
typedef struct BMP085Driver BMP085Driver
 Structure representing a BMP085 driver. More...
 

Detailed Description

BMP085 Digital pressure sensor interface module header.

Definition in file bmp085.h.