STAR
Cal STAR — firmware, DAQ server, and engine design
Loading...
Searching...
No Matches
ism330dhcx_reg.c File Reference

ISM330DHCX driver file. More...

#include "ism330dhcx_reg.h"
Include dependency graph for ism330dhcx_reg.c:

Go to the source code of this file.

Functions

int32_t ism330dhcx_read_reg (stmdev_ctx_t *ctx, uint8_t reg, uint8_t *data, uint16_t len)
 Read generic device register.
int32_t ism330dhcx_write_reg (stmdev_ctx_t *ctx, uint8_t reg, uint8_t *data, uint16_t len)
 Write generic device register.
float ism330dhcx_from_fs2g_to_mg (int16_t lsb)
float ism330dhcx_from_fs4g_to_mg (int16_t lsb)
float ism330dhcx_from_fs8g_to_mg (int16_t lsb)
float ism330dhcx_from_fs16g_to_mg (int16_t lsb)
float ism330dhcx_from_fs125dps_to_mdps (int16_t lsb)
float ism330dhcx_from_fs250dps_to_mdps (int16_t lsb)
float ism330dhcx_from_fs500dps_to_mdps (int16_t lsb)
float ism330dhcx_from_fs1000dps_to_mdps (int16_t lsb)
float ism330dhcx_from_fs2000dps_to_mdps (int16_t lsb)
float ism330dhcx_from_fs4000dps_to_mdps (int16_t lsb)
float ism330dhcx_from_lsb_to_celsius (int16_t lsb)
float ism330dhcx_from_lsb_to_nsec (int32_t lsb)
int32_t ism330dhcx_xl_full_scale_set (stmdev_ctx_t *ctx, ism330dhcx_fs_xl_t val)
 Accelerometer full-scale selection[set].
int32_t ism330dhcx_xl_full_scale_get (stmdev_ctx_t *ctx, ism330dhcx_fs_xl_t *val)
 Accelerometer full-scale selection.
int32_t ism330dhcx_xl_data_rate_set (stmdev_ctx_t *ctx, ism330dhcx_odr_xl_t val)
 Accelerometer UI data rate selection.
int32_t ism330dhcx_xl_data_rate_get (stmdev_ctx_t *ctx, ism330dhcx_odr_xl_t *val)
 Accelerometer UI data rate selection.
int32_t ism330dhcx_gy_full_scale_set (stmdev_ctx_t *ctx, ism330dhcx_fs_g_t val)
 Gyroscope UI chain full-scale selection.
int32_t ism330dhcx_gy_full_scale_get (stmdev_ctx_t *ctx, ism330dhcx_fs_g_t *val)
 Gyroscope UI chain full-scale selection.
int32_t ism330dhcx_gy_data_rate_set (stmdev_ctx_t *ctx, ism330dhcx_odr_g_t val)
 Gyroscope data rate.
int32_t ism330dhcx_gy_data_rate_get (stmdev_ctx_t *ctx, ism330dhcx_odr_g_t *val)
 Gyroscope data rate.
int32_t ism330dhcx_block_data_update_set (stmdev_ctx_t *ctx, uint8_t val)
 Block data update.
int32_t ism330dhcx_block_data_update_get (stmdev_ctx_t *ctx, uint8_t *val)
 Block data update.
int32_t ism330dhcx_xl_offset_weight_set (stmdev_ctx_t *ctx, ism330dhcx_usr_off_w_t val)
 Weight of XL user offset bits of registers X_OFS_USR (73h), Y_OFS_USR (74h), Z_OFS_USR (75h).
int32_t ism330dhcx_xl_offset_weight_get (stmdev_ctx_t *ctx, ism330dhcx_usr_off_w_t *val)
 Weight of XL user offset bits of registers X_OFS_USR (73h), Y_OFS_USR (74h), Z_OFS_USR (75h).
int32_t ism330dhcx_xl_power_mode_set (stmdev_ctx_t *ctx, ism330dhcx_xl_hm_mode_t val)
 Accelerometer power mode.
int32_t ism330dhcx_xl_power_mode_get (stmdev_ctx_t *ctx, ism330dhcx_xl_hm_mode_t *val)
 Accelerometer power mode[get].
int32_t ism330dhcx_gy_power_mode_set (stmdev_ctx_t *ctx, ism330dhcx_g_hm_mode_t val)
 Operating mode for gyroscope.
int32_t ism330dhcx_gy_power_mode_get (stmdev_ctx_t *ctx, ism330dhcx_g_hm_mode_t *val)
 gy_power_mode: [get] Operating mode for gyroscope.
int32_t ism330dhcx_all_sources_get (stmdev_ctx_t *ctx, ism330dhcx_all_sources_t *val)
 Read all the interrupt flag of the device.
int32_t ism330dhcx_status_reg_get (stmdev_ctx_t *ctx, ism330dhcx_status_reg_t *val)
 The STATUS_REG register is read by the primary interface.
int32_t ism330dhcx_xl_flag_data_ready_get (stmdev_ctx_t *ctx, uint8_t *val)
 Accelerometer new data available.
int32_t ism330dhcx_gy_flag_data_ready_get (stmdev_ctx_t *ctx, uint8_t *val)
 Gyroscope new data available.
int32_t ism330dhcx_temp_flag_data_ready_get (stmdev_ctx_t *ctx, uint8_t *val)
 Temperature new data available.
int32_t ism330dhcx_xl_usr_offset_x_set (stmdev_ctx_t *ctx, uint8_t *buff)
 Accelerometer X-axis user offset correction expressed in two’s complement, weight depends on USR_OFF_W in CTRL6_C (15h).
int32_t ism330dhcx_xl_usr_offset_x_get (stmdev_ctx_t *ctx, uint8_t *buff)
 Accelerometer X-axis user offset correction expressed in two’s complement, weight depends on USR_OFF_W in CTRL6_C (15h).
int32_t ism330dhcx_xl_usr_offset_y_set (stmdev_ctx_t *ctx, uint8_t *buff)
 Accelerometer Y-axis user offset correction expressed in two’s complement, weight depends on USR_OFF_W in CTRL6_C (15h).
int32_t ism330dhcx_xl_usr_offset_y_get (stmdev_ctx_t *ctx, uint8_t *buff)
 Accelerometer Y-axis user offset correction expressed in two’s complement, weight depends on USR_OFF_W in CTRL6_C (15h).
int32_t ism330dhcx_xl_usr_offset_z_set (stmdev_ctx_t *ctx, uint8_t *buff)
 Accelerometer Z-axis user offset correction expressed in two’s complement, weight depends on USR_OFF_W in CTRL6_C (15h).
int32_t ism330dhcx_xl_usr_offset_z_get (stmdev_ctx_t *ctx, uint8_t *buff)
 Accelerometer X-axis user offset correction expressed in two’s complement, weight depends on USR_OFF_W in CTRL6_C (15h).
int32_t ism330dhcx_xl_usr_offset_set (stmdev_ctx_t *ctx, uint8_t val)
 Enables user offset on out.
int32_t ism330dhcx_xl_usr_offset_get (stmdev_ctx_t *ctx, uint8_t *val)
 Get user offset on out flag.
int32_t ism330dhcx_timestamp_rst (stmdev_ctx_t *ctx)
 Reset timestamp counter.
