bmp280.c File Reference

BMP280 Sensor Driver.

License

The licensor of this software is Silicon Laboratories Inc. Your use of this software is governed by the terms of Silicon Labs Master Software License Agreement (MSLA) available at www.silabs.com/about-us/legal/master-software-license-agreement. This software is Third Party Software licensed by Silicon Labs from a third party and is governed by the sections of the MSLA applicable to Third Party Software and the additional terms set forth below.

Definition in file bmp280.c .

#include " bmp280.h "

Functions

double bmp280_compensate_pressure_double ( s32 v_uncomp_pressure_s32)
Reads actual pressure from uncompensated pressure and returns pressure in Pa as double.
u32 bmp280_compensate_pressure_int32 ( s32 v_uncomp_pressure_s32)
Reads actual pressure from uncompensated pressure and returns the value in Pascal(Pa)
u32 bmp280_compensate_pressure_int64 ( s32 v_uncomp_pressure_s32)
This API used to read actual pressure from uncompensated pressure.
double bmp280_compensate_temperature_double ( s32 v_uncomp_temperature_s32)
This API used to read actual temperature from uncompensated temperature.
s32 bmp280_compensate_temperature_int32 ( s32 v_uncomp_temperature_s32)
Reads actual temperature from uncompensated temperature.
BMP280_RETURN_FUNCTION_TYPE bmp280_compute_wait_time ( u8 *v_delaytime_u8r)
Computing waiting time for sensor data read.
BMP280_RETURN_FUNCTION_TYPE bmp280_get_calib_param (void)
This API is used to calibration parameters used for calculation in the registers.
BMP280_RETURN_FUNCTION_TYPE bmp280_get_filter ( u8 *v_value_u8)
This API is used to reads filter setting in the register 0xF5 bit 3 and 4.
BMP280_RETURN_FUNCTION_TYPE bmp280_get_forced_uncomp_pressure_temperature ( s32 *v_uncomp_pressure_s32, s32 *v_uncomp_temperature_s32)
This API used to read both uncompensated pressure and temperature in forced mode.
BMP280_RETURN_FUNCTION_TYPE bmp280_get_oversamp_pressure ( u8 *v_value_u8)
This API is used to get the pressure oversampling setting in the register 0xF4 bits from 2 to 4.
BMP280_RETURN_FUNCTION_TYPE bmp280_get_oversamp_temperature ( u8 *v_value_u8)
This API is used to get the temperature oversampling setting in the register 0xF4 bits from 5 to 7.
BMP280_RETURN_FUNCTION_TYPE bmp280_get_power_mode ( u8 *v_power_mode_u8)
This API used to get the Operational Mode from the sensor in the register 0xF4 bit 0 and 1.
BMP280_RETURN_FUNCTION_TYPE bmp280_get_spi3 ( u8 *v_enable_disable_u8)
This API used to get the sensor SPI mode(communication type) in the register 0xF5 bit 0.
BMP280_RETURN_FUNCTION_TYPE bmp280_get_standby_durn ( u8 *v_standby_durn_u8)
This API used to Read the standby duration time from the sensor in the register 0xF5 bit 5 to 7.
BMP280_RETURN_FUNCTION_TYPE bmp280_init (struct bmp280_t *bmp280)
This function is used for initialize the bus read and bus write functions and assign the chip id and I2C address of the BMP280 sensor chip id is read in the register 0xD0 bit from 0 to 7.
BMP280_RETURN_FUNCTION_TYPE bmp280_read_pressure_temperature ( u32 *v_pressure_u32, s32 *v_temperature_s32)
This API reads the true pressure and temperature.
BMP280_RETURN_FUNCTION_TYPE bmp280_read_register ( u8 v_addr_u8, u8 *v_data_u8, u8 v_len_u8)
This API reads the data from the given register.
BMP280_RETURN_FUNCTION_TYPE bmp280_read_uncomp_pressure ( s32 *v_uncomp_pressure_s32)
This API is used to read uncompensated pressure. in the registers 0xF7, 0xF8 and 0xF9.
BMP280_RETURN_FUNCTION_TYPE bmp280_read_uncomp_pressure_temperature ( s32 *v_uncomp_pressure_s32, s32 *v_uncomp_temperature_s32)
reads uncompensated pressure and temperature
BMP280_RETURN_FUNCTION_TYPE bmp280_read_uncomp_temperature ( s32 *v_uncomp_temperature_s32)
This API is used to read uncompensated temperature in the registers 0xFA, 0xFB and 0xFC.
BMP280_RETURN_FUNCTION_TYPE bmp280_set_filter ( u8 v_value_u8)
This API is used to write filter setting in the register 0xF5 bit 3 and 4.
BMP280_RETURN_FUNCTION_TYPE bmp280_set_oversamp_pressure ( u8 v_value_u8)
This API is used to set the pressure oversampling setting in the register 0xF4 bits from 2 to 4.
BMP280_RETURN_FUNCTION_TYPE bmp280_set_oversamp_temperature ( u8 v_value_u8)
This API is used to set the temperature oversampling setting in the register 0xF4 bits from 5 to 7.
BMP280_RETURN_FUNCTION_TYPE bmp280_set_power_mode ( u8 v_power_mode_u8)
This API used to set the Operational Mode from the sensor in the register 0xF4 bit 0 and 1.
BMP280_RETURN_FUNCTION_TYPE bmp280_set_soft_rst (void)
Used to reset the sensor The value 0xB6 is written to the 0xE0 register the device is reset using the complete power-on-reset procedure. Soft reset can be easily set using bmp280_set_softreset().
BMP280_RETURN_FUNCTION_TYPE bmp280_set_spi3 ( u8 v_enable_disable_u8)
This API used to set the sensor SPI mode(communication type) in the register 0xF5 bit 0.
BMP280_RETURN_FUNCTION_TYPE bmp280_set_standby_durn ( u8 v_standby_durn_u8)
This API used to Read the standby duration time from the sensor in the register 0xF5 bit 5 to 7.
BMP280_RETURN_FUNCTION_TYPE bmp280_set_work_mode ( u8 v_work_mode_u8)
This API is used to write the working mode of the sensor.
BMP280_RETURN_FUNCTION_TYPE bmp280_write_register ( u8 v_addr_u8, u8 *v_data_u8, u8 v_len_u8)
This API write the data to the given register.

