Classes | Macros | Typedefs | Functions | Variables
drv_bmp280.c File Reference
#include <stdint.h>
#include <breezystm32.h>
#include "drv_bmp280.h"
#include "drv_i2c.h"
Include dependency graph for drv_bmp280.c:

Go to the source code of this file.

Classes

struct  bmp280_calib_param_s
 

Macros

#define BMP280_CHIP_ID_REG   0xD0 /* Chip ID Register */
 
#define BMP280_CONFIG_REG   0xF5 /* Configuration Register */
 
#define BMP280_CTRL_MEAS_REG   0xF4 /* Ctrl Measure Register */
 
#define BMP280_DATA_FRAME_SIZE   6
 
#define BMP280_DEFAULT_ADDR   0x76
 
#define BMP280_DEFAULT_CHIP_ID   0x58
 
#define BMP280_FORCED_MODE   0x01
 
#define BMP280_NORMAL_MODE   0x03
 
#define BMP280_OVERSAMP_16X   0x05
 
#define BMP280_OVERSAMP_1X   0x01
 
#define BMP280_OVERSAMP_2X   0x02
 
#define BMP280_OVERSAMP_4X   0x03
 
#define BMP280_OVERSAMP_8X   0x04
 
#define BMP280_OVERSAMP_SKIPPED   0x00
 
#define BMP280_PRESSURE_LSB_REG   0xF8 /* Pressure LSB Register */
 
#define BMP280_PRESSURE_MSB_REG   0xF7 /* Pressure MSB Register */
 
#define BMP280_PRESSURE_TEMPERATURE_CALIB_DATA_LENGTH   24
 
#define BMP280_PRESSURE_XLSB_REG   0xF9 /* Pressure XLSB Register */
 
#define BMP280_RST_REG   0xE0 /* Softreset Register */
 
#define BMP280_STAT_REG   0xF3 /* Status Register */
 
#define BMP280_TEMPERATURE_CALIB_DIG_T1_LSB_REG   0x88
 
#define BMP280_TEMPERATURE_LSB_REG   0xFB /* Temperature LSB Reg */
 
#define BMP280_TEMPERATURE_MSB_REG   0xFA /* Temperature MSB Reg */
 
#define BMP280_TEMPERATURE_XLSB_REG   0xFC /* Temperature XLSB Reg */
 

Typedefs

typedef struct bmp280_calib_param_s bmp280_calib_param_t
 

Functions

void bmp280_async_read (float *pres, float *temp)
 
static void bmp280_async_read_cb (uint8_t result)
 
void bmp280_async_update ()
 
void bmp280_calculate (void)
 
static uint32_t bmp280_compensate_P (int32_t adc_P)
 
static int32_t bmp280_compensate_T (int32_t adc_T)
 
bool bmp280_init ()
 
bool bmp280_present ()
 
void bmp280_read (float *pres, float *temp)
 
void bmp280_update (void)
 

Variables

static volatile uint8_t async_read_status
 ASYNC Methods. More...
 
static bmp280_calib_param_t bmp280_cal
 
static uint8_t buffer [BMP280_DATA_FRAME_SIZE]
 
static bool new_data = false
 
static float pressure
 
static uint32_t pressure_raw
 
static bool sensor_present = false
 
static float temperature
 
static uint32_t temperature_raw
 

Macro Definition Documentation

#define BMP280_CHIP_ID_REG   0xD0 /* Chip ID Register */

Definition at line 12 of file drv_bmp280.c.

#define BMP280_CONFIG_REG   0xF5 /* Configuration Register */

Definition at line 16 of file drv_bmp280.c.

#define BMP280_CTRL_MEAS_REG   0xF4 /* Ctrl Measure Register */

Definition at line 15 of file drv_bmp280.c.

#define BMP280_DATA_FRAME_SIZE   6

Definition at line 28 of file drv_bmp280.c.

#define BMP280_DEFAULT_ADDR   0x76

Definition at line 8 of file drv_bmp280.c.

#define BMP280_DEFAULT_CHIP_ID   0x58

Definition at line 10 of file drv_bmp280.c.

#define BMP280_FORCED_MODE   0x01

Definition at line 23 of file drv_bmp280.c.

#define BMP280_NORMAL_MODE   0x03