int32_t ism330dhcx_timestamp_set (stmdev_ctx_t *ctx, uint8_t val)
 Enables timestamp counter.
int32_t ism330dhcx_timestamp_get (stmdev_ctx_t *ctx, uint8_t *val)
 Enables timestamp counter.
int32_t ism330dhcx_timestamp_raw_get (stmdev_ctx_t *ctx, uint32_t *val)
 Timestamp first data output register (r).
int32_t ism330dhcx_rounding_mode_set (stmdev_ctx_t *ctx, ism330dhcx_rounding_t val)
 Circular burst-mode (rounding) read of the output registers.
int32_t ism330dhcx_rounding_mode_get (stmdev_ctx_t *ctx, ism330dhcx_rounding_t *val)
 Gyroscope UI chain full-scale selection.
int32_t ism330dhcx_temperature_raw_get (stmdev_ctx_t *ctx, int16_t *val)
 Temperature data output register (r).
int32_t ism330dhcx_angular_rate_raw_get (stmdev_ctx_t *ctx, int16_t *val)
 Angular rate sensor.
int32_t ism330dhcx_acceleration_raw_get (stmdev_ctx_t *ctx, int16_t *val)
 Linear acceleration output register.
int32_t ism330dhcx_fifo_out_raw_get (stmdev_ctx_t *ctx, uint8_t *buff)
 FIFO data output.
int32_t ism330dhcx_number_of_steps_get (stmdev_ctx_t *ctx, uint16_t *val)
 Step counter output register.
int32_t ism330dhcx_steps_reset (stmdev_ctx_t *ctx)
 Reset step counter register.
int32_t ism330dhcx_mlc_out_get (stmdev_ctx_t *ctx, uint8_t *buff)
 prgsens_out: [get] Output value of all MLCx decision trees.
int32_t ism330dhcx_device_conf_set (stmdev_ctx_t *ctx, uint8_t val)
 DEVICE_CONF bit configuration[set].
int32_t ism330dhcx_device_conf_get (stmdev_ctx_t *ctx, uint8_t *val)
 DEVICE_CONF bit configuration[get].
int32_t ism330dhcx_odr_cal_reg_set (stmdev_ctx_t *ctx, uint8_t val)
 Difference in percentage of the effective ODR (and timestamp rate) with respect to the typical.
int32_t ism330dhcx_odr_cal_reg_get (stmdev_ctx_t *ctx, uint8_t *val)
 Difference in percentage of the effective ODR (and timestamp rate) with respect to the typical.
int32_t ism330dhcx_mem_bank_set (stmdev_ctx_t *ctx, ism330dhcx_reg_access_t val)
 Enable access to the embedded functions/sensor hub configuration registers.
int32_t ism330dhcx_mem_bank_get (stmdev_ctx_t *ctx, ism330dhcx_reg_access_t *val)
 Enable access to the embedded functions/sensor hub configuration registers.
int32_t ism330dhcx_ln_pg_write_byte (stmdev_ctx_t *ctx, uint16_t add, uint8_t *val)
 Write a line(byte) in a page.
int32_t ism330dhcx_ln_pg_write (stmdev_ctx_t *ctx, uint16_t add, uint8_t *buf, uint8_t len)
 Write buffer in a page.
int32_t ism330dhcx_ln_pg_read_byte (stmdev_ctx_t *ctx, uint16_t add, uint8_t *val)
 Read a line(byte) in a page.
int32_t ism330dhcx_data_ready_mode_set (stmdev_ctx_t *ctx, ism330dhcx_dataready_pulsed_t val)
 Data-ready pulsed / letched mode.
int32_t ism330dhcx_data_ready_mode_get (stmdev_ctx_t *ctx, ism330dhcx_dataready_pulsed_t *val)
 Data-ready pulsed / letched mode.
int32_t ism330dhcx_device_id_get (stmdev_ctx_t *ctx, uint8_t *buff)
 Device Who am I.
int32_t ism330dhcx_reset_set (stmdev_ctx_t *ctx, uint8_t val)
 Software reset.
int32_t ism330dhcx_reset_get (stmdev_ctx_t *ctx, uint8_t *val)
 Software reset.
int32_t ism330dhcx_auto_increment_set (stmdev_ctx_t *ctx, uint8_t val)
 Register address automatically incremented during a multiple byte access with a serial interface.
int32_t ism330dhcx_auto_increment_get (stmdev_ctx_t *ctx, uint8_t *val)
 Register address automatically incremented during a multiple byte access with a serial interface.
int32_t ism330dhcx_boot_set (stmdev_ctx_t *ctx, uint8_t val)
 Reboot memory content.
int32_t ism330dhcx_boot_get (stmdev_ctx_t *ctx, uint8_t *val)
 Reboot memory content.
int32_t ism330dhcx_xl_self_test_set (stmdev_ctx_t *ctx, ism330dhcx_st_xl_t val)
 Linear acceleration sensor self-test enable.
int32_t ism330dhcx_xl_self_test_get (stmdev_ctx_t *ctx, ism330dhcx_st_xl_t *val)
 Linear acceleration sensor self-test enable.
int32_t ism330dhcx_gy_self_test_set (stmdev_ctx_t *ctx, ism330dhcx_st_g_t val)
 Angular rate sensor self-test enable.
int32_t ism330dhcx_gy_self_test_get (stmdev_ctx_t *ctx, ism330dhcx_st_g_t *val)
 Angular rate sensor self-test enable.
int32_t ism330dhcx_xl_filter_lp2_set (stmdev_ctx_t *ctx, uint8_t val)
 Accelerometer output from LPF2 filtering stage selection.
int32_t ism330dhcx_xl_filter_lp2_get (stmdev_ctx_t *ctx, uint8_t *val)
 Accelerometer output from LPF2 filtering stage selection.
int32_t ism330dhcx_gy_filter_lp1_set (stmdev_ctx_t *ctx, uint8_t val)
 Enables gyroscope digital LPF1 if auxiliary SPI is disabled; the bandwidth can be selected through FTYPE [2:0] in CTRL6_C.
int32_t ism330dhcx_gy_filter_lp1_get (stmdev_ctx_t *ctx, uint8_t *val)
 Enables gyroscope digital LPF1 if auxiliary SPI is disabled; the bandwidth can be selected through FTYPE [2:0] in CTRL6_C.
int32_t ism330dhcx_filter_settling_mask_set (stmdev_ctx_t *ctx, uint8_t val)
 Mask DRDY on pin (both XL & Gyro) until filter settling ends (XL and Gyro independently masked).
int32_t ism330dhcx_filter_settling_mask_get (stmdev_ctx_t *ctx, uint8_t *val)
 Mask DRDY on pin (both XL & Gyro) until filter settling ends (XL and Gyro independently masked).
int32_t ism330dhcx_gy_lp1_bandwidth_set (stmdev_ctx_t *ctx, ism330dhcx_ftype_t val)
 Gyroscope low pass filter 1 bandwidth.
int32_t ism330dhcx_gy_lp1_bandwidth_get (stmdev_ctx_t *ctx, ism330dhcx_ftype_t *val)
 Gyroscope low pass filter 1 bandwidth.
int32_t ism330dhcx_xl_lp2_on_6d_set (stmdev_ctx_t *ctx, uint8_t val)
 Low pass filter 2 on 6D function selection.
