LibDriver BMP384
Loading...
Searching...
No Matches
bmp384 base driver function

bmp384 base driver modules More...

Collaboration diagram for bmp384 base driver function:

Data Structures

struct  bmp384_frame_s
 bmp384 frame structure definition More...
struct  bmp384_handle_s
 bmp384 handle structure definition More...
struct  bmp384_info_s
 bmp384 information structure definition More...

Typedefs

typedef struct bmp384_frame_s bmp384_frame_t
 bmp384 frame structure definition
typedef struct bmp384_handle_s bmp384_handle_t
 bmp384 handle structure definition
typedef struct bmp384_info_s bmp384_info_t
 bmp384 information structure definition

Enumerations

enum  bmp384_interface_t { BMP384_INTERFACE_IIC = 0x00 , BMP384_INTERFACE_SPI = 0x01 }
 bmp384 interface enumeration definition More...
enum  bmp384_address_t { BMP384_ADDRESS_ADO_LOW = (0x76 << 1) , BMP384_ADDRESS_ADO_HIGH = (0x77 << 1) }
 bmp384 address enumeration definition More...
enum  bmp384_bool_t { BMP384_BOOL_FALSE = 0x00 , BMP384_BOOL_TRUE = 0x01 }
 bmp384 bool enumeration definition More...
enum  bmp384_error_t { BMP384_ERROR_FATAL = (1 << 0) , BMP384_ERROR_CMD = (1 << 1) , BMP384_ERROR_CONF = (1 << 2) }
 bmp384 error enumeration definition More...
enum  bmp384_status_t { BMP384_STATUS_COMMAND_READY = (1 << 4) , BMP384_STATUS_PRESS_READY = (1 << 5) , BMP384_STATUS_TEMP_READY = (1 << 6) }
 bmp384 status enumeration definition More...
enum  bmp384_event_t { BMP384_EVENT_NONE = (0 << 0) , BMP384_EVENT_POWER_UP_OR_SOFTRESET = (1 << 0) }
 bmp384 event enumeration definition More...
enum  bmp384_fifo_data_source_t { BMP384_FIFO_DATA_SOURCE_UNFILTERED = 0 , BMP384_FIFO_DATA_SOURCE_FILTERED = 1 }
 bmp384 fifo data source enumeration definition More...
enum  bmp384_interrupt_status_t { BMP384_INTERRUPT_STATUS_FIFO_WATERMARK = (1 << 0) , BMP384_INTERRUPT_STATUS_FIFO_FULL = (1 << 1) , BMP384_INTERRUPT_STATUS_DATA_READY = (1 << 3) }
 bmp384 interrupt status enumeration definition More...
enum  bmp384_interrupt_active_level_t { BMP384_INTERRUPT_ACTIVE_LEVEL_LOWER = 0x00 , BMP384_INTERRUPT_ACTIVE_LEVEL_HIGHER = 0x01 }
 bmp384 interrupt active level enumeration definition More...
enum  bmp384_interrupt_pin_type_t { BMP384_INTERRUPT_PIN_TYPE_PUSH_PULL = 0x00 , BMP384_INTERRUPT_PIN_TYPE_OPEN_DRAIN = 0x01 }
 bmp384 interrupt pin type enumeration definition More...
enum  bmp384_spi_wire_t { BMP384_SPI_WIRE_4 = 0x00 , BMP384_SPI_WIRE_3 = 0x01 }
 bmp384 spi wire enumeration definition More...
enum  bmp384_iic_watchdog_period_t { BMP384_IIC_WATCHDOG_PERIOD_1P25_MS = 0x00 , BMP384_IIC_WATCHDOG_PERIOD_40_MS = 0x01 }
 bmp384 iic watchdog period enumeration definition More...
enum  bmp384_mode_t { BMP384_MODE_SLEEP_MODE = 0x00 , BMP384_MODE_FORCED_MODE = 0x01 , BMP384_MODE_NORMAL_MODE = 0x03 }
 bmp384 mode enumeration definition More...