Variables

static struct bmp280_t * p_bmp280

Function Documentation

double bmp280_compensate_pressure_double ( s32 v_uncomp_pressure_s32 )

Reads actual pressure from uncompensated pressure and returns pressure in Pa as double.

Note
Output value of "96386.2" equals 96386.2 Pa = 963.862 hPa.
Parameters
v_uncomp_pressure_s32 : value of uncompensated pressure
Returns
Actual pressure in floating point

Definition at line 1394 of file bmp280.c .

References bmp280_t::calib_param , bmp280_calib_param_t::dig_P1 , bmp280_calib_param_t::dig_P2 , bmp280_calib_param_t::dig_P3 , bmp280_calib_param_t::dig_P4 , bmp280_calib_param_t::dig_P5 , bmp280_calib_param_t::dig_P6 , bmp280_calib_param_t::dig_P7 , bmp280_calib_param_t::dig_P8 , bmp280_calib_param_t::dig_P9 , and bmp280_calib_param_t::t_fine .

u32 bmp280_compensate_pressure_int32 ( s32 v_uncomp_pressure_s32 )

Reads actual pressure from uncompensated pressure and returns the value in Pascal(Pa)

Note
Output value of "96386" equals 96386 Pa = 963.86 hPa = 963.86 millibar
Parameters
v_uncomp_pressure_s32 value of uncompensated pressure
Returns
Returns the Actual pressure out put as s32

Definition at line 293 of file bmp280.c .

References bmp280_t::calib_param , bmp280_calib_param_t::dig_P1 , bmp280_calib_param_t::dig_P2 , bmp280_calib_param_t::dig_P3 , bmp280_calib_param_t::dig_P4 , bmp280_calib_param_t::dig_P5 , bmp280_calib_param_t::dig_P6 , bmp280_calib_param_t::dig_P7 , bmp280_calib_param_t::dig_P8 , bmp280_calib_param_t::dig_P9 , and bmp280_calib_param_t::t_fine .

Referenced by bmp280_read_pressure_temperature() .