int32_t ism330dhcx_xl_lp2_on_6d_get (stmdev_ctx_t *ctx, uint8_t *val)
 Low pass filter 2 on 6D function selection.
int32_t ism330dhcx_xl_hp_path_on_out_set (stmdev_ctx_t *ctx, ism330dhcx_hp_slope_xl_en_t val)
 Accelerometer slope filter / high-pass filter selection on output.
int32_t ism330dhcx_xl_hp_path_on_out_get (stmdev_ctx_t *ctx, ism330dhcx_hp_slope_xl_en_t *val)
 Accelerometer slope filter / high-pass filter selection on output.
int32_t ism330dhcx_xl_fast_settling_set (stmdev_ctx_t *ctx, uint8_t val)
 Enables accelerometer LPF2 and HPF fast-settling mode.
int32_t ism330dhcx_xl_fast_settling_get (stmdev_ctx_t *ctx, uint8_t *val)
 Enables accelerometer LPF2 and HPF fast-settling mode.
int32_t ism330dhcx_xl_hp_path_internal_set (stmdev_ctx_t *ctx, ism330dhcx_slope_fds_t val)
 HPF or SLOPE filter selection on wake-up and Activity/Inactivity functions.
int32_t ism330dhcx_xl_hp_path_internal_get (stmdev_ctx_t *ctx, ism330dhcx_slope_fds_t *val)
 HPF or SLOPE filter selection on wake-up and Activity/Inactivity functions.
int32_t ism330dhcx_gy_hp_path_internal_set (stmdev_ctx_t *ctx, ism330dhcx_hpm_g_t val)
 Enables gyroscope digital high-pass filter.
int32_t ism330dhcx_gy_hp_path_internal_get (stmdev_ctx_t *ctx, ism330dhcx_hpm_g_t *val)
 Enables gyroscope digital high-pass filter.
int32_t ism330dhcx_aux_sdo_ocs_mode_set (stmdev_ctx_t *ctx, ism330dhcx_ois_pu_dis_t val)
 On auxiliary interface connect/disconnect SDO and OCS internal pull-up.
int32_t ism330dhcx_aux_sdo_ocs_mode_get (stmdev_ctx_t *ctx, ism330dhcx_ois_pu_dis_t *val)
 On auxiliary interface connect/disconnect SDO and OCS internal pull-up.
int32_t ism330dhcx_aux_pw_on_ctrl_set (stmdev_ctx_t *ctx, ism330dhcx_ois_on_t val)
 OIS chain on aux interface power on mode.
int32_t ism330dhcx_aux_pw_on_ctrl_get (stmdev_ctx_t *ctx, ism330dhcx_ois_on_t *val)
 OIS chain on aux interface power on mode[get].
int32_t ism330dhcx_aux_status_reg_get (stmdev_ctx_t *ctx, ism330dhcx_status_spiaux_t *val)
 The STATUS_SPIAux register is read by the auxiliary SPI.
int32_t ism330dhcx_aux_xl_flag_data_ready_get (stmdev_ctx_t *ctx, uint8_t *val)
 AUX accelerometer data available.
int32_t ism330dhcx_aux_gy_flag_data_ready_get (stmdev_ctx_t *ctx, uint8_t *val)
 AUX gyroscope data available.
int32_t ism330dhcx_aux_gy_flag_settling_get (stmdev_ctx_t *ctx, uint8_t *val)
 High when the gyroscope output is in the settling phase.
int32_t ism330dhcx_aux_xl_self_test_set (stmdev_ctx_t *ctx, ism330dhcx_st_xl_ois_t val)
 Selects accelerometer self-test.
int32_t ism330dhcx_aux_xl_self_test_get (stmdev_ctx_t *ctx, ism330dhcx_st_xl_ois_t *val)
 Selects accelerometer self-test.
int32_t ism330dhcx_aux_den_polarity_set (stmdev_ctx_t *ctx, ism330dhcx_den_lh_ois_t val)
 Indicates polarity of DEN signal on OIS chain.
int32_t ism330dhcx_aux_den_polarity_get (stmdev_ctx_t *ctx, ism330dhcx_den_lh_ois_t *val)
 Indicates polarity of DEN signal on OIS chain.
int32_t ism330dhcx_aux_den_mode_set (stmdev_ctx_t *ctx, ism330dhcx_lvl2_ois_t val)
 Configure DEN mode on the OIS chain.
int32_t ism330dhcx_aux_den_mode_get (stmdev_ctx_t *ctx, ism330dhcx_lvl2_ois_t *val)
 Configure DEN mode on the OIS chain.
int32_t ism330dhcx_aux_drdy_on_int2_set (stmdev_ctx_t *ctx, uint8_t val)
 Enables/Disable OIS chain DRDY on INT2 pin.
int32_t ism330dhcx_aux_drdy_on_int2_get (stmdev_ctx_t *ctx, uint8_t *val)
 Enables/Disable OIS chain DRDY on INT2 pin.
int32_t ism330dhcx_aux_mode_set (stmdev_ctx_t *ctx, ism330dhcx_ois_en_spi2_t val)
 Enables OIS chain data processing for gyro in Mode 3 and Mode 4 (mode4_en = 1) and accelerometer data in and Mode 4 (mode4_en = 1).
int32_t ism330dhcx_aux_mode_get (stmdev_ctx_t *ctx, ism330dhcx_ois_en_spi2_t *val)
 Enables OIS chain data processing for gyro in Mode 3 and Mode 4 (mode4_en = 1) and accelerometer data in and Mode 4 (mode4_en = 1).
int32_t ism330dhcx_aux_gy_full_scale_set (stmdev_ctx_t *ctx, ism330dhcx_fs_g_ois_t val)
 Selects gyroscope OIS chain full-scale.
int32_t ism330dhcx_aux_gy_full_scale_get (stmdev_ctx_t *ctx, ism330dhcx_fs_g_ois_t *val)
 Selects gyroscope OIS chain full-scale.
int32_t ism330dhcx_aux_spi_mode_set (stmdev_ctx_t *ctx, ism330dhcx_sim_ois_t val)
 SPI2 3- or 4-wire interface.
int32_t ism330dhcx_aux_spi_mode_get (stmdev_ctx_t *ctx, ism330dhcx_sim_ois_t *val)
 SPI2 3- or 4-wire interface.
int32_t ism330dhcx_aux_gy_lp1_bandwidth_set (stmdev_ctx_t *ctx, ism330dhcx_ftype_ois_t val)
 Selects gyroscope digital LPF1 filter bandwidth.
int32_t ism330dhcx_aux_gy_lp1_bandwidth_get (stmdev_ctx_t *ctx, ism330dhcx_ftype_ois_t *val)
 Selects gyroscope digital LPF1 filter bandwidth.
int32_t ism330dhcx_aux_gy_hp_bandwidth_set (stmdev_ctx_t *ctx, ism330dhcx_hpm_ois_t val)
 Selects gyroscope OIS chain digital high-pass filter cutoff.
int32_t ism330dhcx_aux_gy_hp_bandwidth_get (stmdev_ctx_t *ctx, ism330dhcx_hpm_ois_t *val)
 Selects gyroscope OIS chain digital high-pass filter cutoff.
