40static volatile uint8_t gs_fifo_full_flag;             
 
   41static volatile uint8_t gs_fifo_watermark_flag;        
 
   42static uint8_t gs_buf[512];                            
 
   70static void a_bmp384_interface_test_receive_callback(uint8_t type)
 
   76            if (gs_fifo_watermark_flag == 0)
 
   89                gs_fifo_watermark_flag = 1;
 
  124            gs_fifo_full_flag = 1;
 
  455    for (i = 0; i < times; i++)
 
  459        gs_fifo_watermark_flag = 0;
 
  461        while(gs_fifo_watermark_flag == 0)
 
  478    for (i = 0; i < times; i++)
 
  482        gs_fifo_watermark_flag = 2;
 
  483        gs_fifo_full_flag = 0;
 
  485        while (gs_fifo_full_flag == 0)
 
 
driver bmp384 fifo test header file
uint8_t bmp384_deinit(bmp384_handle_t *handle)
close the chip
uint8_t bmp384_set_addr_pin(bmp384_handle_t *handle, bmp384_address_t addr_pin)
set the iic address pin
bmp384_interface_t
bmp384 interface enumeration definition
uint8_t bmp384_set_interface(bmp384_handle_t *handle, bmp384_interface_t interface)
set the interface
uint8_t bmp384_set_pressure(bmp384_handle_t *handle, bmp384_bool_t enable)
enable or disable the pressure
uint8_t bmp384_set_temperature(bmp384_handle_t *handle, bmp384_bool_t enable)
enable or disable the temperature
struct bmp384_frame_s bmp384_frame_t
bmp384 frame structure definition
uint8_t bmp384_set_pressure_oversampling(bmp384_handle_t *handle, bmp384_oversampling_t oversampling)
set the pressure oversampling
uint8_t bmp384_set_iic_watchdog_timer(bmp384_handle_t *handle, bmp384_bool_t enable)
enable or disable the iic watchdog timer
bmp384_address_t
bmp384 address enumeration definition
uint8_t bmp384_set_filter_coefficient(bmp384_handle_t *handle, bmp384_filter_coefficient_t coefficient)
set the filter coefficient
uint8_t bmp384_info(bmp384_info_t *info)
get chip's information
struct bmp384_info_s bmp384_info_t
bmp384 information structure definition
uint8_t bmp384_set_spi_wire(bmp384_handle_t *handle, bmp384_spi_wire_t wire)
set the spi wire
uint8_t bmp384_set_mode(bmp384_handle_t *handle, bmp384_mode_t mode)
set the chip mode
uint8_t bmp384_init(bmp384_handle_t *handle)
initialize the chip
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_irq_handler(bmp384_handle_t *handle)
irq handler
uint8_t bmp384_set_temperature_oversampling(bmp384_handle_t *handle, bmp384_oversampling_t oversampling)
set the temperature oversampling
struct bmp384_handle_s bmp384_handle_t
bmp384 handle structure definition
uint8_t bmp384_set_odr(bmp384_handle_t *handle, bmp384_odr_t odr)
set the output data rate
@ BMP384_MODE_NORMAL_MODE
@ BMP384_FIFO_DATA_SOURCE_FILTERED
@ BMP384_INTERRUPT_STATUS_FIFO_WATERMARK
@ BMP384_INTERRUPT_STATUS_FIFO_FULL
@ BMP384_INTERRUPT_STATUS_DATA_READY
@ BMP384_INTERRUPT_PIN_TYPE_PUSH_PULL
@ BMP384_FILTER_COEFFICIENT_15
@ BMP384_IIC_WATCHDOG_PERIOD_40_MS
@ BMP384_OVERSAMPLING_x32
@ BMP384_INTERRUPT_ACTIVE_LEVEL_HIGHER
uint8_t bmp384_fifo_parse(bmp384_handle_t *handle, uint8_t *buf, uint16_t buf_len, bmp384_frame_t *frame, uint16_t *frame_len)
parse the fifo data
uint8_t bmp384_set_fifo_pressure_on(bmp384_handle_t *handle, bmp384_bool_t enable)
enable or disable the fifo pressure on
uint8_t bmp384_set_fifo_data_source(bmp384_handle_t *handle, bmp384_fifo_data_source_t source)
set the fifo data source
uint8_t bmp384_set_fifo_stop_on_full(bmp384_handle_t *handle, bmp384_bool_t enable)
enable or disable the fifo stopping on full
uint8_t bmp384_set_fifo_sensortime_on(bmp384_handle_t *handle, bmp384_bool_t enable)
enable or disable the fifo sensor time on
uint8_t bmp384_read_fifo(bmp384_handle_t *handle, uint8_t *buf, uint16_t *len)
read the fifo
uint8_t bmp384_set_fifo(bmp384_handle_t *handle, bmp384_bool_t enable)
enable or disable the fifo
uint8_t bmp384_set_fifo_temperature_on(bmp384_handle_t *handle, bmp384_bool_t enable)
enable or disable the fifo temperature on
uint8_t bmp384_set_fifo_watermark(bmp384_handle_t *handle, uint16_t watermark)
set the fifo watermark
uint8_t bmp384_set_fifo_subsampling(bmp384_handle_t *handle, uint8_t subsample)
set the fifo subsampling
uint8_t bmp384_interface_iic_write(uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
interface iic bus write
void bmp384_interface_debug_print(const char *const fmt,...)
interface print format data
uint8_t bmp384_interface_spi_read(uint8_t reg, uint8_t *buf, uint16_t len)
interface spi bus read
void bmp384_interface_delay_ms(uint32_t ms)
interface delay ms
uint8_t bmp384_interface_iic_read(uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
interface iic bus read
uint8_t bmp384_interface_iic_init(void)
interface iic bus init
uint8_t bmp384_interface_spi_init(void)
interface spi bus init
uint8_t bmp384_interface_spi_deinit(void)
interface spi bus deinit
uint8_t bmp384_interface_iic_deinit(void)
interface iic bus deinit
uint8_t bmp384_interface_spi_write(uint8_t reg, uint8_t *buf, uint16_t len)
interface spi bus write
uint8_t bmp384_set_interrupt_pin_type(bmp384_handle_t *handle, bmp384_interrupt_pin_type_t pin_type)
set the interrupt pin type
uint8_t bmp384_set_interrupt_active_level(bmp384_handle_t *handle, bmp384_interrupt_active_level_t level)
set the interrupt active level
uint8_t bmp384_set_interrupt_data_ready(bmp384_handle_t *handle, bmp384_bool_t enable)
enable or disable the data ready interrupt
uint8_t bmp384_set_interrupt_fifo_full(bmp384_handle_t *handle, bmp384_bool_t enable)
enable or disable the fifo full interrupt
uint8_t bmp384_set_interrupt_fifo_watermark(bmp384_handle_t *handle, bmp384_bool_t enable)
enable or disable the fifo watermark interrupt
uint8_t bmp384_set_latch_interrupt_pin_and_interrupt_status(bmp384_handle_t *handle, bmp384_bool_t enable)
enable or disable latching interrupt pin and interrupt status
#define DRIVER_BMP384_LINK_IIC_WRITE(HANDLE, FUC)
link iic_write function
#define DRIVER_BMP384_LINK_INIT(HANDLE, STRUCTURE)
initialize bmp384_handle_t structure
#define DRIVER_BMP384_LINK_IIC_DEINIT(HANDLE, FUC)
link iic_deinit function
#define DRIVER_BMP384_LINK_SPI_WRITE(HANDLE, FUC)
link spi_write function
#define DRIVER_BMP384_LINK_SPI_READ(HANDLE, FUC)
link spi_read function
#define DRIVER_BMP384_LINK_SPI_INIT(HANDLE, FUC)
link spi_init function
#define DRIVER_BMP384_LINK_RECEIVE_CALLBACK(HANDLE, FUC)
link receive_callback function
#define DRIVER_BMP384_LINK_DEBUG_PRINT(HANDLE, FUC)
link debug_print function
#define DRIVER_BMP384_LINK_IIC_READ(HANDLE, FUC)
link iic_read function
#define DRIVER_BMP384_LINK_SPI_DEINIT(HANDLE, FUC)
link spi_deinit function
#define DRIVER_BMP384_LINK_IIC_INIT(HANDLE, FUC)
link iic_init function
#define DRIVER_BMP384_LINK_DELAY_MS(HANDLE, FUC)
link delay_ms function
uint8_t bmp384_fifo_test(bmp384_interface_t interface, bmp384_address_t addr_pin, uint32_t times)
fifo test
uint8_t bmp384_fifo_test_irq_handler(void)
fifo test irq handler
float supply_voltage_max_v
char manufacturer_name[32]
float supply_voltage_min_v