enum  bmp384_oversampling_t {
  BMP384_OVERSAMPLING_x1 = 0x00 , BMP384_OVERSAMPLING_x2 = 0x01 , BMP384_OVERSAMPLING_x4 = 0x02 , BMP384_OVERSAMPLING_x8 = 0x03 ,
  BMP384_OVERSAMPLING_x16 = 0x04 , BMP384_OVERSAMPLING_x32 = 0x05
}
 bmp384 oversampling enumeration definition More...
enum  bmp384_odr_t {
  BMP384_ODR_200_HZ = 0x00 , BMP384_ODR_100_HZ = 0x01 , BMP384_ODR_50_HZ = 0x02 , BMP384_ODR_25_HZ = 0x03 ,
  BMP384_ODR_12P5_HZ = 0x04 , BMP384_ODR_6P25_HZ = 0x05 , BMP384_ODR_3P1_HZ = 0x06 , BMP384_ODR_1P5_HZ = 0x07 ,
  BMP384_ODR_0P78_HZ = 0x08 , BMP384_ODR_0P39_HZ = 0x09 , BMP384_ODR_0P2_HZ = 0x0A , BMP384_ODR_0P1_HZ = 0x0B ,
  BMP384_ODR_0P05_HZ = 0x0C , BMP384_ODR_0P02_HZ = 0x0D , BMP384_ODR_0P01_HZ = 0x0E , BMP384_ODR_0P006_HZ = 0x0F ,
  BMP384_ODR_0P003_HZ = 0x10 , BMP384_ODR_0P0015_HZ = 0x11
}
 bmp384 output data rate enumeration definition More...
enum  bmp384_filter_coefficient_t {
  BMP384_FILTER_COEFFICIENT_0 = 0x00 , BMP384_FILTER_COEFFICIENT_1 = 0x01 , BMP384_FILTER_COEFFICIENT_3 = 0x02 , BMP384_FILTER_COEFFICIENT_7 = 0x03 ,
  BMP384_FILTER_COEFFICIENT_15 = 0x04 , BMP384_FILTER_COEFFICIENT_31 = 0x05 , BMP384_FILTER_COEFFICIENT_63 = 0x06 , BMP384_FILTER_COEFFICIENT_127 = 0x07
}
 bmp384 filter coefficient enumeration definition More...
enum  bmp384_frame_type_t { BMP384_FRAME_TYPE_TEMPERATURE = 0x01 , BMP384_FRAME_TYPE_PRESSURE = 0x02 , BMP384_FRAME_TYPE_SENSORTIME = 0x03 }
 bmp384 frame type enumeration definition More...

Functions

uint8_t bmp384_info (bmp384_info_t *info)
 get chip's information
uint8_t bmp384_set_addr_pin (bmp384_handle_t *handle, bmp384_address_t addr_pin)
 set the iic address pin
uint8_t bmp384_get_addr_pin (bmp384_handle_t *handle, bmp384_address_t *addr_pin)
 get the iic address pin
uint8_t bmp384_set_interface (bmp384_handle_t *handle, bmp384_interface_t interface)
 set the interface
uint8_t bmp384_get_interface (bmp384_handle_t *handle, bmp384_interface_t *interface)
 get the interface
uint8_t bmp384_irq_handler (bmp384_handle_t *handle)
 irq handler
uint8_t bmp384_init (bmp384_handle_t *handle)
 initialize the chip
uint8_t bmp384_deinit (bmp384_handle_t *handle)
 close the chip
uint8_t bmp384_read_temperature_pressure (bmp384_handle_t *handle, uint32_t *temperature_raw, float *temperature_c, uint32_t *pressure_raw, float *pressure_pa)
 read the temperature and pressure
uint8_t bmp384_read_temperature (bmp384_handle_t *handle, uint32_t *raw, float *c)
 read the temperature
uint8_t bmp384_read_pressure (bmp384_handle_t *handle, uint32_t *raw, float *pa)
 read the pressure
uint8_t bmp384_get_error (bmp384_handle_t *handle, uint8_t *err)
 get the error
uint8_t bmp384_get_status (bmp384_handle_t *handle, uint8_t *status)
 get the status
uint8_t bmp384_get_sensortime (bmp384_handle_t *handle, uint32_t *t)
 get the sensor time
uint8_t bmp384_get_event (bmp384_handle_t *handle, bmp384_event_t *event)
 get the event
uint8_t bmp384_set_spi_wire (bmp384_handle_t *handle, bmp384_spi_wire_t wire)
 set the spi wire
uint8_t bmp384_get_spi_wire (bmp384_handle_t *handle, bmp384_spi_wire_t *wire)
 get the spi wire
uint8_t bmp384_set_iic_watchdog_timer (bmp384_handle_t *handle, bmp384_bool_t enable)
 enable or disable the iic watchdog timer
uint8_t bmp384_get_iic_watchdog_timer (bmp384_handle_t *handle, bmp384_bool_t *enable)
 get the iic watchdog timer status
uint8_t bmp384_set_iic_watchdog_period (bmp384_handle_t *handle, bmp384_iic_watchdog_period_t period)
 set the iic watchdog period
uint8_t bmp384_get_iic_watchdog_period (bmp384_handle_t *handle, bmp384_iic_watchdog_period_t *period)
 get the iic watchdog period
uint8_t bmp384_set_pressure (bmp384_handle_t *handle, bmp384_bool_t enable)
 enable or disable the pressure
uint8_t bmp384_get_pressure (bmp384_handle_t *handle, bmp384_bool_t *enable)
 get the pressure status
uint8_t bmp384_set_temperature (bmp384_handle_t *handle, bmp384_bool_t enable)
 enable or disable the temperature
uint8_t bmp384_get_temperature (bmp384_handle_t *handle, bmp384_bool_t *enable)
 get the temperature status
uint8_t bmp384_set_mode (bmp384_handle_t *handle, bmp384_mode_t mode)
 set the chip mode
uint8_t bmp384_get_mode (bmp384_handle_t *handle, bmp384_mode_t *mode)
 get the chip mode
uint8_t bmp384_set_pressure_oversampling (bmp384_handle_t *handle, bmp384_oversampling_t oversampling)
 set the pressure oversampling
uint8_t bmp384_get_pressure_oversampling (bmp384_handle_t *handle, bmp384_oversampling_t *oversampling)
 get the pressure oversampling
uint8_t bmp384_set_temperature_oversampling (bmp384_handle_t *handle, bmp384_oversampling_t oversampling)
 set the temperature oversampling
uint8_t bmp384_get_temperature_oversampling (bmp384_handle_t *handle, bmp384_oversampling_t *oversampling)
 get the temperature oversampling
uint8_t bmp384_set_odr (bmp384_handle_t *handle, bmp384_odr_t odr)
 set the output data rate
uint8_t bmp384_get_odr (bmp384_handle_t *handle, bmp384_odr_t *odr)
 get the output data rate
uint8_t bmp384_set_filter_coefficient (bmp384_handle_t *handle, bmp384_filter_coefficient_t coefficient)
 set the filter coefficient
uint8_t bmp384_get_filter_coefficient (bmp384_handle_t *handle, bmp384_filter_coefficient_t *coefficient)
 get the filter coefficient
uint8_t bmp384_softreset (bmp384_handle_t *handle)
 soft reset
uint8_t bmp384_extmode_en_middle (bmp384_handle_t *handle)
 extmode enable middle

Detailed Description

bmp384 base driver modules

Typedef Documentation

◆ bmp384_frame_t

bmp384 frame structure definition

◆ bmp384_handle_t

bmp384 handle structure definition

◆ bmp384_info_t

typedef struct bmp384_info_s bmp384_info_t

bmp384 information structure definition

Enumeration Type Documentation

◆ bmp384_address_t

bmp384 address enumeration definition

Enumerator
BMP384_ADDRESS_ADO_LOW 

ADO is low

BMP384_ADDRESS_ADO_HIGH 

ADO is HIGH

Definition at line 71 of file driver_bmp384.h.

◆ bmp384_bool_t

bmp384 bool enumeration definition

Enumerator
BMP384_BOOL_FALSE 

false

BMP384_BOOL_TRUE 

true

Definition at line 80 of file driver_bmp384.h.

◆ bmp384_error_t

bmp384 error enumeration definition

Enumerator
BMP384_ERROR_FATAL 

fatal error

BMP384_ERROR_CMD 

command error

BMP384_ERROR_CONF 

conf error

Definition at line 89 of file driver_bmp384.h.