int32_t ism330dhcx_aux_gy_clamp_set (stmdev_ctx_t *ctx, ism330dhcx_st_ois_clampdis_t val)
 Enable / Disables OIS chain clamp.
int32_t ism330dhcx_aux_gy_clamp_get (stmdev_ctx_t *ctx, ism330dhcx_st_ois_clampdis_t *val)
 Enable / Disables OIS chain clamp.
int32_t ism330dhcx_aux_gy_self_test_set (stmdev_ctx_t *ctx, ism330dhcx_st_ois_t val)
 Selects gyroscope OIS chain self-test.
int32_t ism330dhcx_aux_gy_self_test_get (stmdev_ctx_t *ctx, ism330dhcx_st_ois_t *val)
 Selects gyroscope OIS chain self-test.
int32_t ism330dhcx_aux_xl_bandwidth_set (stmdev_ctx_t *ctx, ism330dhcx_filter_xl_conf_ois_t val)
 Selects accelerometer OIS channel bandwidth.
int32_t ism330dhcx_aux_xl_bandwidth_get (stmdev_ctx_t *ctx, ism330dhcx_filter_xl_conf_ois_t *val)
 Selects accelerometer OIS channel bandwidth.
int32_t ism330dhcx_aux_xl_full_scale_set (stmdev_ctx_t *ctx, ism330dhcx_fs_xl_ois_t val)
 Selects accelerometer OIS channel full-scale.
int32_t ism330dhcx_aux_xl_full_scale_get (stmdev_ctx_t *ctx, ism330dhcx_fs_xl_ois_t *val)
 Selects accelerometer OIS channel full-scale.
int32_t ism330dhcx_sdo_sa0_mode_set (stmdev_ctx_t *ctx, ism330dhcx_sdo_pu_en_t val)
 Connect/Disconnect SDO/SA0 internal pull-up.
int32_t ism330dhcx_sdo_sa0_mode_get (stmdev_ctx_t *ctx, ism330dhcx_sdo_pu_en_t *val)
 Connect/Disconnect SDO/SA0 internal pull-up.
int32_t ism330dhcx_spi_mode_set (stmdev_ctx_t *ctx, ism330dhcx_sim_t val)
 SPI Serial Interface Mode selection.
int32_t ism330dhcx_spi_mode_get (stmdev_ctx_t *ctx, ism330dhcx_sim_t *val)
 SPI Serial Interface Mode selection.
int32_t ism330dhcx_i2c_interface_set (stmdev_ctx_t *ctx, ism330dhcx_i2c_disable_t val)
 Disable / Enable I2C interface.
int32_t ism330dhcx_i2c_interface_get (stmdev_ctx_t *ctx, ism330dhcx_i2c_disable_t *val)
 Disable / Enable I2C interface.
int32_t ism330dhcx_pin_int1_route_set (stmdev_ctx_t *ctx, ism330dhcx_pin_int1_route_t *val)
 Select the signal that need to route on int1 pad[set].
int32_t ism330dhcx_pin_int1_route_get (stmdev_ctx_t *ctx, ism330dhcx_pin_int1_route_t *val)
 Select the signal that need to route on int1 pad.
int32_t ism330dhcx_pin_int2_route_set (stmdev_ctx_t *ctx, ism330dhcx_pin_int2_route_t *val)
 Select the signal that need to route on int2 pad[set].
int32_t ism330dhcx_pin_int2_route_get (stmdev_ctx_t *ctx, ism330dhcx_pin_int2_route_t *val)
 Select the signal that need to route on int2 pad.
int32_t ism330dhcx_pin_mode_set (stmdev_ctx_t *ctx, ism330dhcx_pp_od_t val)
 Push-pull/open drain selection on interrupt pads.
int32_t ism330dhcx_pin_mode_get (stmdev_ctx_t *ctx, ism330dhcx_pp_od_t *val)
 Push-pull/open drain selection on interrupt pads.
int32_t ism330dhcx_pin_polarity_set (stmdev_ctx_t *ctx, ism330dhcx_h_lactive_t val)
 Interrupt active-high/low.
int32_t ism330dhcx_pin_polarity_get (stmdev_ctx_t *ctx, ism330dhcx_h_lactive_t *val)
 Interrupt active-high/low.
int32_t ism330dhcx_all_on_int1_set (stmdev_ctx_t *ctx, uint8_t val)
 All interrupt signals become available on INT1 pin.
int32_t ism330dhcx_all_on_int1_get (stmdev_ctx_t *ctx, uint8_t *val)
 All interrupt signals become available on INT1 pin.
int32_t ism330dhcx_int_notification_set (stmdev_ctx_t *ctx, ism330dhcx_lir_t val)
 All interrupt signals notification mode.
int32_t ism330dhcx_int_notification_get (stmdev_ctx_t *ctx, ism330dhcx_lir_t *val)
 All interrupt signals notification mode.
int32_t ism330dhcx_wkup_ths_weight_set (stmdev_ctx_t *ctx, ism330dhcx_wake_ths_w_t val)
 Weight of 1 LSB of wakeup threshold.
int32_t ism330dhcx_wkup_ths_weight_get (stmdev_ctx_t *ctx, ism330dhcx_wake_ths_w_t *val)
 Weight of 1 LSB of wakeup threshold.
int32_t ism330dhcx_wkup_threshold_set (stmdev_ctx_t *ctx, uint8_t val)
 Threshold for wakeup: 1 LSB weight depends on WAKE_THS_W in WAKE_UP_DUR.
int32_t ism330dhcx_wkup_threshold_get (stmdev_ctx_t *ctx, uint8_t *val)
 Threshold for wakeup: 1 LSB weight depends on WAKE_THS_W in WAKE_UP_DUR.
int32_t ism330dhcx_xl_usr_offset_on_wkup_set (stmdev_ctx_t *ctx, uint8_t val)
 Wake up duration event( 1LSb = 1 / ODR ).
int32_t ism330dhcx_xl_usr_offset_on_wkup_get (stmdev_ctx_t *ctx, uint8_t *val)
 Wake up duration event( 1LSb = 1 / ODR ).
int32_t ism330dhcx_wkup_dur_set (stmdev_ctx_t *ctx, uint8_t val)
 Wake up duration event(1LSb = 1 / ODR).
int32_t ism330dhcx_wkup_dur_get (stmdev_ctx_t *ctx, uint8_t *val)
 Wake up duration event(1LSb = 1 / ODR).
int32_t ism330dhcx_gy_sleep_mode_set (stmdev_ctx_t *ctx, uint8_t val)
 Enables gyroscope Sleep mode.
int32_t ism330dhcx_gy_sleep_mode_get (stmdev_ctx_t *ctx, uint8_t *val)
 Enables gyroscope Sleep mode.
int32_t ism330dhcx_act_pin_notification_set (stmdev_ctx_t *ctx, ism330dhcx_sleep_status_on_int_t val)
 Drives the sleep status instead of sleep change on INT pins (only if INT1_SLEEP_CHANGE or INT2_SLEEP_CHANGE bits are enabled).
int32_t ism330dhcx_act_pin_notification_get (stmdev_ctx_t *ctx, ism330dhcx_sleep_status_on_int_t *val)
 Drives the sleep status instead of sleep change on INT pins (only if INT1_SLEEP_CHANGE or INT2_SLEEP_CHANGE bits are enabled).