u32 bmp280_compensate_pressure_int64 ( s32 v_uncomp_pressure_s32 )

This API used to read actual pressure from uncompensated pressure.

Note
returns the value in Pa as unsigned 32 bit integer in Q24.8 format (24 integer bits and 8 fractional bits). Output value of "24674867" represents 24674867 / 256 = 96386.2 Pa = 963.862 hPa
Parameters
v_uncomp_pressure_s32 : value of uncompensated pressure
Returns
actual pressure as 64bit output

Definition at line 1445 of file bmp280.c .

References bmp280_t::calib_param , bmp280_calib_param_t::dig_P1 , bmp280_calib_param_t::dig_P2 , bmp280_calib_param_t::dig_P3 , bmp280_calib_param_t::dig_P4 , bmp280_calib_param_t::dig_P5 , bmp280_calib_param_t::dig_P6 , bmp280_calib_param_t::dig_P7 , bmp280_calib_param_t::dig_P8 , bmp280_calib_param_t::dig_P9 , and bmp280_calib_param_t::t_fine .

Referenced by BAP_getPressure() .

double bmp280_compensate_temperature_double ( s32 v_uncomp_temperature_s32 )

This API used to read actual temperature from uncompensated temperature.

Note
Returns the value in Degree centigrade
Output value of "51.23" equals 51.23 DegC.
Parameters
v_uncomp_temperature_s32 : value of uncompensated temperature
Returns
Actual temperature in floating point

Definition at line 1356 of file bmp280.c .

References bmp280_t::calib_param , bmp280_calib_param_t::dig_T1 , bmp280_calib_param_t::dig_T2 , bmp280_calib_param_t::dig_T3 , and bmp280_calib_param_t::t_fine .

s32 bmp280_compensate_temperature_int32 ( s32 v_uncomp_temperature_s32 )

Reads actual temperature from uncompensated temperature.

Note
Returns the value in 0.01 degree Centigrade
Output value of "5123" equals 51.23 DegC.
Parameters
v_uncomp_temperature_s32 : value of uncompensated temperature
Returns
Actual temperature output as s32

Definition at line 198 of file bmp280.c .

References bmp280_t::calib_param , bmp280_calib_param_t::dig_T1 , bmp280_calib_param_t::dig_T2 , bmp280_calib_param_t::dig_T3 , and bmp280_calib_param_t::t_fine .

Referenced by BAP_getPressure() , BAP_getTemperature() , and bmp280_read_pressure_temperature() .

BMP280_RETURN_FUNCTION_TYPE bmp280_compute_wait_time ( u8 * v_delaytime_u8r )

Computing waiting time for sensor data read.

Parameters
v_delaytime_u8r The value of delay time
Returns
0

Definition at line 1508 of file bmp280.c .

References bmp280_t::oversamp_pressure , and bmp280_t::oversamp_temperature .

Referenced by bmp280_get_forced_uncomp_pressure_temperature() .

BMP280_RETURN_FUNCTION_TYPE bmp280_get_calib_param ( void )

This API is used to calibration parameters used for calculation in the registers.

parameter Register address bit
dig_T1 0x88 and 0x89 from 0 : 7 to 8: 15
dig_T2 0x8A and 0x8B from 0 : 7 to 8: 15
dig_T3 0x8C and 0x8D from 0 : 7 to 8: 15
dig_P1 0x8E and 0x8F from 0 : 7 to 8: 15
dig_P2 0x90 and 0x91 from 0 : 7 to 8: 15
dig_P3 0x92 and 0x93 from 0 : 7 to 8: 15
dig_P4 0x94 and 0x95 from 0 : 7 to 8: 15
dig_P5 0x96 and 0x97 from 0 : 7 to 8: 15
dig_P6 0x98 and 0x99 from 0 : 7 to 8: 15
dig_P7 0x9A and 0x9B from 0 : 7 to 8: 15
dig_P8 0x9C and 0x9D from 0 : 7 to 8: 15
dig_P9 0x9E and 0x9F from 0 : 7 to 8: 15
Returns
results of bus communication function
Return values
0 -> Success
-1 -> Error

Definition at line 486 of file bmp280.c .