◆ bmp384_event_t

bmp384 event enumeration definition

Enumerator
BMP384_EVENT_NONE 

event none

BMP384_EVENT_POWER_UP_OR_SOFTRESET 

event power up or soft reset

Definition at line 109 of file driver_bmp384.h.

◆ bmp384_fifo_data_source_t

bmp384 fifo data source enumeration definition

Enumerator
BMP384_FIFO_DATA_SOURCE_UNFILTERED 

fifo data source unfiltered

BMP384_FIFO_DATA_SOURCE_FILTERED 

fifo data source filtered

Definition at line 118 of file driver_bmp384.h.

◆ bmp384_filter_coefficient_t

bmp384 filter coefficient enumeration definition

Enumerator
BMP384_FILTER_COEFFICIENT_0 

coefficient 0

BMP384_FILTER_COEFFICIENT_1 

coefficient 1

BMP384_FILTER_COEFFICIENT_3 

coefficient 3

BMP384_FILTER_COEFFICIENT_7 

coefficient 7

BMP384_FILTER_COEFFICIENT_15 

coefficient 15

BMP384_FILTER_COEFFICIENT_31 

coefficient 31

BMP384_FILTER_COEFFICIENT_63 

coefficient 63

BMP384_FILTER_COEFFICIENT_127 

coefficient 127

Definition at line 221 of file driver_bmp384.h.

◆ bmp384_frame_type_t

bmp384 frame type enumeration definition

Enumerator
BMP384_FRAME_TYPE_TEMPERATURE 

temperature frame type

BMP384_FRAME_TYPE_PRESSURE 

pressure frame type

BMP384_FRAME_TYPE_SENSORTIME 

sensor time frame type

Definition at line 236 of file driver_bmp384.h.

◆ bmp384_iic_watchdog_period_t

bmp384 iic watchdog period enumeration definition

Enumerator
BMP384_IIC_WATCHDOG_PERIOD_1P25_MS 

iic watchdog period 1.25 ms

BMP384_IIC_WATCHDOG_PERIOD_40_MS 

iic watchdog period 40 ms

Definition at line 164 of file driver_bmp384.h.

◆ bmp384_interface_t

bmp384 interface enumeration definition

Enumerator
BMP384_INTERFACE_IIC 

iic interface

BMP384_INTERFACE_SPI 

spi interface

Definition at line 62 of file driver_bmp384.h.

◆ bmp384_interrupt_active_level_t

bmp384 interrupt active level enumeration definition

Enumerator
BMP384_INTERRUPT_ACTIVE_LEVEL_LOWER 

active level lower

BMP384_INTERRUPT_ACTIVE_LEVEL_HIGHER 

active level higher

Definition at line 137 of file driver_bmp384.h.

◆ bmp384_interrupt_pin_type_t

bmp384 interrupt pin type enumeration definition

Enumerator
BMP384_INTERRUPT_PIN_TYPE_PUSH_PULL 

push pull pin type

BMP384_INTERRUPT_PIN_TYPE_OPEN_DRAIN 

open drain pin type

Definition at line 146 of file driver_bmp384.h.

◆ bmp384_interrupt_status_t

bmp384 interrupt status enumeration definition

Enumerator
BMP384_INTERRUPT_STATUS_FIFO_WATERMARK 

fifo watermark interrupt status

BMP384_INTERRUPT_STATUS_FIFO_FULL 

fifo full interrupt status

BMP384_INTERRUPT_STATUS_DATA_READY 

data ready interrupt status

Definition at line 127 of file driver_bmp384.h.

◆ bmp384_mode_t

bmp384 mode enumeration definition

Enumerator
BMP384_MODE_SLEEP_MODE 

sleep mode

BMP384_MODE_FORCED_MODE 

forced mode

BMP384_MODE_NORMAL_MODE 

normal mode

Definition at line 173 of file driver_bmp384.h.

◆ bmp384_odr_t

bmp384 output data rate enumeration definition

Enumerator
BMP384_ODR_200_HZ 

200Hz

BMP384_ODR_100_HZ 

100Hz

BMP384_ODR_50_HZ 

50Hz

BMP384_ODR_25_HZ 

25Hz

BMP384_ODR_12P5_HZ 