int32_t ism330dhcx_act_mode_set (stmdev_ctx_t *ctx, ism330dhcx_inact_en_t val)
 Enable inactivity function.
int32_t ism330dhcx_act_mode_get (stmdev_ctx_t *ctx, ism330dhcx_inact_en_t *val)
 Enable inactivity function.
int32_t ism330dhcx_act_sleep_dur_set (stmdev_ctx_t *ctx, uint8_t val)
 Duration to go in sleep mode (1 LSb = 512 / ODR).
int32_t ism330dhcx_act_sleep_dur_get (stmdev_ctx_t *ctx, uint8_t *val)
 Duration to go in sleep mode.
int32_t ism330dhcx_tap_detection_on_z_set (stmdev_ctx_t *ctx, uint8_t val)
 Enable Z direction in tap recognition.
int32_t ism330dhcx_tap_detection_on_z_get (stmdev_ctx_t *ctx, uint8_t *val)
 Enable Z direction in tap recognition.
int32_t ism330dhcx_tap_detection_on_y_set (stmdev_ctx_t *ctx, uint8_t val)
 Enable Y direction in tap recognition.
int32_t ism330dhcx_tap_detection_on_y_get (stmdev_ctx_t *ctx, uint8_t *val)
 Enable Y direction in tap recognition.
int32_t ism330dhcx_tap_detection_on_x_set (stmdev_ctx_t *ctx, uint8_t val)
 Enable X direction in tap recognition.
int32_t ism330dhcx_tap_detection_on_x_get (stmdev_ctx_t *ctx, uint8_t *val)
 Enable X direction in tap recognition.
int32_t ism330dhcx_tap_threshold_x_set (stmdev_ctx_t *ctx, uint8_t val)
 X-axis tap recognition threshold.
int32_t ism330dhcx_tap_threshold_x_get (stmdev_ctx_t *ctx, uint8_t *val)
 X-axis tap recognition threshold.
int32_t ism330dhcx_tap_axis_priority_set (stmdev_ctx_t *ctx, ism330dhcx_tap_priority_t val)
 Selection of axis priority for TAP detection.
int32_t ism330dhcx_tap_axis_priority_get (stmdev_ctx_t *ctx, ism330dhcx_tap_priority_t *val)
 Selection of axis priority for TAP detection[get].
int32_t ism330dhcx_tap_threshold_y_set (stmdev_ctx_t *ctx, uint8_t val)
 Y-axis tap recognition threshold.
int32_t ism330dhcx_tap_threshold_y_get (stmdev_ctx_t *ctx, uint8_t *val)
 Y-axis tap recognition threshold.
int32_t ism330dhcx_tap_threshold_z_set (stmdev_ctx_t *ctx, uint8_t val)
 Z-axis recognition threshold.
int32_t ism330dhcx_tap_threshold_z_get (stmdev_ctx_t *ctx, uint8_t *val)
 Z-axis recognition threshold.
int32_t ism330dhcx_tap_shock_set (stmdev_ctx_t *ctx, uint8_t val)
 Maximum duration is the maximum time of an overthreshold signal detection to be recognized as a tap event.
int32_t ism330dhcx_tap_shock_get (stmdev_ctx_t *ctx, uint8_t *val)
 Maximum duration is the maximum time of an overthreshold signal detection to be recognized as a tap event.
int32_t ism330dhcx_tap_quiet_set (stmdev_ctx_t *ctx, uint8_t val)
 Quiet time is the time after the first detected tap in which there must not be any overthreshold event.
int32_t ism330dhcx_tap_quiet_get (stmdev_ctx_t *ctx, uint8_t *val)
 Quiet time is the time after the first detected tap in which there must not be any overthreshold event.
int32_t ism330dhcx_tap_dur_set (stmdev_ctx_t *ctx, uint8_t val)
 When double tap recognition is enabled, this register expresses the maximum time between two consecutive detected taps to determine a double tap event.
int32_t ism330dhcx_tap_dur_get (stmdev_ctx_t *ctx, uint8_t *val)
 When double tap recognition is enabled, this register expresses the maximum time between two consecutive detected taps to determine a double tap event.
int32_t ism330dhcx_tap_mode_set (stmdev_ctx_t *ctx, ism330dhcx_single_double_tap_t val)
 Single/double-tap event enable.
int32_t ism330dhcx_tap_mode_get (stmdev_ctx_t *ctx, ism330dhcx_single_double_tap_t *val)
 Single/double-tap event enable.
int32_t ism330dhcx_6d_threshold_set (stmdev_ctx_t *ctx, ism330dhcx_sixd_ths_t val)
 Threshold for 4D/6D function.
int32_t ism330dhcx_6d_threshold_get (stmdev_ctx_t *ctx, ism330dhcx_sixd_ths_t *val)
 Threshold for 4D/6D function.
int32_t ism330dhcx_4d_mode_set (stmdev_ctx_t *ctx, uint8_t val)
 4D orientation detection enable.
int32_t ism330dhcx_4d_mode_get (stmdev_ctx_t *ctx, uint8_t *val)
 4D orientation detection enable.
int32_t ism330dhcx_ff_threshold_set (stmdev_ctx_t *ctx, ism330dhcx_ff_ths_t val)
 Free fall threshold setting.
int32_t ism330dhcx_ff_threshold_get (stmdev_ctx_t *ctx, ism330dhcx_ff_ths_t *val)
 Free fall threshold setting.
int32_t ism330dhcx_ff_dur_set (stmdev_ctx_t *ctx, uint8_t val)
 Free-fall duration event(1LSb = 1 / ODR).
int32_t ism330dhcx_ff_dur_get (stmdev_ctx_t *ctx, uint8_t *val)
 Free-fall duration event(1LSb = 1 / ODR).
int32_t ism330dhcx_fifo_watermark_set (stmdev_ctx_t *ctx, uint16_t val)
 FIFO watermark level selection.
int32_t ism330dhcx_fifo_watermark_get (stmdev_ctx_t *ctx, uint16_t *val)
 FIFO watermark level selection.
int32_t ism330dhcx_compression_algo_init_set (stmdev_ctx_t *ctx, uint8_t val)
 FIFO compression feature initialization request.
int32_t ism330dhcx_compression_algo_init_get (stmdev_ctx_t *ctx, uint8_t *val)
 FIFO compression feature initialization request.
int32_t ism330dhcx_compression_algo_set (stmdev_ctx_t *ctx, ism330dhcx_uncoptr_rate_t val)
 Enable and configure compression algo.
int32_t ism330dhcx_compression_algo_get (stmdev_ctx_t *ctx, ism330dhcx_uncoptr_rate_t *val)
 Enable and configure compression algo.
int32_t ism330dhcx_fifo_virtual_sens_odr_chg_set (stmdev_ctx_t *ctx, uint8_t val)
 Enables ODR CHANGE virtual sensor to be batched in FIFO.
int32_t ism330dhcx_fifo_virtual_sens_odr_chg_get (stmdev_ctx_t *ctx, uint8_t *val)
 Enables ODR CHANGE virtual sensor to be batched in FIFO.
int32_t ism330dhcx_compression_algo_real_time_set (stmdev_ctx_t *ctx, uint8_t val)
 Enables/Disables compression algorithm runtime[set].