References bmp280_t::calib_param , bmp280_t::dev_addr , bmp280_calib_param_t::dig_P1 , bmp280_calib_param_t::dig_P2 , bmp280_calib_param_t::dig_P3 , bmp280_calib_param_t::dig_P4 , bmp280_calib_param_t::dig_P5 , bmp280_calib_param_t::dig_P6 , bmp280_calib_param_t::dig_P7 , bmp280_calib_param_t::dig_P8 , bmp280_calib_param_t::dig_P9 , bmp280_calib_param_t::dig_T1 , bmp280_calib_param_t::dig_T2 , and bmp280_calib_param_t::dig_T3 .

Referenced by bmp280_init() .

BMP280_RETURN_FUNCTION_TYPE bmp280_get_filter ( u8 * v_value_u8 )

This API is used to reads filter setting in the register 0xF5 bit 3 and 4.

Parameters
v_value_u8 : The value of filter coefficient
value Filter coefficient
0x00 BMP280_FILTER_COEFF_OFF
0x01 BMP280_FILTER_COEFF_2
0x02 BMP280_FILTER_COEFF_4
0x03 BMP280_FILTER_COEFF_8
0x04 BMP280_FILTER_COEFF_16
Returns
results of bus communication function
Return values
0 -> Success
-1 -> Error

Definition at line 984 of file bmp280.c .

References bmp280_t::dev_addr .

BMP280_RETURN_FUNCTION_TYPE bmp280_get_forced_uncomp_pressure_temperature ( s32 * v_uncomp_pressure_s32,
s32 * v_uncomp_temperature_s32
)

This API used to read both uncompensated pressure and temperature in forced mode.

Parameters
v_uncomp_pressure_s32 The value of uncompensated pressure.
v_uncomp_temperature_s32 The value of uncompensated temperature
Returns
results of bus communication function
Return values
0 -> Success
-1 -> Error

Definition at line 1249 of file bmp280.c .

References bmp280_compute_wait_time() , bmp280_read_uncomp_pressure_temperature() , bmp280_t::delay_msec , bmp280_t::dev_addr , bmp280_t::oversamp_pressure , and bmp280_t::oversamp_temperature .

Referenced by BAP_getPressure() , and BAP_getTemperature() .

BMP280_RETURN_FUNCTION_TYPE bmp280_get_oversamp_pressure ( u8 * v_value_u8 )

This API is used to get the pressure oversampling setting in the register 0xF4 bits from 2 to 4.

value Pressure oversampling
0x00 BMP280_OVERSAMP_SKIPPED
0x01 BMP280_OVERSAMP_1X
0x02 BMP280_OVERSAMP_2X
0x03 BMP280_OVERSAMP_4X
0x04 BMP280_OVERSAMP_8X
0x05,0x06 and 0x07 BMP280_OVERSAMP_16X
Parameters
v_value_u8 : The value of pressure over sampling
Returns
results of bus communication function
Return values
0 -> Success
-1 -> Error

Definition at line 693 of file bmp280.c .

References bmp280_t::dev_addr , and bmp280_t::oversamp_pressure .

BMP280_RETURN_FUNCTION_TYPE bmp280_get_oversamp_temperature ( u8 * v_value_u8 )

This API is used to get the temperature oversampling setting in the register 0xF4 bits from 5 to 7.

value Temperature oversampling
0x00 BMP280_OVERSAMP_SKIPPED
0x01 BMP280_OVERSAMP_1X
0x02 BMP280_OVERSAMP_2X
0x03 BMP280_OVERSAMP_4X
0x04 BMP280_OVERSAMP_8X
0x05,0x06 and 0x07 BMP280_OVERSAMP_16X
Parameters
v_value_u8 :The value of temperature over sampling
Returns
results of bus communication function
Return values
0 -> Success
-1 -> Error

Definition at line 596 of file bmp280.c .

References bmp280_t::dev_addr , and bmp280_t::oversamp_temperature .

BMP280_RETURN_FUNCTION_TYPE bmp280_get_power_mode ( u8 * v_power_mode_u8 )

This API used to get the Operational Mode from the sensor in the register 0xF4 bit 0 and 1.