12.5Hz

BMP384_ODR_6P25_HZ 

6.25Hz

BMP384_ODR_3P1_HZ 

3.1Hz

BMP384_ODR_1P5_HZ 

1.5Hz

BMP384_ODR_0P78_HZ 

0.78Hz

BMP384_ODR_0P39_HZ 

0.39Hz

BMP384_ODR_0P2_HZ 

0.2Hz

BMP384_ODR_0P1_HZ 

0.1Hz

BMP384_ODR_0P05_HZ 

0.05Hz

BMP384_ODR_0P02_HZ 

0.02Hz

BMP384_ODR_0P01_HZ 

0.01Hz

BMP384_ODR_0P006_HZ 

0.006Hz

BMP384_ODR_0P003_HZ 

0.003Hz

BMP384_ODR_0P0015_HZ 

0.0015Hz

Definition at line 196 of file driver_bmp384.h.

◆ bmp384_oversampling_t

bmp384 oversampling enumeration definition

Enumerator
BMP384_OVERSAMPLING_x1 

oversampling x1

BMP384_OVERSAMPLING_x2 

oversampling x2

BMP384_OVERSAMPLING_x4 

oversampling x4

BMP384_OVERSAMPLING_x8 

oversampling x8

BMP384_OVERSAMPLING_x16 

oversampling x16

BMP384_OVERSAMPLING_x32 

oversampling x32

Definition at line 183 of file driver_bmp384.h.

◆ bmp384_spi_wire_t

bmp384 spi wire enumeration definition

Enumerator
BMP384_SPI_WIRE_4 

4 wire

BMP384_SPI_WIRE_3 

3 wire

Definition at line 155 of file driver_bmp384.h.

◆ bmp384_status_t

bmp384 status enumeration definition

Enumerator
BMP384_STATUS_COMMAND_READY 

command ready status

BMP384_STATUS_PRESS_READY 

press ready status

BMP384_STATUS_TEMP_READY 

temp ready status

Definition at line 99 of file driver_bmp384.h.

Function Documentation

◆ bmp384_deinit()

uint8_t bmp384_deinit ( bmp384_handle_t * handle)

close the chip

Parameters
[in]*handlepointer to a bmp384 handle structure
Returns
status code
  • 0 success
  • 1 iic or spi deinit failed
  • 2 handle is NULL
  • 3 handle is not initialized
  • 4 power down failed
Note
none

Definition at line 2904 of file driver_bmp384.c.

◆ bmp384_extmode_en_middle()

uint8_t bmp384_extmode_en_middle ( bmp384_handle_t * handle)

extmode enable middle

Parameters
[in]*handlepointer to a bmp384 handle structure
Returns
status code
  • 0 success
  • 1 extmode enable middle failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2679 of file driver_bmp384.c.

◆ bmp384_get_addr_pin()

uint8_t bmp384_get_addr_pin ( bmp384_handle_t * handle,
bmp384_address_t * addr_pin )

get the iic address pin

Parameters
[in]*handlepointer to a bmp384 handle structure
[out]*addr_pinpointer to an iic address pin buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
Note
none

Definition at line 3593 of file driver_bmp384.c.

◆ bmp384_get_error()

uint8_t bmp384_get_error ( bmp384_handle_t * handle,
uint8_t * err )

get the error

Parameters
[in]*handlepointer to a bmp384 handle structure
[out]*errpointer to an error buffer
Returns
status code
  • 0 success
  • 1 get error failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 387 of file driver_bmp384.c.

◆ bmp384_get_event()

uint8_t bmp384_get_event ( bmp384_handle_t * handle,
bmp384_event_t * event )

get the event

Parameters
[in]*handlepointer to a bmp384 handle structure
[out]*eventpointer to an event buffer
Returns
status code
  • 0 success
  • 1 get event failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 494 of file driver_bmp384.c.

◆ bmp384_get_filter_coefficient()

uint8_t bmp384_get_filter_coefficient ( bmp384_handle_t * handle,
bmp384_filter_coefficient_t * coefficient )

get the filter coefficient

Parameters
[in]*handlepointer to a bmp384 handle structure
[out]*coefficientpointer to a filter coefficient buffer
Returns
status code
  • 0 success
  • 1 get filter coefficient failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2571 of file driver_bmp384.c.

◆ bmp384_get_iic_watchdog_period()

uint8_t bmp384_get_iic_watchdog_period ( bmp384_handle_t * handle,
bmp384_iic_watchdog_period_t * period )

get the iic watchdog period

Parameters
[in]*handlepointer to a bmp384 handle structure
[out]*periodpointer to an iic watchdog period buffer
Returns
status code
  • 0 success
  • 1 get iic watchdog period failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1995 of file driver_bmp384.c.

◆ bmp384_get_iic_watchdog_timer()

uint8_t bmp384_get_iic_watchdog_timer ( bmp384_handle_t * handle,
bmp384_bool_t * enable )

get the iic watchdog timer status

Parameters
[in]*handlepointer to a bmp384 handle structure
[out]*enablepointer to a bool buffer
Returns
status code
  • 0 success
  • 1 get iic watchdog timer failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1913 of file driver_bmp384.c.

◆ bmp384_get_interface()

uint8_t bmp384_get_interface ( bmp384_handle_t * handle,
bmp384_interface_t * interface )

get the interface

Parameters
[in]*handlepointer to a bmp384 handle structure
[out]*interfacepointer to a chip interface buffer
Returns
status code
  • 0 success
  • 2 handle is NULL
Note
none

Definition at line 3635 of file driver_bmp384.c.

◆ bmp384_get_mode()

uint8_t bmp384_get_mode ( bmp384_handle_t * handle,
bmp384_mode_t * mode )

get the chip mode

Parameters
[in]*handlepointer to a bmp384 handle structure
[out]*modepointer to a mode buffer
Returns
status code
  • 0 success
  • 1 get mode failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2241 of file driver_bmp384.c.

◆ bmp384_get_odr()

uint8_t bmp384_get_odr ( bmp384_handle_t * handle,
bmp384_odr_t * odr )

get the output data rate

Parameters
[in]*handlepointer to a bmp384 handle structure
[out]*odrpointer to an output data rate buffer
Returns
status code
  • 0 success
  • 1 get odr failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2488 of file driver_bmp384.c.

◆ bmp384_get_pressure()

uint8_t bmp384_get_pressure ( bmp384_handle_t * handle,
bmp384_bool_t * enable )

get the pressure status

Parameters
[in]*handlepointer to a bmp384 handle structure
[out]*enablepointer to a bool buffer
Returns
status code
  • 0 success
  • 1 get pressure failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2077 of file driver_bmp384.c.

◆ bmp384_get_pressure_oversampling()

uint8_t bmp384_get_pressure_oversampling ( bmp384_handle_t * handle,
bmp384_oversampling_t * oversampling )

get the pressure oversampling

Parameters
[in]*handlepointer to a bmp384 handle structure
[out]*oversamplingpointer to an oversampling buffer
Returns
status code
  • 0 success
  • 1 get pressure oversampling failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2323 of file driver_bmp384.c.

◆ bmp384_get_sensortime()

uint8_t bmp384_get_sensortime ( bmp384_handle_t * handle,
uint32_t * t )

get the sensor time

Parameters
[in]*handlepointer to a bmp384 handle structure
[out]*tpointer to a timestamp buffer
Returns
status code
  • 0 success
  • 1 get sensor time failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 457 of file driver_bmp384.c.

◆ bmp384_get_spi_wire()

uint8_t bmp384_get_spi_wire ( bmp384_handle_t * handle,
bmp384_spi_wire_t * wire )

get the spi wire

Parameters
[in]*handlepointer to a bmp384 handle structure
[out]*wirepointer to a spi wire buffer
Returns
status code
  • 0 success
  • 1 get spi wire failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1831 of file driver_bmp384.c.

◆ bmp384_get_status()

uint8_t bmp384_get_status ( bmp384_handle_t * handle,
uint8_t * status )

get the status

Parameters
[in]*handlepointer to a bmp384 handle structure
[out]*statuspointer to a status buffer
Returns
status code
  • 0 success
  • 1 get status failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 422 of file driver_bmp384.c.

◆ bmp384_get_temperature()

uint8_t bmp384_get_temperature ( bmp384_handle_t * handle,
bmp384_bool_t * enable )

get the temperature status

Parameters
[in]*handlepointer to a bmp384 handle structure
[out]*enablepointer to a bool buffer
Returns
status code
  • 0 success
  • 1 get temperature failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2159 of file driver_bmp384.c.

◆ bmp384_get_temperature_oversampling()

uint8_t bmp384_get_temperature_oversampling ( bmp384_handle_t * handle,
bmp384_oversampling_t * oversampling )

get the temperature oversampling

Parameters
[in]*handlepointer to a bmp384 handle structure
[out]*oversamplingpointer to an oversampling buffer
Returns
status code
  • 0 success
  • 1 get temperature oversampling failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2405 of file driver_bmp384.c.

◆ bmp384_info()

uint8_t bmp384_info ( bmp384_info_t * info)

get chip's information

Parameters
[out]*infopointer to a bmp384 info structure
Returns
status code
  • 0 success
  • 2 handle is NULL
Note
none

Definition at line 3903 of file driver_bmp384.c.

◆ bmp384_init()

uint8_t bmp384_init ( bmp384_handle_t * handle)

initialize the chip

Parameters
[in]*handlepointer to a bmp384 handle structure
Returns
status code
  • 0 success
  • 1 iic or spi initialization failed
  • 2 handle is NULL
  • 3 linked functions is NULL
  • 4 id is invalid
  • 5 reset failed
  • 6 get calibration failed
Note
none

Definition at line 2758 of file driver_bmp384.c.

◆ bmp384_irq_handler()

uint8_t bmp384_irq_handler ( bmp384_handle_t * handle)

irq handler

Parameters
[in]*handlepointer to a bmp384 handle structure
Returns
status code
  • 0 success
  • 1 run failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 3517 of file driver_bmp384.c.

◆ bmp384_read_pressure()

uint8_t bmp384_read_pressure ( bmp384_handle_t * handle,
uint32_t * raw,
float * pa )

read the pressure

Parameters
[in]*handlepointer to a bmp384 handle structure
[out]*rawpointer to a raw pressure buffer
[out]*papointer to a converted pressure buffer
Returns
status code
  • 0 success
  • 1 read pressure failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 3110 of file driver_bmp384.c.

◆ bmp384_read_temperature()

uint8_t bmp384_read_temperature ( bmp384_handle_t * handle,
uint32_t * raw,
float * c )

read the temperature

Parameters
[in]*handlepointer to a bmp384 handle structure
[out]*rawpointer to a raw temperature buffer
[out]*cpointer to a converted temperature buffer
Returns
status code
  • 0 success
  • 1 read temperature failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2958 of file driver_bmp384.c.

◆ bmp384_read_temperature_pressure()

uint8_t bmp384_read_temperature_pressure ( bmp384_handle_t * handle,
uint32_t * temperature_raw,
float * temperature_c,
uint32_t * pressure_raw,
float * pressure_pa )

read the temperature and pressure

Parameters
[in]*handlepointer to a bmp384 handle structure
[out]*temperature_rawpointer to a raw temperature buffer
[out]*temperature_cpointer to a converted temperature buffer
[out]*pressure_rawpointer to a raw pressure buffer
[out]*pressure_papointer to a converted pressure buffer
Returns
status code
  • 0 success
  • 1 read temperature pressure failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 3312 of file driver_bmp384.c.

◆ bmp384_set_addr_pin()

uint8_t bmp384_set_addr_pin ( bmp384_handle_t * handle,
bmp384_address_t addr_pin )

set the iic address pin

Parameters
[in]*handlepointer to a bmp384 handle structure
[in]addr_piniic address pin
Returns
status code
  • 0 success
  • 2 handle is NULL
Note
none

Definition at line 3572 of file driver_bmp384.c.

◆ bmp384_set_filter_coefficient()

uint8_t bmp384_set_filter_coefficient ( bmp384_handle_t * handle,
bmp384_filter_coefficient_t coefficient )

set the filter coefficient

Parameters
[in]*handlepointer to a bmp384 handle structure
[in]coefficientfilter coefficient
Returns
status code
  • 0 success
  • 1 set filter coefficient failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2525 of file driver_bmp384.c.

◆ bmp384_set_iic_watchdog_period()

uint8_t bmp384_set_iic_watchdog_period ( bmp384_handle_t * handle,
bmp384_iic_watchdog_period_t period )

set the iic watchdog period

Parameters
[in]*handlepointer to a bmp384 handle structure
[in]periodiic watchdog period
Returns
status code
  • 0 success
  • 1 set iic watchdog period failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1950 of file driver_bmp384.c.

◆ bmp384_set_iic_watchdog_timer()

uint8_t bmp384_set_iic_watchdog_timer ( bmp384_handle_t * handle,
bmp384_bool_t enable )

enable or disable the iic watchdog timer

Parameters
[in]*handlepointer to a bmp384 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set iic watchdog timer failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1868 of file driver_bmp384.c.

◆ bmp384_set_interface()

uint8_t bmp384_set_interface ( bmp384_handle_t * handle,
bmp384_interface_t interface )

set the interface

Parameters
[in]*handlepointer to a bmp384 handle structure
[in]interfacechip interface
Returns
status code
  • 0 success
  • 2 handle is NULL
Note
none

Definition at line 3614 of file driver_bmp384.c.

◆ bmp384_set_mode()

uint8_t bmp384_set_mode ( bmp384_handle_t * handle,
bmp384_mode_t mode )

set the chip mode

Parameters
[in]*handlepointer to a bmp384 handle structure
[in]modechip mode
Returns
status code
  • 0 success
  • 1 set mode failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2196 of file driver_bmp384.c.

◆ bmp384_set_odr()

uint8_t bmp384_set_odr ( bmp384_handle_t * handle,
bmp384_odr_t odr )

set the output data rate

Parameters
[in]*handlepointer to a bmp384 handle structure
[in]odroutput data rate
Returns
status code
  • 0 success
  • 1 set odr failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2442 of file driver_bmp384.c.

◆ bmp384_set_pressure()

uint8_t bmp384_set_pressure ( bmp384_handle_t * handle,
bmp384_bool_t enable )

enable or disable the pressure

Parameters
[in]*handlepointer to a bmp384 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set pressure failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2032 of file driver_bmp384.c.

◆ bmp384_set_pressure_oversampling()

uint8_t bmp384_set_pressure_oversampling ( bmp384_handle_t * handle,
bmp384_oversampling_t oversampling )

set the pressure oversampling

Parameters
[in]*handlepointer to a bmp384 handle structure
[in]oversamplingpressure oversampling
Returns
status code
  • 0 success
  • 1 set pressure oversampling failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2278 of file driver_bmp384.c.

◆ bmp384_set_spi_wire()

uint8_t bmp384_set_spi_wire ( bmp384_handle_t * handle,
bmp384_spi_wire_t wire )

set the spi wire

Parameters
[in]*handlepointer to a bmp384 handle structure
[in]wirespi wire
Returns
status code
  • 0 success
  • 1 set spi wire failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 1786 of file driver_bmp384.c.

◆ bmp384_set_temperature()

uint8_t bmp384_set_temperature ( bmp384_handle_t * handle,
bmp384_bool_t enable )

enable or disable the temperature

Parameters
[in]*handlepointer to a bmp384 handle structure
[in]enablebool value
Returns
status code
  • 0 success
  • 1 set temperature failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2114 of file driver_bmp384.c.

◆ bmp384_set_temperature_oversampling()

uint8_t bmp384_set_temperature_oversampling ( bmp384_handle_t * handle,
bmp384_oversampling_t oversampling )

set the temperature oversampling

Parameters
[in]*handlepointer to a bmp384 handle structure
[in]oversamplingtemperature oversampling
Returns
status code
  • 0 success
  • 1 set temperature oversampling failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2360 of file driver_bmp384.c.

◆ bmp384_softreset()

uint8_t bmp384_softreset ( bmp384_handle_t * handle)

soft reset

Parameters
[in]*handlepointer to a bmp384 handle structure
Returns
status code
  • 0 success
  • 1 soft reset failed
  • 2 handle is NULL
  • 3 handle is not initialized
Note
none

Definition at line 2643 of file driver_bmp384.c.