int32_t ism330dhcx_compression_algo_real_time_get (stmdev_ctx_t *ctx, uint8_t *val)
 Enables/Disables compression algorithm runtime.
int32_t ism330dhcx_fifo_stop_on_wtm_set (stmdev_ctx_t *ctx, uint8_t val)
 Sensing chain FIFO stop values memorization at threshold level.
int32_t ism330dhcx_fifo_stop_on_wtm_get (stmdev_ctx_t *ctx, uint8_t *val)
 Sensing chain FIFO stop values memorization at threshold level.
int32_t ism330dhcx_fifo_xl_batch_set (stmdev_ctx_t *ctx, ism330dhcx_bdr_xl_t val)
 Selects Batching Data Rate (writing frequency in FIFO) for accelerometer data.
int32_t ism330dhcx_fifo_xl_batch_get (stmdev_ctx_t *ctx, ism330dhcx_bdr_xl_t *val)
 Selects Batching Data Rate (writing frequency in FIFO) for accelerometer data.
int32_t ism330dhcx_fifo_gy_batch_set (stmdev_ctx_t *ctx, ism330dhcx_bdr_gy_t val)
 Selects Batching Data Rate (writing frequency in FIFO) for gyroscope data.
int32_t ism330dhcx_fifo_gy_batch_get (stmdev_ctx_t *ctx, ism330dhcx_bdr_gy_t *val)
 Selects Batching Data Rate (writing frequency in FIFO) for gyroscope data.
int32_t ism330dhcx_fifo_mode_set (stmdev_ctx_t *ctx, ism330dhcx_fifo_mode_t val)
 FIFO mode selection.
int32_t ism330dhcx_fifo_mode_get (stmdev_ctx_t *ctx, ism330dhcx_fifo_mode_t *val)
 FIFO mode selection.
int32_t ism330dhcx_fifo_temp_batch_set (stmdev_ctx_t *ctx, ism330dhcx_odr_t_batch_t val)
 Selects Batching Data Rate (writing frequency in FIFO) for temperature data.
int32_t ism330dhcx_fifo_temp_batch_get (stmdev_ctx_t *ctx, ism330dhcx_odr_t_batch_t *val)
 Selects Batching Data Rate (writing frequency in FIFO) for temperature data.
int32_t ism330dhcx_fifo_timestamp_decimation_set (stmdev_ctx_t *ctx, ism330dhcx_odr_ts_batch_t val)
 Selects decimation for timestamp batching in FIFO.
int32_t ism330dhcx_fifo_timestamp_decimation_get (stmdev_ctx_t *ctx, ism330dhcx_odr_ts_batch_t *val)
 Selects decimation for timestamp batching in FIFO.
int32_t ism330dhcx_fifo_cnt_event_batch_set (stmdev_ctx_t *ctx, ism330dhcx_trig_counter_bdr_t val)
 Selects the trigger for the internal counter of batching events between XL and gyro.
int32_t ism330dhcx_fifo_cnt_event_batch_get (stmdev_ctx_t *ctx, ism330dhcx_trig_counter_bdr_t *val)
 Selects the trigger for the internal counter of batching events between XL and gyro.
int32_t ism330dhcx_rst_batch_counter_set (stmdev_ctx_t *ctx, uint8_t val)
 Resets the internal counter of batching events for a single sensor.
int32_t ism330dhcx_rst_batch_counter_get (stmdev_ctx_t *ctx, uint8_t *val)
 Resets the internal counter of batching events for a single sensor.
int32_t ism330dhcx_batch_counter_threshold_set (stmdev_ctx_t *ctx, uint16_t val)
 Batch data rate counter.
int32_t ism330dhcx_batch_counter_threshold_get (stmdev_ctx_t *ctx, uint16_t *val)
 Batch data rate counter.
int32_t ism330dhcx_fifo_data_level_get (stmdev_ctx_t *ctx, uint16_t *val)
 Number of unread sensor data (TAG + 6 bytes) stored in FIFO.
int32_t ism330dhcx_fifo_status_get (stmdev_ctx_t *ctx, ism330dhcx_fifo_status2_t *val)
 Smart FIFO status.
int32_t ism330dhcx_fifo_full_flag_get (stmdev_ctx_t *ctx, uint8_t *val)
 Smart FIFO full status.
int32_t ism330dhcx_fifo_ovr_flag_get (stmdev_ctx_t *ctx, uint8_t *val)
 FIFO overrun status.
int32_t ism330dhcx_fifo_wtm_flag_get (stmdev_ctx_t *ctx, uint8_t *val)
 FIFO watermark status.
int32_t ism330dhcx_fifo_sensor_tag_get (stmdev_ctx_t *ctx, ism330dhcx_fifo_tag_t *val)
 Identifies the sensor in FIFO_DATA_OUT.
int32_t ism330dhcx_fifo_pedo_batch_set (stmdev_ctx_t *ctx, uint8_t val)
 Enable FIFO batching of pedometer embedded function values.
int32_t ism330dhcx_fifo_pedo_batch_get (stmdev_ctx_t *ctx, uint8_t *val)
 Enable FIFO batching of pedometer embedded function values.
int32_t ism330dhcx_sh_batch_slave_0_set (stmdev_ctx_t *ctx, uint8_t val)
 Enable FIFO batching data of first slave.
int32_t ism330dhcx_sh_batch_slave_0_get (stmdev_ctx_t *ctx, uint8_t *val)
 Enable FIFO batching data of first slave.
int32_t ism330dhcx_sh_batch_slave_1_set (stmdev_ctx_t *ctx, uint8_t val)
 Enable FIFO batching data of second slave.
int32_t ism330dhcx_sh_batch_slave_1_get (stmdev_ctx_t *ctx, uint8_t *val)
 Enable FIFO batching data of second slave.
int32_t ism330dhcx_sh_batch_slave_2_set (stmdev_ctx_t *ctx, uint8_t val)
 Enable FIFO batching data of third slave.
int32_t ism330dhcx_sh_batch_slave_2_get (stmdev_ctx_t *ctx, uint8_t *val)
 Enable FIFO batching data of third slave.
int32_t ism330dhcx_sh_batch_slave_3_set (stmdev_ctx_t *ctx, uint8_t val)
 Enable FIFO batching data of fourth slave.
int32_t ism330dhcx_sh_batch_slave_3_get (stmdev_ctx_t *ctx, uint8_t *val)
 Enable FIFO batching data of fourth slave.
int32_t ism330dhcx_den_mode_set (stmdev_ctx_t *ctx, ism330dhcx_den_mode_t val)
 DEN functionality marking mode.
int32_t ism330dhcx_den_mode_get (stmdev_ctx_t *ctx, ism330dhcx_den_mode_t *val)
 DEN functionality marking mode.
int32_t ism330dhcx_den_polarity_set (stmdev_ctx_t *ctx, ism330dhcx_den_lh_t val)
 DEN active level configuration.
int32_t ism330dhcx_den_polarity_get (stmdev_ctx_t *ctx, ism330dhcx_den_lh_t *val)
 DEN active level configuration.
int32_t ism330dhcx_den_enable_set (stmdev_ctx_t *ctx, ism330dhcx_den_xl_g_t val)
 DEN configuration.
int32_t ism330dhcx_den_enable_get (stmdev_ctx_t *ctx, ism330dhcx_den_xl_g_t *val)
 DEN configuration.
int32_t ism330dhcx_den_mark_axis_x_set (stmdev_ctx_t *ctx, uint8_t val)
 DEN value stored in LSB of X-axis.
int32_t ism330dhcx_den_mark_axis_x_get (stmdev_ctx_t *ctx, uint8_t *val)
 DEN value stored in LSB of X-axis.
int32_t ism330dhcx_den_mark_axis_y_set (stmdev_ctx_t *ctx, uint8_t val)
 DEN value stored in LSB of Y-axis.
int32_t ism330dhcx_den_mark_axis_y_get (stmdev_ctx_t *ctx, uint8_t *val)
 DEN value stored in LSB of Y-axis.
int32_t ism330dhcx_den_mark_axis_z_set (stmdev_ctx_t *ctx, uint8_t val)
 DEN value stored in LSB of Z-axis.
int32_t ism330dhcx_den_mark_axis_z_get (stmdev_ctx_t *ctx, uint8_t *val)
 DEN value stored in LSB of Z-axis.
int32_t ism330dhcx_pedo_sens_set (stmdev_ctx_t *ctx, uint8_t val)
 Enable pedometer algorithm.
int32_t ism330dhcx_pedo_sens_get (stmdev_ctx_t *ctx, uint8_t *val)
 Enable pedometer algorithm.
int32_t ism330dhcx_pedo_step_detect_get (stmdev_ctx_t *ctx, uint8_t *val)
 Interrupt status bit for step detection.
int32_t ism330dhcx_pedo_debounce_steps_set (stmdev_ctx_t *ctx, uint8_t *buff)
 Pedometer debounce configuration register (r/w).
int32_t ism330dhcx_pedo_debounce_steps_get (stmdev_ctx_t *ctx, uint8_t *buff)
 Pedometer debounce configuration register (r/w).
int32_t ism330dhcx_pedo_steps_period_set (stmdev_ctx_t *ctx, uint16_t val)
 Time period register for step detection on delta time (r/w).
int32_t ism330dhcx_pedo_steps_period_get (stmdev_ctx_t *ctx, uint16_t *val)
 Time period register for step detection on delta time (r/w).
int32_t ism330dhcx_pedo_int_mode_set (stmdev_ctx_t *ctx, ism330dhcx_carry_count_en_t val)
 Set when user wants to generate interrupt on count overflow event/every step.
int32_t ism330dhcx_pedo_int_mode_get (stmdev_ctx_t *ctx, ism330dhcx_carry_count_en_t *val)
 Set when user wants to generate interrupt on count overflow event/every step.
int32_t ism330dhcx_motion_sens_set (stmdev_ctx_t *ctx, uint8_t val)
 Enable significant motion detection function.
int32_t ism330dhcx_motion_sens_get (stmdev_ctx_t *ctx, uint8_t *val)
 Enable significant motion detection function.
int32_t ism330dhcx_motion_flag_data_ready_get (stmdev_ctx_t *ctx, uint8_t *val)
 Interrupt status bit for significant motion detection.
int32_t ism330dhcx_tilt_sens_set (stmdev_ctx_t *ctx, uint8_t val)
 Enable tilt calculation.
int32_t ism330dhcx_tilt_sens_get (stmdev_ctx_t *ctx, uint8_t *val)
 Enable tilt calculation.
int32_t ism330dhcx_tilt_flag_data_ready_get (stmdev_ctx_t *ctx, uint8_t *val)
 Interrupt status bit for tilt detection.
int32_t ism330dhcx_mag_sensitivity_set (stmdev_ctx_t *ctx, uint16_t val)
 External magnetometer sensitivity value register.
int32_t ism330dhcx_mag_sensitivity_get (stmdev_ctx_t *ctx, uint16_t *val)
 External magnetometer sensitivity value register.
int32_t ism330dhcx_mag_offset_set (stmdev_ctx_t *ctx, int16_t *val)
 Offset for hard-iron compensation register (r/w).
int32_t ism330dhcx_mag_offset_get (stmdev_ctx_t *ctx, int16_t *val)
 Offset for hard-iron compensation register (r/w).
int32_t ism330dhcx_mag_soft_iron_set (stmdev_ctx_t *ctx, uint16_t *val)
 Soft-iron (3x3 symmetric) matrix correction register (r/w).
int32_t ism330dhcx_mag_soft_iron_get (stmdev_ctx_t *ctx, uint16_t *val)
 Soft-iron (3x3 symmetric) matrix correction register (r/w).
int32_t ism330dhcx_mag_z_orient_set (stmdev_ctx_t *ctx, ism330dhcx_mag_z_axis_t val)
 Magnetometer Z-axis coordinates rotation (to be aligned to accelerometer/gyroscope axes orientation).
int32_t ism330dhcx_mag_z_orient_get (stmdev_ctx_t *ctx, ism330dhcx_mag_z_axis_t *val)
 Magnetometer Z-axis coordinates rotation (to be aligned to accelerometer/gyroscope axes orientation).
int32_t ism330dhcx_mag_y_orient_set (stmdev_ctx_t *ctx, ism330dhcx_mag_y_axis_t val)
 Magnetometer Y-axis coordinates rotation (to be aligned to accelerometer/gyroscope axes orientation).
int32_t ism330dhcx_mag_y_orient_get (stmdev_ctx_t *ctx, ism330dhcx_mag_y_axis_t *val)
 Magnetometer Y-axis coordinates rotation (to be aligned to accelerometer/gyroscope axes orientation).
int32_t ism330dhcx_mag_x_orient_set (stmdev_ctx_t *ctx, ism330dhcx_mag_x_axis_t val)
 Magnetometer X-axis coordinates rotation (to be aligned to accelerometer/gyroscope axes orientation).
int32_t ism330dhcx_mag_x_orient_get (stmdev_ctx_t *ctx, ism330dhcx_mag_x_axis_t *val)
 Magnetometer X-axis coordinates rotation (to be aligned to accelerometer/gyroscope axes orientation).
int32_t ism330dhcx_long_cnt_flag_data_ready_get (stmdev_ctx_t *ctx, uint8_t *val)
 Interrupt status bit for FSM long counter timeout interrupt event.
int32_t ism330dhcx_emb_fsm_en_set (stmdev_ctx_t *ctx, uint8_t val)
 Embedded final state machine functions mode.
int32_t ism330dhcx_emb_fsm_en_get (stmdev_ctx_t *ctx, uint8_t *val)
 Embedded final state machine functions mode.
int32_t ism330dhcx_fsm_enable_set (stmdev_ctx_t *ctx, ism330dhcx_emb_fsm_enable_t *val)
 Embedded final state machine functions mode.
int32_t ism330dhcx_fsm_enable_get (stmdev_ctx_t *ctx, ism330dhcx_emb_fsm_enable_t *val)
 Embedded final state machine functions mode.
int32_t ism330dhcx_long_cnt_set (stmdev_ctx_t *ctx, uint16_t val)
 FSM long counter status register.
int32_t ism330dhcx_long_cnt_get (stmdev_ctx_t *ctx, uint16_t *val)
 FSM long counter status register.
int32_t ism330dhcx_long_clr_set (stmdev_ctx_t *ctx, ism330dhcx_fsm_lc_clr_t val)
 Clear FSM long counter value.
int32_t ism330dhcx_long_clr_get (stmdev_ctx_t *ctx, ism330dhcx_fsm_lc_clr_t *val)
 Clear FSM long counter value.
int32_t ism330dhcx_fsm_out_get (stmdev_ctx_t *ctx, ism330dhcx_fsm_out_t *val)
 FSM output registers.
int32_t ism330dhcx_fsm_data_rate_set (stmdev_ctx_t *ctx, ism330dhcx_fsm_odr_t val)
 Finite State Machine ODR configuration.
int32_t ism330dhcx_fsm_data_rate_get (stmdev_ctx_t *ctx, ism330dhcx_fsm_odr_t *val)
 Finite State Machine ODR configuration.
int32_t ism330dhcx_fsm_init_set (stmdev_ctx_t *ctx, uint8_t val)
 FSM initialization request.
int32_t ism330dhcx_fsm_init_get (stmdev_ctx_t *ctx, uint8_t *val)
 FSM initialization request.
int32_t ism330dhcx_long_cnt_int_value_set (stmdev_ctx_t *ctx, uint16_t val)
 FSM long counter timeout register (r/w).
int32_t ism330dhcx_long_cnt_int_value_get (stmdev_ctx_t *ctx, uint16_t *val)
 FSM long counter timeout register (r/w).
int32_t ism330dhcx_fsm_number_of_programs_set (stmdev_ctx_t *ctx, uint8_t *buff)
 FSM number of programs register.
int32_t ism330dhcx_fsm_number_of_programs_get (stmdev_ctx_t *ctx, uint8_t *buff)
 FSM number of programs register.
int32_t ism330dhcx_fsm_start_address_set (stmdev_ctx_t *ctx, uint16_t val)
 FSM start address register (r/w).
int32_t ism330dhcx_fsm_start_address_get (stmdev_ctx_t *ctx, uint16_t *val)
 FSM start address register (r/w).
int32_t ism330dhcx_mlc_set (stmdev_ctx_t *ctx, uint8_t val)
 Enable Machine Learning Core.
int32_t ism330dhcx_mlc_get (stmdev_ctx_t *ctx, uint8_t *val)
 Enable Machine Learning Core.
int32_t ism330dhcx_mlc_status_get (stmdev_ctx_t *ctx, ism330dhcx_mlc_status_mainpage_t *val)
 Machine Learning Core status register[get].
int32_t ism330dhcx_mlc_data_rate_set (stmdev_ctx_t *ctx, ism330dhcx_mlc_odr_t val)
 Machine Learning Core data rate selection.
int32_t ism330dhcx_mlc_data_rate_get (stmdev_ctx_t *ctx, ism330dhcx_mlc_odr_t *val)
 Machine Learning Core data rate selection.
int32_t ism330dhcx_sh_read_data_raw_get (stmdev_ctx_t *ctx, ism330dhcx_emb_sh_read_t *val, uint8_t len)
 Sensor hub output registers.
int32_t ism330dhcx_sh_slave_connected_set (stmdev_ctx_t *ctx, ism330dhcx_aux_sens_on_t val)
 Number of external sensors to be read by the sensor hub.
int32_t ism330dhcx_sh_slave_connected_get (stmdev_ctx_t *ctx, ism330dhcx_aux_sens_on_t *val)
 Number of external sensors to be read by the sensor hub.
int32_t ism330dhcx_sh_master_set (stmdev_ctx_t *ctx, uint8_t val)
 Sensor hub I2C master enable.
int32_t ism330dhcx_sh_master_get (stmdev_ctx_t *ctx, uint8_t *val)
 Sensor hub I2C master enable.
int32_t ism330dhcx_sh_pin_mode_set (stmdev_ctx_t *ctx, ism330dhcx_shub_pu_en_t val)
 Master I2C pull-up enable.
int32_t ism330dhcx_sh_pin_mode_get (stmdev_ctx_t *ctx, ism330dhcx_shub_pu_en_t *val)
 Master I2C pull-up enable.
int32_t ism330dhcx_sh_pass_through_set (stmdev_ctx_t *ctx, uint8_t val)
 I2C interface pass-through.
int32_t ism330dhcx_sh_pass_through_get (stmdev_ctx_t *ctx, uint8_t *val)
 I2C interface pass-through.
int32_t ism330dhcx_sh_syncro_mode_set (stmdev_ctx_t *ctx, ism330dhcx_start_config_t val)
 Sensor hub trigger signal selection.
int32_t ism330dhcx_sh_syncro_mode_get (stmdev_ctx_t *ctx, ism330dhcx_start_config_t *val)
 Sensor hub trigger signal selection.
int32_t ism330dhcx_sh_write_mode_set (stmdev_ctx_t *ctx, ism330dhcx_write_once_t val)
 Slave 0 write operation is performed only at the first sensor hub cycle.
int32_t ism330dhcx_sh_write_mode_get (stmdev_ctx_t *ctx, ism330dhcx_write_once_t *val)
 Slave 0 write operation is performed only at the first sensor hub cycle.
int32_t ism330dhcx_sh_reset_set (stmdev_ctx_t *ctx)
 Reset Master logic and output registers.
int32_t ism330dhcx_sh_reset_get (stmdev_ctx_t *ctx, uint8_t *val)
 Reset Master logic and output registers.
int32_t ism330dhcx_sh_data_rate_set (stmdev_ctx_t *ctx, ism330dhcx_shub_odr_t val)
 Rate at which the master communicates.
int32_t ism330dhcx_sh_data_rate_get (stmdev_ctx_t *ctx, ism330dhcx_shub_odr_t *val)
 Rate at which the master communicates.
int32_t ism330dhcx_sh_cfg_write (stmdev_ctx_t *ctx, ism330dhcx_sh_cfg_write_t *val)
 Configure slave 0 for perform a write.
int32_t ism330dhcx_sh_slv0_cfg_read (stmdev_ctx_t *ctx, ism330dhcx_sh_cfg_read_t *val)
 Configure slave 0 for perform a write/read.
int32_t ism330dhcx_sh_slv1_cfg_read (stmdev_ctx_t *ctx, ism330dhcx_sh_cfg_read_t *val)
 Configure slave 0 for perform a write/read.
int32_t ism330dhcx_sh_slv2_cfg_read (stmdev_ctx_t *ctx, ism330dhcx_sh_cfg_read_t *val)
 Configure slave 2 for perform a write/read.
int32_t ism330dhcx_sh_slv3_cfg_read (stmdev_ctx_t *ctx, ism330dhcx_sh_cfg_read_t *val)
 Configure slave 3 for perform a write/read.
int32_t ism330dhcx_sh_status_get (stmdev_ctx_t *ctx, ism330dhcx_status_master_t *val)
 Sensor hub source register.

Detailed Description

ISM330DHCX driver file.

Author
Sensors Software Solution Team
Attention

© Copyright (c) 2021 STMicroelectronics. All rights reserved.

This software component is licensed by ST under BSD 3-Clause license, the "License"; You may not use this file except in compliance with the License. You may obtain a copy of the License at: opensource.org/licenses/BSD-3-Clause

Definition in file ism330dhcx_reg.c.