Parameters
v_power_mode_u8 : The value of power mode value
value Power mode
0x00 BMP280_SLEEP_MODE
0x01 and 0x02 BMP280_FORCED_MODE
0x03 BMP280_NORMAL_MODE
Returns
results of bus communication function
Return values
0 -> Success
-1 -> Error

Definition at line 785 of file bmp280.c .

References bmp280_t::dev_addr .

BMP280_RETURN_FUNCTION_TYPE bmp280_get_spi3 ( u8 * v_enable_disable_u8 )

This API used to get the sensor SPI mode(communication type) in the register 0xF5 bit 0.

Parameters
v_enable_disable_u8 : The spi3 enable or disable state
value Description
0 Disable
1 Enable
Returns
results of bus communication function
Return values
0 -> Success
-1 -> Error

Definition at line 901 of file bmp280.c .

References bmp280_t::dev_addr .

BMP280_RETURN_FUNCTION_TYPE bmp280_get_standby_durn ( u8 * v_standby_durn_u8 )

This API used to Read the standby duration time from the sensor in the register 0xF5 bit 5 to 7.

Parameters
v_standby_durn_u8 : The standby duration time value.
value standby duration
0x00 BMP280_STANDBYTIME_1_MS
0x01 BMP280_STANDBYTIME_63_MS
0x02 BMP280_STANDBYTIME_125_MS
0x03 BMP280_STANDBYTIME_250_MS
0x04 BMP280_STANDBYTIME_500_MS
0x05 BMP280_STANDBYTIME_1000_MS
0x06 BMP280_STANDBYTIME_2000_MS
0x07 BMP280_STANDBYTIME_4000_MS
Returns
results of bus communication function
Return values
0 -> Success
-1 -> Error

Definition at line 1071 of file bmp280.c .

References bmp280_t::dev_addr .

BMP280_RETURN_FUNCTION_TYPE bmp280_init ( struct bmp280_t * bmp280 )

This function is used for initialize the bus read and bus write functions and assign the chip id and I2C address of the BMP280 sensor chip id is read in the register 0xD0 bit from 0 to 7.

