Da Vinci Firmware 1
Firmware for the DaVinci-M rocket avionics board.
Loading...
Searching...
No Matches
LSM6DSO32_DEN_functionality

This section groups all the functions concerning DEN functionality. More...

Collaboration diagram for LSM6DSO32_DEN_functionality:

Functions

int32_t lsm6dso32_den_mode_set (stmdev_ctx_t *ctx, lsm6dso32_den_mode_t val)
 DEN functionality marking mode.[set].
 
int32_t lsm6dso32_den_mode_get (stmdev_ctx_t *ctx, lsm6dso32_den_mode_t *val)
 DEN functionality marking mode.[get].
 
int32_t lsm6dso32_den_polarity_set (stmdev_ctx_t *ctx, lsm6dso32_den_lh_t val)
 DEN active level configuration.[set].
 
int32_t lsm6dso32_den_polarity_get (stmdev_ctx_t *ctx, lsm6dso32_den_lh_t *val)
 DEN active level configuration.[get].
 
int32_t lsm6dso32_den_enable_set (stmdev_ctx_t *ctx, lsm6dso32_den_xl_g_t val)
 DEN enable.[set].
 
int32_t lsm6dso32_den_enable_get (stmdev_ctx_t *ctx, lsm6dso32_den_xl_g_t *val)
 DEN enable.[get].
 
int32_t lsm6dso32_den_mark_axis_x_set (stmdev_ctx_t *ctx, uint8_t val)
 DEN value stored in LSB of X-axis.[set].
 
int32_t lsm6dso32_den_mark_axis_x_get (stmdev_ctx_t *ctx, uint8_t *val)
 DEN value stored in LSB of X-axis.[get].
 
int32_t lsm6dso32_den_mark_axis_y_set (stmdev_ctx_t *ctx, uint8_t val)
 DEN value stored in LSB of Y-axis.[set].
 
int32_t lsm6dso32_den_mark_axis_y_get (stmdev_ctx_t *ctx, uint8_t *val)
 DEN value stored in LSB of Y-axis.[get].
 
int32_t lsm6dso32_den_mark_axis_z_set (stmdev_ctx_t *ctx, uint8_t val)
 DEN value stored in LSB of Z-axis.[set].
 
int32_t lsm6dso32_den_mark_axis_z_get (stmdev_ctx_t *ctx, uint8_t *val)
 DEN value stored in LSB of Z-axis.[get].
 

Detailed Description

This section groups all the functions concerning DEN functionality.

Function Documentation

◆ lsm6dso32_den_enable_get()

int32_t lsm6dso32_den_enable_get ( stmdev_ctx_t ctx,
lsm6dso32_den_xl_g_t val 
)

DEN enable.[get].

Parameters
ctxread / write interface definitions
valGet the values of den_xl_g in reg CTRL9_XL
Return values
interfacestatus (MANDATORY: return 0 -> no Error)

Definition at line 6762 of file lsm6dso32_reg.c.

6764{
6766 int32_t ret;
6767
6768 ret = lsm6dso32_read_reg(ctx, LSM6DSO32_CTRL9_XL, (uint8_t *)&reg, 1);
6769
6770 switch (reg.den_xl_g)
6771 {
6774 break;
6775
6778 break;
6779
6782 break;
6783
6784 default:
6786 break;
6787 }
6788
6789 return ret;
6790}
int32_t __weak lsm6dso32_read_reg(stmdev_ctx_t *ctx, uint8_t reg, uint8_t *data, uint16_t len)
Read generic device register.
#define LSM6DSO32_CTRL9_XL
@ LSM6DSO32_STAMP_IN_XL_DATA
@ LSM6DSO32_STAMP_IN_GY_DATA
@ LSM6DSO32_STAMP_IN_GY_XL_DATA

References lsm6dso32_ctrl9_xl_t::den_xl_g, LSM6DSO32_CTRL9_XL, lsm6dso32_read_reg(), LSM6DSO32_STAMP_IN_GY_DATA, LSM6DSO32_STAMP_IN_GY_XL_DATA, and LSM6DSO32_STAMP_IN_XL_DATA.

Here is the call graph for this function:

◆ lsm6dso32_den_enable_set()

int32_t lsm6dso32_den_enable_set ( stmdev_ctx_t ctx,
lsm6dso32_den_xl_g_t  val 
)