Definition at line 24 of file drv_bmp280.c.

#define BMP280_OVERSAMP_16X   0x05

Definition at line 35 of file drv_bmp280.c.

#define BMP280_OVERSAMP_1X   0x01

Definition at line 31 of file drv_bmp280.c.

#define BMP280_OVERSAMP_2X   0x02

Definition at line 32 of file drv_bmp280.c.

#define BMP280_OVERSAMP_4X   0x03

Definition at line 33 of file drv_bmp280.c.

#define BMP280_OVERSAMP_8X   0x04

Definition at line 34 of file drv_bmp280.c.

#define BMP280_OVERSAMP_SKIPPED   0x00

Definition at line 30 of file drv_bmp280.c.

#define BMP280_PRESSURE_LSB_REG   0xF8 /* Pressure LSB Register */

Definition at line 18 of file drv_bmp280.c.

#define BMP280_PRESSURE_MSB_REG   0xF7 /* Pressure MSB Register */

Definition at line 17 of file drv_bmp280.c.

#define BMP280_PRESSURE_TEMPERATURE_CALIB_DATA_LENGTH   24

Definition at line 27 of file drv_bmp280.c.

#define BMP280_PRESSURE_XLSB_REG   0xF9 /* Pressure XLSB Register */

Definition at line 19 of file drv_bmp280.c.

#define BMP280_RST_REG   0xE0 /* Softreset Register */

Definition at line 13 of file drv_bmp280.c.

#define BMP280_STAT_REG   0xF3 /* Status Register */

Definition at line 14 of file drv_bmp280.c.

#define BMP280_TEMPERATURE_CALIB_DIG_T1_LSB_REG   0x88

Definition at line 26 of file drv_bmp280.c.

#define BMP280_TEMPERATURE_LSB_REG   0xFB /* Temperature LSB Reg */

Definition at line 21 of file drv_bmp280.c.

#define BMP280_TEMPERATURE_MSB_REG   0xFA /* Temperature MSB Reg */

Definition at line 20 of file drv_bmp280.c.

#define BMP280_TEMPERATURE_XLSB_REG   0xFC /* Temperature XLSB Reg */

Definition at line 22 of file drv_bmp280.c.

Typedef Documentation

Function Documentation

void bmp280_async_read ( float *  pres,
float *  temp 
)

Definition at line 180 of file drv_bmp280.c.

static void bmp280_async_read_cb ( uint8_t  result)
static

Definition at line 153 of file drv_bmp280.c.

void bmp280_async_update ( void  )

Definition at line 163 of file drv_bmp280.c.

void bmp280_calculate ( void  )

Definition at line 124 of file drv_bmp280.c.

static uint32_t bmp280_compensate_P ( int32_t  adc_P)
static

Definition at line 105 of file drv_bmp280.c.

static int32_t bmp280_compensate_T ( int32_t  adc_T)
static

Definition at line 91 of file drv_bmp280.c.

bool bmp280_init ( )

Definition at line 69 of file drv_bmp280.c.

bool bmp280_present ( void  )

Definition at line 64 of file drv_bmp280.c.

void bmp280_read ( float *  pres,
float *  temp 
)

Definition at line 140 of file drv_bmp280.c.

void bmp280_update ( void  )

Definition at line 131 of file drv_bmp280.c.

Variable Documentation

volatile uint8_t async_read_status
static

ASYNC Methods.

Definition at line 152 of file drv_bmp280.c.

bmp280_calib_param_t bmp280_cal
static

Definition at line 54 of file drv_bmp280.c.

uint8_t buffer[BMP280_DATA_FRAME_SIZE]
static

Definition at line 61 of file drv_bmp280.c.

bool new_data = false
static

Definition at line 62 of file drv_bmp280.c.

float pressure
static

Definition at line 59 of file drv_bmp280.c.

uint32_t pressure_raw
static

Definition at line 57 of file drv_bmp280.c.

bool sensor_present = false
static

Definition at line 56 of file drv_bmp280.c.

float temperature
static

Definition at line 60 of file drv_bmp280.c.

uint32_t temperature_raw
static

Definition at line 58 of file drv_bmp280.c.



rosflight_firmware
Author(s): Daniel Koch , James Jackson
autogenerated on Thu Oct 24 2019 03:17:20