Parameters
*bmp280 structure pointer.
Note
While changing the parameter of the p_bmp280
consider the following point: Changing the reference value of the parameter will changes the local copy or local reference make sure your changes will not affect the reference value of the parameter (Better case don't change the reference value of the parameter)
Returns
results of bus communication function
Return values
0 -> Success
-1 -> Error

Definition at line 98 of file bmp280.c .

References bmp280_get_calib_param() , bmp280_t::chip_id , bmp280_t::delay_msec , and bmp280_t::dev_addr .

Referenced by BAP_init() .

BMP280_RETURN_FUNCTION_TYPE bmp280_read_pressure_temperature ( u32 * v_pressure_u32,
s32 * v_temperature_s32
)

This API reads the true pressure and temperature.

Parameters
v_pressure_u32 : The value of compensated pressure.
v_temperature_s32 : The value of compensated temperature.
Returns
results of bus communication function
Return values
0 -> Success
-1 -> Error

Definition at line 438 of file bmp280.c .

References bmp280_compensate_pressure_int32() , bmp280_compensate_temperature_int32() , and bmp280_read_uncomp_pressure_temperature() .

BMP280_RETURN_FUNCTION_TYPE bmp280_read_register ( u8 v_addr_u8,
u8 * v_data_u8,
u8 v_len_u8
)

This API reads the data from the given register.

Parameters
v_addr_u8 -> Address of the register
v_data_u8 -> The data from the register
v_len_u8 -> no of bytes to read
Returns
results of bus communication function
Return values
0 -> Success
-1 -> Error

Definition at line 1325 of file bmp280.c .

References bmp280_t::dev_addr .

BMP280_RETURN_FUNCTION_TYPE bmp280_read_uncomp_pressure ( s32 * v_uncomp_pressure_s32 )

This API is used to read uncompensated pressure. in the registers 0xF7, 0xF8 and 0xF9.

Note
0xF7 -> MSB -> bit from 0 to 7
0xF8 -> LSB -> bit from 0 to 7
0xF9 -> LSB -> bit from 4 to 7
Parameters
v_uncomp_pressure_s32 : The value of uncompensated pressure
Returns
results of bus communication function
Return values
0 -> Success
-1 -> Error

Definition at line 248 of file bmp280.c .

References bmp280_t::dev_addr .

Referenced by BAP_getPressure() .

BMP280_RETURN_FUNCTION_TYPE bmp280_read_uncomp_pressure_temperature ( s32 * v_uncomp_pressure_s32,
s32 * v_uncomp_temperature_s32
)

reads uncompensated pressure and temperature

Parameters
v_uncomp_pressure_s32 The value of uncompensated pressure.
v_uncomp_temperature_s32 The value of uncompensated temperature.
Returns
results of bus communication function
Return values
0 -> Success
-1 -> Error

Definition at line 377 of file bmp280.c .

References bmp280_t::dev_addr .

Referenced by bmp280_get_forced_uncomp_pressure_temperature() , and bmp280_read_pressure_temperature() .

BMP280_RETURN_FUNCTION_TYPE bmp280_read_uncomp_temperature ( s32 * v_uncomp_temperature_s32 )

This API is used to read uncompensated temperature in the registers 0xFA, 0xFB and 0xFC.

Note
0xFA -> MSB -> bit from 0 to 7
0xFB -> LSB -> bit from 0 to 7
0xFC -> LSB -> bit from 4 to 7
Parameters
v_uncomp_temperature_s32 : The uncompensated temperature.
Returns
results of bus communication function
Return values
0 -> Success
-1 -> Error

Definition at line 152 of file bmp280.c .

References bmp280_t::dev_addr .

Referenced by BAP_getPressure() , and BAP_getTemperature() .

BMP280_RETURN_FUNCTION_TYPE bmp280_set_filter ( u8 v_value_u8 )

This API is used to write filter setting in the register 0xF5 bit 3 and 4.

Parameters
v_value_u8 : The value of filter coefficient
value Filter coefficient
0x00 BMP280_FILTER_COEFF_OFF
0x01 BMP280_FILTER_COEFF_2
0x02 BMP280_FILTER_COEFF_4
0x03 BMP280_FILTER_COEFF_8
0x04 BMP280_FILTER_COEFF_16
Returns
results of bus communication function
Return values
0 -> Success
-1 -> Error

Definition at line 1023 of file bmp280.c .

References bmp280_t::dev_addr .

BMP280_RETURN_FUNCTION_TYPE bmp280_set_oversamp_pressure ( u8 v_value_u8 )

This API is used to set the pressure oversampling setting in the register 0xF4 bits from 2 to 4.

value Pressure oversampling
0x00 BMP280_OVERSAMP_SKIPPED
0x01 BMP280_OVERSAMP_1X
0x02 BMP280_OVERSAMP_2X
0x03 BMP280_OVERSAMP_4X
0x04 BMP280_OVERSAMP_8X
0x05,0x06 and 0x07 BMP280_OVERSAMP_16X
Parameters
v_value_u8 : The value of pressure over sampling
Returns
results of bus communication function
Return values
0 -> Success
-1 -> Error

Definition at line 738 of file bmp280.c .

References bmp280_t::dev_addr , and bmp280_t::oversamp_pressure .

BMP280_RETURN_FUNCTION_TYPE bmp280_set_oversamp_temperature ( u8 v_value_u8 )

This API is used to set the temperature oversampling setting in the register 0xF4 bits from 5 to 7.

value Temperature oversampling
0x00 BMP280_OVERSAMP_SKIPPED
0x01 BMP280_OVERSAMP_1X
0x02 BMP280_OVERSAMP_2X
0x03 BMP280_OVERSAMP_4X
0x04 BMP280_OVERSAMP_8X
0x05,0x06 and 0x07 BMP280_OVERSAMP_16X
Parameters
v_value_u8 :The value of temperature over sampling
Returns
results of bus communication function
Return values
0 -> Success
-1 -> Error

Definition at line 641 of file bmp280.c .

References bmp280_t::dev_addr , and bmp280_t::oversamp_temperature .

BMP280_RETURN_FUNCTION_TYPE bmp280_set_power_mode ( u8 v_power_mode_u8 )

This API used to set the Operational Mode from the sensor in the register 0xF4 bit 0 and 1.

Parameters
v_power_mode_u8 : The value of power mode value
value Power mode
0x00 BMP280_SLEEP_MODE
0x01 and 0x02 BMP280_FORCED_MODE
0x03 BMP280_NORMAL_MODE
Returns
results of bus communication function
Return values
0 -> Success
-1 -> Error

Definition at line 822 of file bmp280.c .

References bmp280_t::dev_addr , bmp280_t::oversamp_pressure , and bmp280_t::oversamp_temperature .

Referenced by BAP_config() , BAP_deInit() , and BAP_init() .

BMP280_RETURN_FUNCTION_TYPE bmp280_set_soft_rst ( void )

Used to reset the sensor The value 0xB6 is written to the 0xE0 register the device is reset using the complete power-on-reset procedure. Soft reset can be easily set using bmp280_set_softreset().

Note
Usage Hint : bmp280_set_softreset()
Returns
results of bus communication function
Return values
0 -> Success
-1 -> Error

Definition at line 865 of file bmp280.c .

References bmp280_t::dev_addr .

BMP280_RETURN_FUNCTION_TYPE bmp280_set_spi3 ( u8 v_enable_disable_u8 )

This API used to set the sensor SPI mode(communication type) in the register 0xF5 bit 0.

Parameters
v_enable_disable_u8 : The spi3 enable or disable state
value Description
0 Disable
1 Enable
Returns
results of bus communication function
Return values
0 -> Success
-1 -> Error

Definition at line 938 of file bmp280.c .

References bmp280_t::dev_addr .

BMP280_RETURN_FUNCTION_TYPE bmp280_set_standby_durn ( u8 v_standby_durn_u8 )

This API used to Read the standby duration time from the sensor in the register 0xF5 bit 5 to 7.

Note
Normal mode comprises an automated perpetual cycling between an (active) Measurement period and an (inactive) standby period.
The standby time is determined by the contents of the register t_sb. Standby time can be set using BMP280_STANDBYTIME_125_MS.
bmp280_set_standby_durn(BMP280_STANDBYTIME_125_MS)
Parameters
v_standby_durn_u8 : The standby duration time value.
value standby duration
0x00 BMP280_STANDBYTIME_1_MS
0x01 BMP280_STANDBYTIME_63_MS
0x02 BMP280_STANDBYTIME_125_MS
0x03 BMP280_STANDBYTIME_250_MS
0x04 BMP280_STANDBYTIME_500_MS
0x05 BMP280_STANDBYTIME_1000_MS
0x06 BMP280_STANDBYTIME_2000_MS
0x07 BMP280_STANDBYTIME_4000_MS
Returns
results of bus communication function
Return values
0 -> Success
-1 -> Error

Definition at line 1124 of file bmp280.c .

References bmp280_t::dev_addr .

Referenced by BAP_config() .

BMP280_RETURN_FUNCTION_TYPE bmp280_set_work_mode ( u8 v_work_mode_u8 )

This API is used to write the working mode of the sensor.

Parameters
v_work_mode_u8 : The value of work mode
value mode
0 BMP280_ULTRA_LOW_POWER_MODE
1 BMP280_LOW_POWER_MODE
2 BMP280_STANDARD_RESOLUTION_MODE
3 BMP280_HIGH_RESOLUTION_MODE
4 BMP280_ULTRA_HIGH_RESOLUTION_MODE
Returns
results of bus communication function
Return values
0 -> Success
-1 -> Error

Definition at line 1170 of file bmp280.c .

References bmp280_t::dev_addr , bmp280_t::oversamp_pressure , and bmp280_t::oversamp_temperature .

Referenced by BAP_config() , and BAP_init() .

BMP280_RETURN_FUNCTION_TYPE bmp280_write_register ( u8 v_addr_u8,
u8 * v_data_u8,
u8 v_len_u8
)

This API write the data to the given register.

Parameters
v_addr_u8 -> Address of the register
v_data_u8 -> The data from the register
v_len_u8 -> no of bytes to read
Returns
results of bus communication function
Return values
0 -> Success
-1 -> Error

Definition at line 1294 of file bmp280.c .

References bmp280_t::dev_addr .

Variable Documentation

struct bmp280_t * p_bmp280
static

pointer to BMP280

Definition at line 71 of file bmp280.c .