DEN enable.[set].

Parameters
ctxread / write interface definitions
valchange the values of den_xl_g in reg CTRL9_XL
Return values
interfacestatus (MANDATORY: return 0 -> no Error)

Definition at line 6737 of file lsm6dso32_reg.c.

6739{
6741 int32_t ret;
6742
6743 ret = lsm6dso32_read_reg(ctx, LSM6DSO32_CTRL9_XL, (uint8_t *)&reg, 1);
6744
6745 if (ret == 0)
6746 {
6747 reg.den_xl_g = (uint8_t)val;
6748 ret = lsm6dso32_write_reg(ctx, LSM6DSO32_CTRL9_XL, (uint8_t *)&reg, 1);
6749 }
6750
6751 return ret;
6752}
int32_t __weak lsm6dso32_write_reg(stmdev_ctx_t *ctx, uint8_t reg, uint8_t *data, uint16_t len)
Write generic device register.

References lsm6dso32_ctrl9_xl_t::den_xl_g, LSM6DSO32_CTRL9_XL, lsm6dso32_read_reg(), and lsm6dso32_write_reg().

Here is the call graph for this function:

◆ lsm6dso32_den_mark_axis_x_get()

int32_t lsm6dso32_den_mark_axis_x_get ( stmdev_ctx_t ctx,
uint8_t *  val 
)

DEN value stored in LSB of X-axis.[get].

Parameters
ctxread / write interface definitions
valchange the values of den_z in reg CTRL9_XL
Return values
interfacestatus (MANDATORY: return 0 -> no Error)

Definition at line 6824 of file lsm6dso32_reg.c.

6825{
6827 int32_t ret;
6828
6829 ret = lsm6dso32_read_reg(ctx, LSM6DSO32_CTRL9_XL, (uint8_t *)&reg, 1);
6830 *val = reg.den_z;
6831
6832 return ret;
6833}

References lsm6dso32_ctrl9_xl_t::den_z, LSM6DSO32_CTRL9_XL, and lsm6dso32_read_reg().

Here is the call graph for this function:

◆ lsm6dso32_den_mark_axis_x_set()

int32_t lsm6dso32_den_mark_axis_x_set ( stmdev_ctx_t ctx,
uint8_t  val 
)

DEN value stored in LSB of X-axis.[set].

Parameters
ctxread / write interface definitions
valchange the values of den_z in reg CTRL9_XL
Return values
interfacestatus (MANDATORY: return 0 -> no Error)

Definition at line 6800 of file lsm6dso32_reg.c.

6801{
6803 int32_t ret;
6804
6805 ret = lsm6dso32_read_reg(ctx, LSM6DSO32_CTRL9_XL, (uint8_t *)&reg, 1);
6806
6807 if (ret == 0)
6808 {
6809 reg.den_z = val;
6810 ret = lsm6dso32_write_reg(ctx, LSM6DSO32_CTRL9_XL, (uint8_t *)&reg, 1);
6811 }
6812
6813 return ret;
6814}

References lsm6dso32_ctrl9_xl_t::den_z, LSM6DSO32_CTRL9_XL, lsm6dso32_read_reg(), and lsm6dso32_write_reg().

Here is the call graph for this function:

◆ lsm6dso32_den_mark_axis_y_get()

int32_t lsm6dso32_den_mark_axis_y_get ( stmdev_ctx_t ctx,
uint8_t *  val 
)

DEN value stored in LSB of Y-axis.[get].

Parameters
ctxread / write interface definitions
valchange the values of den_y in reg CTRL9_XL
Return values
interfacestatus (MANDATORY: return 0 -> no Error)

Definition at line 6867 of file lsm6dso32_reg.c.

6868{
6870 int32_t ret;
6871
6872 ret = lsm6dso32_read_reg(ctx, LSM6DSO32_CTRL9_XL, (uint8_t *)&reg, 1);
6873 *val = reg.den_y;
6874
6875 return ret;
6876}

References lsm6dso32_ctrl9_xl_t::den_y, LSM6DSO32_CTRL9_XL, and lsm6dso32_read_reg().

Here is the call graph for this function:

◆ lsm6dso32_den_mark_axis_y_set()

int32_t lsm6dso32_den_mark_axis_y_set ( stmdev_ctx_t ctx,
uint8_t  val 
)

