Chirp SonicLib  2.1.0
Public Attributes | List of all members
ch_dev_t Struct Reference

Chirp sensor device structure. More...

#include <soniclib.h>

Public Attributes

ch_group_tgroup
 
ch_mode_t mode
 
uint8_t freqLockValue
 
uint16_t freqCounterCycles
 
uint16_t max_range
 
uint16_t static_range
 
uint16_t sample_interval
 
uint16_t rtc_cal_result
 
uint32_t op_frequency
 
uint16_t bandwidth
 
uint16_t scale_factor
 
uint8_t i2c_address
 
uint8_t app_i2c_address
 
uint16_t i2c_drv_flags
 
uint16_t part_number
 
int8_t oversample
 
uint8_t sensor_connected
 
uint8_t io_index
 
uint8_t i2c_bus_index
 
uint16_t max_samples
 
uint16_t num_rx_samples
 
uint16_t win_start_sample
 
uint16_t num_win_samples
 
const char * fw_version_string
 
const uint8_t * firmware
 
const uint8_t * ram_init
 
void(* prepare_pulse_timer )(ch_dev_t *dev_ptr)
 
void(* store_pt_result )(ch_dev_t *dev_ptr)
 
void(* store_op_freq )(ch_dev_t *dev_ptr)
 
void(* store_bandwidth )(ch_dev_t *dev_ptr)
 
void(* store_scalefactor )(ch_dev_t *dev_ptr)
 
uint8_t(* get_locked_state )(ch_dev_t *dev_ptr)
 
uint16_t(* get_fw_ram_init_size )(void)
 
uint16_t(* get_fw_ram_init_addr )(void)
 
ch_api_funcs_t api_funcs
 

Detailed Description

Chirp sensor device structure.

Member Data Documentation

◆ api_funcs

ch_api_funcs_t ch_dev_t::api_funcs

Structure containing API function pointers.

◆ app_i2c_address

uint8_t ch_dev_t::app_i2c_address

Assigned application I2C address for device in normal operation

◆ bandwidth

uint16_t ch_dev_t::bandwidth

Bandwidth for the sensor.

◆ firmware

const uint8_t* ch_dev_t::firmware

Pointer to start of sensor firmware image to be loaded

◆ freqCounterCycles

uint16_t ch_dev_t::freqCounterCycles

Frequency counter cycles

◆ freqLockValue

uint8_t ch_dev_t::freqLockValue

Value set when sensor has locked

◆ fw_version_string

const char* ch_dev_t::fw_version_string

Pointer to string identifying sensor firmware version.

◆ get_fw_ram_init_addr

uint16_t(* ch_dev_t::get_fw_ram_init_addr) (void)

Pointer to function returning start address of ram initialization area in the sensor.

◆ get_fw_ram_init_size

uint16_t(* ch_dev_t::get_fw_ram_init_size) (void)

Pointer to function returning ram init size for sensor.

◆ get_locked_state

uint8_t(* ch_dev_t::get_locked_state) (ch_dev_t *dev_ptr)

Pointer to function returning locked state for sensor.

◆ group

ch_group_t* ch_dev_t::group

Pointer to parent group structure.

◆ i2c_address

uint8_t ch_dev_t::i2c_address

Current I2C addresses.

◆ i2c_bus_index

uint8_t ch_dev_t::i2c_bus_index

Index value identifying which I2C bus is used for this device.

◆ i2c_drv_flags

uint16_t ch_dev_t::i2c_drv_flags

Flags for special I2C handling by Chirp driver

◆ io_index

uint8_t ch_dev_t::io_index

Index value (device number) identifying device within group

◆ max_range

uint16_t ch_dev_t::max_range

Maximum range, in mm

◆ max_samples

uint16_t ch_dev_t::max_samples

Maximum number of receiver samples for this sensor firmware

◆ mode

ch_mode_t ch_dev_t::mode

Sensor operating mode.

◆ num_rx_samples

uint16_t ch_dev_t::num_rx_samples

Number of receiver samples for the current max range setting.

◆ num_win_samples

uint16_t ch_dev_t::num_win_samples

Number of samples in sample window, if supported

◆ op_frequency

uint32_t ch_dev_t::op_frequency

Operating frequency for the sensor.

◆ oversample

int8_t ch_dev_t::oversample

Oversampling factor (power of 2)

◆ part_number

uint16_t ch_dev_t::part_number

Integer part number (e.g. 101 for a CH101 device).

◆ prepare_pulse_timer

void(* ch_dev_t::prepare_pulse_timer) (ch_dev_t *dev_ptr)

Pointer to function preparing sensor pulse timer to measure real-time clock (RTC) calibration pulse sent to device.

◆ ram_init

const uint8_t* ch_dev_t::ram_init

Pointer to ram initialization data

◆ rtc_cal_result

uint16_t ch_dev_t::rtc_cal_result

Real-time clock calibration result for the sensor.

◆ sample_interval

uint16_t ch_dev_t::sample_interval

Sample interval (in ms), only if in free-running mode

◆ scale_factor

uint16_t ch_dev_t::scale_factor

Scale factor for the sensor.

◆ sensor_connected

uint8_t ch_dev_t::sensor_connected

Sensor connection status: 1 if discovered and successfully initialized, 0 otherwise.

◆ static_range

uint16_t ch_dev_t::static_range

Static target rejection range, in samples (0 if unused)

◆ store_bandwidth

void(* ch_dev_t::store_bandwidth) (ch_dev_t *dev_ptr)

Pointer to function to read operating bandwidth and place value in the bandwidth field.

◆ store_op_freq

void(* ch_dev_t::store_op_freq) (ch_dev_t *dev_ptr)

Pointer to function to read operating frequency and place value in the op_frequency field.

◆ store_pt_result

void(* ch_dev_t::store_pt_result) (ch_dev_t *dev_ptr)

Pointer to function to read RTC calibration pulse timer result from sensor and place value in the rtc_cal_result field.

◆ store_scalefactor

void(* ch_dev_t::store_scalefactor) (ch_dev_t *dev_ptr)

Pointer to function to calculate scale factor and place value in scalefactor field.

◆ win_start_sample

uint16_t ch_dev_t::win_start_sample

Starting sample of sample window, if supported


The documentation for this struct was generated from the following file: