38 #if defined(LESENSE_COUNT) && (LESENSE_COUNT > 0)
58 #define LESENSE_NUM_DECODER_STATES (_LESENSE_DECSTATE_DECSTATE_MASK + 1)
61 #define LESENSE_NUM_CHANNELS 16
107 #if defined( LESENSE_CTRL_PRSSEL_PRSCH4 )
110 #if defined( LESENSE_CTRL_PRSSEL_PRSCH5 )
113 #if defined( LESENSE_CTRL_PRSSEL_PRSCH6 )
116 #if defined( LESENSE_CTRL_PRSSEL_PRSCH7 )
119 #if defined( LESENSE_CTRL_PRSSEL_PRSCH8 )
122 #if defined( LESENSE_CTRL_PRSSEL_PRSCH9 )
125 #if defined( LESENSE_CTRL_PRSSEL_PRSCH10 )
128 #if defined( LESENSE_CTRL_PRSSEL_PRSCH11 )
140 #if defined(_LESENSE_CTRL_ALTEXMAP_ACMP)
145 #if defined(_LESENSE_CTRL_ALTEXMAP_CH)
148 lesenseAltExMapCH = _LESENSE_CTRL_ALTEXMAP_CH,
222 #if defined(_LESENSE_PERCTRL_DACCH0DATA_ACMPTHRES)
228 #if defined(_LESENSE_PERCTRL_DACCH0DATA_THRES)
231 lesenseThres = _LESENSE_PERCTRL_DACCH0DATA_THRES,
235 #if defined(_LESENSE_PERCTRL_DACCH0CONV_MASK)
257 #if defined(_LESENSE_PERCTRL_DACCH0OUT_MASK)
280 #if defined(_LESENSE_PERCTRL_DACREF_MASK)
347 #if defined(LESENSE_CH_INTERACT_SAMPLE_ADC)
349 lesenseSampleModeADC = LESENSE_CH_INTERACT_SAMPLE_ADC,
352 lesenseSampleModeADCDiff = LESENSE_CH_INTERACT_SAMPLE_ADCDIFF,
406 #if defined(_LESENSE_IDLECONF_CH0_DAC)
409 lesenseChPinIdleDACC = _LESENSE_IDLECONF_CH0_DAC
446 #if defined(_LESENSE_CH_EVAL_MODE_MASK)
455 lesenseEvalModeThreshold = _LESENSE_CH_EVAL_MODE_THRES,
460 lesenseEvalModeSlidingWindow = _LESENSE_CH_EVAL_MODE_SLIDINGWIN,
468 lesenseEvalModeStepDetection = _LESENSE_CH_EVAL_MODE_STEPDET,
469 } LESENSE_ChEvalMode_TypeDef;
579 #define LESENSE_CORECTRL_DESC_DEFAULT \
581 lesenseScanStartPeriodic, \
583 lesenseScanConfDirMap, \
589 lesenseBufTrigHalf, \
590 lesenseDMAWakeUpDisable, \
591 lesenseBiasModeDontTouch, \
610 #define LESENSE_TIMECTRL_DESC_DEFAULT \
623 #if defined(_LESENSE_PERCTRL_DACCH0CONV_MASK)
634 #if defined(_LESENSE_PERCTRL_DACCH1CONV_MASK)
642 #if defined(_LESENSE_PERCTRL_DACPRESC_MASK)
648 #if defined(_LESENSE_PERCTRL_DACREF_MASK)
663 #if defined(_LESENSE_PERCTRL_DACCONVTRIG_MASK)
671 #if defined(_SILICON_LABS_32B_SERIES_0)
672 #define LESENSE_PERCTRL_DESC_DEFAULT \
675 lesenseDACConvModeDisable, \
676 lesenseDACOutModeDisable, \
678 lesenseDACConvModeDisable, \
679 lesenseDACOutModeDisable, \
682 lesenseACMPModeMuxThres, \
683 lesenseACMPModeMuxThres, \
684 lesenseWarmupModeKeepWarm, \
687 #define LESENSE_PERCTRL_DESC_DEFAULT \
691 lesenseACMPModeMuxThres, \
692 lesenseACMPModeMuxThres, \
693 lesenseWarmupModeKeepWarm, \
749 #define LESENSE_DECCTRL_DESC_DEFAULT \
751 lesenseDecInputSensorSt, \
784 #define LESENSE_INIT_DEFAULT \
786 .coreCtrl = LESENSE_CORECTRL_DESC_DEFAULT, \
787 .timeCtrl = LESENSE_TIMECTRL_DESC_DEFAULT, \
788 .perCtrl = LESENSE_PERCTRL_DESC_DEFAULT, \
789 .decCtrl = LESENSE_DECCTRL_DESC_DEFAULT \
872 #if defined(_LESENSE_CH_EVAL_MODE_MASK)
874 LESENSE_ChEvalMode_TypeDef evalMode;
888 #if defined(_LESENSE_CH_EVAL_MODE_MASK)
889 #define LESENSE_CH_CONF_DEFAULT \
894 lesenseChPinExHigh, \
895 lesenseChPinIdleLow, \
906 lesenseSampleModeACMP, \
909 lesenseCompModeLess, \
910 lesenseEvalModeThreshold \
913 #define LESENSE_CH_CONF_DEFAULT \
918 lesenseChPinExHigh, \
919 lesenseChPinIdleLow, \
930 lesenseSampleModeACMP, \
933 lesenseCompModeLess \
939 #define LESENSE_SCAN_CONF_DEFAULT \
942 LESENSE_CH_CONF_DEFAULT, \
943 LESENSE_CH_CONF_DEFAULT, \
944 LESENSE_CH_CONF_DEFAULT, \
945 LESENSE_CH_CONF_DEFAULT, \
946 LESENSE_CH_CONF_DEFAULT, \
947 LESENSE_CH_CONF_DEFAULT, \
948 LESENSE_CH_CONF_DEFAULT, \
949 LESENSE_CH_CONF_DEFAULT, \
950 LESENSE_CH_CONF_DEFAULT, \
951 LESENSE_CH_CONF_DEFAULT, \
952 LESENSE_CH_CONF_DEFAULT, \
953 LESENSE_CH_CONF_DEFAULT, \
954 LESENSE_CH_CONF_DEFAULT, \
955 LESENSE_CH_CONF_DEFAULT, \
956 LESENSE_CH_CONF_DEFAULT, \
957 LESENSE_CH_CONF_DEFAULT, \
1008 #define LESENSE_ALTEX_CH_CONF_DEFAULT \
1011 lesenseAltExPinIdleDis, \
1016 #if defined(_LESENSE_CTRL_ALTEXMAP_ACMP)
1017 #define LESENSE_ALTEX_CONF_DEFAULT \
1019 lesenseAltExMapACMP, \
1021 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1022 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1023 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1024 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1025 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1026 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1027 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1028 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1029 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1030 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1031 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1032 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1033 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1034 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1035 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1036 LESENSE_ALTEX_CH_CONF_DEFAULT \
1040 #define LESENSE_ALTEX_CONF_DEFAULT \
1042 lesenseAltExMapCH, \
1044 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1045 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1046 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1047 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1048 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1049 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1050 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1051 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1052 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1053 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1054 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1055 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1056 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1057 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1058 LESENSE_ALTEX_CH_CONF_DEFAULT, \
1059 LESENSE_ALTEX_CH_CONF_DEFAULT \
1089 #define LESENSE_ST_CONF_DEFAULT \
1094 lesenseTransActNone, \
1124 #if defined(_SILICON_LABS_32B_SERIES_0)
1125 #define LESENSE_DECODER_CONF_DEFAULT \
1128 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1129 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1130 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1131 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1132 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1133 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1134 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1135 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1136 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1137 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1138 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1139 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1140 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1141 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1142 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1143 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT } \
1147 #define LESENSE_DECODER_CONF_DEFAULT \
1150 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1151 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1152 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1153 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1154 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1155 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1156 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1157 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1158 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1159 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1160 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1161 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1162 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1163 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1164 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1165 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1166 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1167 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1168 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1169 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1170 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1171 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1172 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1173 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1174 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1175 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1176 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1177 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1178 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1179 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1180 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT }, \
1181 { false, LESENSE_ST_CONF_DEFAULT, LESENSE_ST_CONF_DEFAULT } \
1207 uint8_t sampleDelay,
1208 uint16_t measDelay);
1212 #if defined(_LESENSE_CH_EVAL_MODE_MASK)
1213 void LESENSE_ChannelSlidingWindow(uint8_t chIdx,
1214 uint32_t windowSize,
1215 uint32_t initValue);
1216 void LESENSE_ChannelStepDetection(uint8_t chIdx,
1218 uint32_t initValue);
1219 void LESENSE_WindowSizeSet(uint32_t windowSize);
1220 void LESENSE_StepSizeSet(uint32_t stepSize);
1230 #if defined(_LESENSE_PRSCTRL_MASK)
1231 void LESENSE_DecoderPrsOut(
bool enable, uint32_t decMask, uint32_t decCmp);
1297 while (!(
LESENSE->STATUS & flag))
1370 return LESENSE->BUF[idx & 0x0FU].DATA;
1387 #if defined(LESENSE_POWERDOWN_RAM)
__STATIC_INLINE uint32_t LESENSE_IntGetEnabled(void)
Get enabled and pending LESENSE interrupt flags.
__STATIC_INLINE void LESENSE_StatusWait(uint32_t flag)
Wait until the status of LESENSE is equal to what requested.
#define LESENSE_CTRL_DMAWU_DISABLE
LESENSE_PRSSel_TypeDef prsChSel3
__STATIC_INLINE void LESENSE_IntClear(uint32_t flags)
Clear one or more pending LESENSE interrupts.
#define _LESENSE_CTRL_ALTEXMAP_ALTEX
LESENSE_TimeCtrlDesc_TypeDef timeCtrl
void LESENSE_AltExConfig(const LESENSE_ConfAltEx_TypeDef *confAltEx)
Configure the LESENSE alternate excitation modes.
LESENSE_ControlACMP_TypeDef acmp1Mode
#define LESENSE_NUM_CHANNELS
#define LESENSE_BIASCTRL_BIASMODE_HIGHACC
#define LESENSE_BIASCTRL_BIASMODE_DUTYCYCLE
#define _LESENSE_PERCTRL_DACCH0OUT_PIN
#define LESENSE_CTRL_SCANMODE_ONESHOT
LESENSE_ControlACMP_TypeDef
void LESENSE_DecoderStart(void)
Start LESENSE decoder.
LESENSE_ChSampleMode_TypeDef
#define LESENSE_CH_INTERACT_EXMODE_DISABLE
LESENSE_ControlDACData_TypeDef dacCh0Data
LESENSE_DecStCond_TypeDef confA
LESENSE_BufTrigLevel_TypeDef
#define LESENSE_PERCTRL_DACREF_BANDGAP
LESENSE_DecCtrlDesc_TypeDef decCtrl
LESENSE_ControlDACData_TypeDef dacCh1Data
LESENSE_ChPinIdleMode_TypeDef chPinIdleMode
void LESENSE_Init(const LESENSE_Init_TypeDef *init, bool reqReset)
Initialize the LESENSE module.
LESENSE_ScanConfSel_TypeDef
#define _LESENSE_IDLECONF_CH0_HIGH
#define _LESENSE_PERCTRL_DACCH0DATA_ACMPTHRES
#define LESENSE_CH_INTERACT_EXMODE_DACOUT
LESENSE_ControlDACOut_TypeDef
__STATIC_INLINE uint32_t LESENSE_SensorStateGet(void)
Get the current state of the LESENSE sensor.
void LESENSE_Reset(void)
Reset the LESENSE module.
#define LESENSE_CTRL_SCANCONF_DECDEF
LESENSE_DMAWakeUp_TypeDef
void LESENSE_ResultBufferClear(void)
Clear result buffer.
CMSIS Cortex-M Peripheral Access Layer for Silicon Laboratories microcontroller devices.
void LESENSE_ChannelThresSet(uint8_t chIdx, uint16_t acmpThres, uint16_t cntThres)
Set LESENSE channel threshold parameters.
#define LESENSE_ST_TCONFA_PRSACT_NONE
#define LESENSE_DECCTRL_DISABLE
#define LESENSE_ST_TCONFA_PRSACT_PRS2
#define LESENSE_ST_TCONFA_PRSACT_PRS01
#define LESENSE_CTRL_BUFIDL_FULL
void LESENSE_ScanModeSet(LESENSE_ScanMode_TypeDef scanMode, bool start)
Set scan mode of the LESENSE channels.
#define LESENSE_CTRL_SCANCONF_INVMAP
LESENSE_PRSSel_TypeDef prsChSel0
#define _LESENSE_PERCTRL_DACCH0CONV_SAMPLEOFF
LESENSE_ControlDACOut_TypeDef dacCh0OutMode
#define LESENSE_CTRL_SCANCONF_TOGGLE
#define _LESENSE_PERCTRL_DACCH0CONV_DISABLE
#define _LESENSE_CH_INTERACT_EXCLK_LFACLK
void LESENSE_DecoderStateSet(uint32_t decSt)
Set LESENSE decoder state.
#define LESENSE_CH_INTERACT_SETIF_LEVEL
#define _LESENSE_PERCTRL_ACMP0MODE_MUXTHRES
#define LESENSE_PERCTRL_WARMUPMODE_KEEPDACWARM
#define LESENSE_ST_TCONFA_PRSACT_UP
#define LESENSE_CH_EVAL_COMP_GE
LESENSE_PRSSel_TypeDef prsSel
#define _LESENSE_CTRL_ALTEXMAP_ACMP
LESENSE_AltExPinIdle_TypeDef
#define LESENSE_DECCTRL_INPUT_PRS
#define LESENSE_CTRL_SCANMODE_PRS
LESENSE_ChClk_TypeDef exClk
#define LESENSE_CH_INTERACT_SAMPLE_ACMP
#define _LESENSE_PERCTRL_DACCH0DATA_DACDATA
void LESENSE_ChannelTimingSet(uint8_t chIdx, uint8_t exTime, uint8_t sampleDelay, uint16_t measDelay)
Set LESENSE channel timing parameters.
uint32_t LESENSE_ScanFreqSet(uint32_t refFreq, uint32_t scanFreq)
Set scan frequency for periodic scanning.
#define LESENSE_ST_TCONFA_PRSACT_PRS0
#define _LESENSE_PERCTRL_DACCH0CONV_CONTINUOUS
__STATIC_INLINE void LESENSE_IntDisable(uint32_t flags)
Disable one or more LESENSE interrupts.
LESENSE_DMAWakeUp_TypeDef wakeupOnDMA
LESENSE_ControlDACConv_TypeDef dacCh1ConvMode
#define LESENSE_ST_TCONFA_PRSACT_PRS02
#define LESENSE_PERCTRL_WARMUPMODE_KEEPACMPDACWARM
__STATIC_INLINE uint32_t LESENSE_ScanResultDataBufferGet(uint32_t idx)
Get data from the result data buffer.
#define _LESENSE_PERCTRL_DACCH0OUT_DISABLE
LESENSE_StTransAct_TypeDef
#define LESENSE_CH_EVAL_COMP_LESS
LESENSE_ChCompMode_TypeDef compMode
#define _LESENSE_SCANRES_SCANRES_MASK
#define LESENSE_ST_TCONFA_PRSACT_PRS1
__STATIC_INLINE uint32_t LESENSE_StatusGet(void)
Get the current status of LESENSE.
#define LESENSE_BIASCTRL_BIASMODE_DONTTOUCH
#define LESENSE_CTRL_SCANMODE_PERIODIC
void LESENSE_ClkDivSet(LESENSE_ChClk_TypeDef clk, LESENSE_ClkPresc_TypeDef clkDiv)
Set clock division for LESENSE timers.
LESENSE_PRSSel_TypeDef prsChSel2
#define LESENSE_NUM_DECODER_STATES
#define LESENSE_ST_TCONFA_PRSACT_PRS012
LESENSE_DACRef_TypeDef dacRef
#define LESENSE_ST_TCONFA_PRSACT_DOWN
void LESENSE_ChannelAllConfig(const LESENSE_ChAll_TypeDef *confChAll)
Configure all (16) LESENSE sensor channels.
LESENSE_WarmupMode_TypeDef
#define LESENSE_CTRL_BUFIDL_HALFFULL
__STATIC_INLINE uint32_t LESENSE_ScanResultGet(void)
Get the latest scan comparison result (1 bit / channel).
LESENSE_PerCtrlDesc_TypeDef perCtrl
void LESENSE_ChannelConfig(const LESENSE_ChDesc_TypeDef *confCh, uint32_t chIdx)
Configure a single LESENSE sensor channel.
LESENSE_ScanConfSel_TypeDef scanConfSel
#define _LESENSE_IDLECONF_CH0_DISABLE
uint32_t LESENSE_DecoderStateGet(void)
Get the current state of the LESENSE decoder.
#define _LESENSE_IDLECONF_CH0_LOW
LESENSE_ControlACMP_TypeDef acmp0Mode
LESENSE_ChCompMode_TypeDef
#define _LESENSE_PERCTRL_DACCH0CONV_SAMPLEHOLD
void LESENSE_ChannelEnable(uint8_t chIdx, bool enaScanCh, bool enaPin)
Enable/disable LESENSE scan channel and the pin assigned to it.
LESENSE_ControlDACConv_TypeDef
#define LESENSE_CTRL_SCANCONF_DIRMAP
__STATIC_INLINE uint32_t LESENSE_IntGet(void)
Get pending LESENSE interrupt flags.
LESENSE_ChPinExMode_TypeDef
#define LESENSE_ST_TCONFA_PRSACT_DOWNANDPRS2
#define LESENSE_POWERDOWN_RAM
LESENSE_ControlDACConv_TypeDef dacCh0ConvMode
LESENSE_ControlDACOut_TypeDef dacCh1OutMode
#define LESENSE_PERCTRL_WARMUPMODE_NORMAL
LESENSE_DecStCond_TypeDef confB
#define LESENSE_ST_TCONFA_PRSACT_UPANDPRS2
LESENSE_ChClk_TypeDef sampleClk
#define _LESENSE_ALTEXCONF_IDLECONF0_DISABLE
LESENSE_CoreCtrlDesc_TypeDef coreCtrl
LESENSE_ScanMode_TypeDef scanStart
__STATIC_INLINE uint32_t LESENSE_ScanResultDataGet(void)
Get the oldest unread data from the result buffer.
#define LESENSE_CH_INTERACT_SETIF_NEGEDGE
#define LESENSE_PERCTRL_WARMUPMODE_KEEPACMPWARM
LESENSE_AltExMap_TypeDef altExMap
#define LESENSE_CH_INTERACT_SETIF_POSEDGE
#define _LESENSE_ALTEXCONF_IDLECONF0_HIGH
#define _LESENSE_CH_INTERACT_EXCLK_AUXHFRCO
void LESENSE_DecoderStateConfig(const LESENSE_DecStDesc_TypeDef *confDecSt, uint32_t decSt)
Configure a single LESENSE decoder state.
LESENSE_ControlDACData_TypeDef
LESENSE_DecInput_TypeDef decInput
LESENSE_ChIntMode_TypeDef
LESENSE_WarmupMode_TypeDef warmupMode
LESENSE_StTransAct_TypeDef prsAct
#define _LESENSE_IDLECONF_CH12_DACCH1
LESENSE_BiasMode_TypeDef biasMode
LESENSE_AltExPinIdle_TypeDef idleConf
#define LESENSE_CH_INTERACT_EXMODE_LOW
void LESENSE_ChannelEnableMask(uint16_t chMask, uint16_t pinMask)
Enable/disable LESENSE scan channel and the pin assigned to it.
#define _LESENSE_PERCTRL_DACCH0OUT_PINADCACMP
void LESENSE_StartDelaySet(uint8_t startDelay)
Set start delay of sensor interaction on each channel.
#define _LESENSE_CH_INTERACT_SAMPLE_SHIFT
void LESENSE_ScanStart(void)
Start scanning of sensors.
__STATIC_INLINE void LESENSE_DecoderStop(void)
Stop LESENSE decoder.
#define LESENSE_CTRL_DMAWU_BUFDATAV
void LESENSE_ScanStop(void)
Stop scanning of sensors.
#define _LESENSE_ALTEXCONF_IDLECONF0_LOW
#define _LESENSE_IDLECONF_CH0_DACCH0
#define _LESENSE_PERCTRL_ACMP0MODE_DISABLE
__STATIC_INLINE uint32_t LESENSE_ChannelActiveGet(void)
Get the currently active channel index.
#define _LESENSE_PERCTRL_ACMP0MODE_MUX
#define LESENSE_PERCTRL_DACREF_VDD
#define _LESENSE_PERCTRL_DACCH0OUT_ADCACMP
#define LESENSE_CTRL_DMAWU_BUFLEVEL
#define LESENSE_CH_INTERACT_EXMODE_HIGH
__STATIC_INLINE void LESENSE_IntEnable(uint32_t flags)
Enable one or more LESENSE interrupts.
LESENSE_ChPinIdleMode_TypeDef
#define LESENSE_CH_INTERACT_SETIF_NONE
__STATIC_INLINE void LESENSE_RAMPowerDown(void)
Shut off power to the LESENSE RAM, disables LESENSE.
LESENSE_ChIntMode_TypeDef intMode
LESENSE_ChPinExMode_TypeDef chPinExMode
LESENSE_BufTrigLevel_TypeDef bufTrigLevel
LESENSE_PRSSel_TypeDef prsChSel1
LESENSE_ChSampleMode_TypeDef sampleMode
#define LESENSE_DECCTRL_INPUT_SENSORSTATE
__STATIC_INLINE void LESENSE_IntSet(uint32_t flags)
Set one or more pending LESENSE interrupts from SW.
#define LESENSE_ST_TCONFA_PRSACT_PRS12
void LESENSE_DecoderStateAllConfig(const LESENSE_DecStAll_TypeDef *confDecStAll)
Configure all LESENSE decoder states.