DEN value stored in LSB of Y-axis.[set].

Parameters
ctxread / write interface definitions
valchange the values of den_y in reg CTRL9_XL
Return values
interfacestatus (MANDATORY: return 0 -> no Error)

Definition at line 6843 of file lsm6dso32_reg.c.

6844{
6846 int32_t ret;
6847
6848 ret = lsm6dso32_read_reg(ctx, LSM6DSO32_CTRL9_XL, (uint8_t *)&reg, 1);
6849
6850 if (ret == 0)
6851 {
6852 reg.den_y = val;
6853 ret = lsm6dso32_write_reg(ctx, LSM6DSO32_CTRL9_XL, (uint8_t *)&reg, 1);
6854 }
6855
6856 return ret;
6857}

References lsm6dso32_ctrl9_xl_t::den_y, LSM6DSO32_CTRL9_XL, lsm6dso32_read_reg(), and lsm6dso32_write_reg().

Here is the call graph for this function:

◆ lsm6dso32_den_mark_axis_z_get()

int32_t lsm6dso32_den_mark_axis_z_get ( stmdev_ctx_t ctx,
uint8_t *  val 
)

DEN value stored in LSB of Z-axis.[get].

Parameters
ctxread / write interface definitions
valchange the values of den_x in reg CTRL9_XL
Return values
interfacestatus (MANDATORY: return 0 -> no Error)

Definition at line 6910 of file lsm6dso32_reg.c.

6911{
6913 int32_t ret;
6914
6915 ret = lsm6dso32_read_reg(ctx, LSM6DSO32_CTRL9_XL, (uint8_t *)&reg, 1);
6916 *val = reg.den_x;
6917
6918 return ret;
6919}

References lsm6dso32_ctrl9_xl_t::den_x, LSM6DSO32_CTRL9_XL, and lsm6dso32_read_reg().

Here is the call graph for this function:

◆ lsm6dso32_den_mark_axis_z_set()

int32_t lsm6dso32_den_mark_axis_z_set ( stmdev_ctx_t ctx,
uint8_t  val 
)

DEN value stored in LSB of Z-axis.[set].

Parameters
ctxread / write interface definitions
valchange the values of den_x in reg CTRL9_XL
Return values
interfacestatus (MANDATORY: return 0 -> no Error)

Definition at line 6886 of file lsm6dso32_reg.c.

6887{
6889 int32_t ret;
6890
6891 ret = lsm6dso32_read_reg(ctx, LSM6DSO32_CTRL9_XL, (uint8_t *)&reg, 1);
6892
6893 if (ret == 0)
6894 {
6895 reg.den_x = val;
6896 ret = lsm6dso32_write_reg(ctx, LSM6DSO32_CTRL9_XL, (uint8_t *)&reg, 1);
6897 }
6898
6899 return ret;
6900}

References lsm6dso32_ctrl9_xl_t::den_x, LSM6DSO32_CTRL9_XL, lsm6dso32_read_reg(), and lsm6dso32_write_reg().

Here is the call graph for this function:

◆ lsm6dso32_den_mode_get()

int32_t lsm6dso32_den_mode_get ( stmdev_ctx_t ctx,
lsm6dso32_den_mode_t val 
)

DEN functionality marking mode.[get].

Parameters
ctxread / write interface definitions
valGet the values of den_mode in reg CTRL6_C
Return values
interfacestatus (MANDATORY: return 0 -> no Error)

Definition at line 6632 of file lsm6dso32_reg.c.

6634{
6636 int32_t ret;
6637
6638 ret = lsm6dso32_read_reg(ctx, LSM6DSO32_CTRL6_C, (uint8_t *)&reg, 1);
6639
6640 switch (reg.den_mode)
6641 {
6643 *val = LSM6DSO32_DEN_DISABLE;
6644 break;
6645
6647 *val = LSM6DSO32_LEVEL_FIFO;
6648 break;
6649
6652 break;
6653
6656 break;
6657
6660 break;
6661
6662 default:
6663 *val = LSM6DSO32_DEN_DISABLE;
6664 break;
6665 }
6666
6667 return ret;
6668}
#define LSM6DSO32_CTRL6_C
@ LSM6DSO32_LEVEL_FIFO
@ LSM6DSO32_EDGE_TRIGGER
@ LSM6DSO32_DEN_DISABLE
@ LSM6DSO32_LEVEL_TRIGGER
@ LSM6DSO32_LEVEL_LETCHED

References lsm6dso32_ctrl6_c_t::den_mode, LSM6DSO32_CTRL6_C, LSM6DSO32_DEN_DISABLE, LSM6DSO32_EDGE_TRIGGER, LSM6DSO32_LEVEL_FIFO, LSM6DSO32_LEVEL_LETCHED, LSM6DSO32_LEVEL_TRIGGER, and lsm6dso32_read_reg().

Here is the call graph for this function:

◆ lsm6dso32_den_mode_set()

int32_t lsm6dso32_den_mode_set ( stmdev_ctx_t ctx,
lsm6dso32_den_mode_t  val 
)

DEN functionality marking mode.[set].

Parameters
ctxread / write interface definitions
valchange the values of den_mode in reg CTRL6_C
Return values
interfacestatus (MANDATORY: return 0 -> no Error)

Definition at line 6607 of file lsm6dso32_reg.c.

6609{
6611 int32_t ret;
6612
6613 ret = lsm6dso32_read_reg(ctx, LSM6DSO32_CTRL6_C, (uint8_t *)&reg, 1);
6614
6615 if (ret == 0)
6616 {
6617 reg.den_mode = (uint8_t)val;
6618 ret = lsm6dso32_write_reg(ctx, LSM6DSO32_CTRL6_C, (uint8_t *)&reg, 1);
6619 }
6620
6621 return ret;
6622}

References lsm6dso32_ctrl6_c_t::den_mode, LSM6DSO32_CTRL6_C, lsm6dso32_read_reg(), and lsm6dso32_write_reg().

Here is the call graph for this function:

◆ lsm6dso32_den_polarity_get()

int32_t lsm6dso32_den_polarity_get ( stmdev_ctx_t ctx,
lsm6dso32_den_lh_t val 
)

DEN active level configuration.[get].

Parameters
ctxread / write interface definitions
valGet the values of den_lh in reg CTRL9_XL
Return values
interfacestatus (MANDATORY: return 0 -> no Error)

Definition at line 6703 of file lsm6dso32_reg.c.

6705{
6707 int32_t ret;
6708
6709 ret = lsm6dso32_read_reg(ctx, LSM6DSO32_CTRL9_XL, (uint8_t *)&reg, 1);
6710
6711 switch (reg.den_lh)
6712 {
6714 *val = LSM6DSO32_DEN_ACT_LOW;
6715 break;
6716
6719 break;
6720
6721 default:
6722 *val = LSM6DSO32_DEN_ACT_LOW;
6723 break;
6724 }
6725
6726 return ret;
6727}
@ LSM6DSO32_DEN_ACT_HIGH
@ LSM6DSO32_DEN_ACT_LOW

References lsm6dso32_ctrl9_xl_t::den_lh, LSM6DSO32_CTRL9_XL, LSM6DSO32_DEN_ACT_HIGH, LSM6DSO32_DEN_ACT_LOW, and lsm6dso32_read_reg().

Here is the call graph for this function:

◆ lsm6dso32_den_polarity_set()

int32_t lsm6dso32_den_polarity_set ( stmdev_ctx_t ctx,
lsm6dso32_den_lh_t  val 
)

DEN active level configuration.[set].

Parameters
ctxread / write interface definitions
valchange the values of den_lh in reg CTRL9_XL
Return values
interfacestatus (MANDATORY: return 0 -> no Error)

Definition at line 6678 of file lsm6dso32_reg.c.

6680{
6682 int32_t ret;
6683
6684 ret = lsm6dso32_read_reg(ctx, LSM6DSO32_CTRL9_XL, (uint8_t *)&reg, 1);
6685
6686 if (ret == 0)
6687 {
6688 reg.den_lh = (uint8_t)val;
6689 ret = lsm6dso32_write_reg(ctx, LSM6DSO32_CTRL9_XL, (uint8_t *)&reg, 1);
6690 }
6691
6692 return ret;
6693}

References lsm6dso32_ctrl9_xl_t::den_lh, LSM6DSO32_CTRL9_XL, lsm6dso32_read_reg(), and lsm6dso32_write_reg().

Here is the call graph for this function: