53 DEV_ASSERT((instance == FTM1_IDX) || (instance == FTM2_IDX));
62 FTM_DRV_SetQuadDecoderCmd(ftmBase,
false);
63 FTM_DRV_SetClockSource(ftmBase, FTM_CLOCK_SOURCE_NONE);
87 FTM_DRV_SetCounterInitVal(ftmBase, config->
initialVal);
88 FTM_DRV_SetMod(ftmBase, config->
maxVal);
89 FTM_DRV_SetCounter(ftmBase, config->
initialVal);
91 FTM_DRV_SetQuadDecoderCmd(ftmBase,
true);
111 DEV_ASSERT((instance == FTM1_IDX) || (instance == FTM2_IDX));
116 FTM_DRV_SetQuadDecoderCmd(ftmBase,
false);
132 DEV_ASSERT((instance == FTM1_IDX) || (instance == FTM2_IDX));
static bool FTM_DRV_GetQuadDir(const FTM_Type *ftmBase)
Gets the FTM counter direction in quadrature mode.
FlexTimer state structure of the driver.
static void FTM_DRV_SetQuadPhaseBFilterCmd(FTM_Type *const ftmBase, bool enable)
Enables or disables the phase B input filter.
FTM_Type *const g_ftmBase[FTM_INSTANCE_COUNT]
Table of base addresses for FTM instances.
ftm_state_t * ftmStatePtr[FTM_INSTANCE_COUNT]
Pointer to runtime state structure.
status_t FTM_DRV_QuadDecodeStart(uint32_t instance, const ftm_quad_decode_config_t *config)
Configures the quadrature mode and starts measurement.
static bool FTM_DRV_HasTimerOverflowed(const FTM_Type *ftmBase)
Returns the FTM peripheral timer overflow interrupt flag.
ftm_phase_params_t phaseAConfig
ftm_phase_params_t phaseBConfig
static void FTM_DRV_SetQuadPhaseAPolarity(FTM_Type *const ftmBase, ftm_quad_phase_polarity_t mode)
Selects polarity for the quadrature decode phase A input.
static bool FTM_DRV_GetQuadTimerOverflowDir(const FTM_Type *ftmBase)
Gets the Timer overflow direction in quadrature mode.
ftm_quad_decode_mode_t mode
status_t
Status return codes. Common error codes will be a unified enumeration (C enum) that will contain all ...
FTM quadrature configure structure.
ftm_quad_decoder_state_t FTM_DRV_QuadGetState(uint32_t instance)
Return the current quadrature decoder state (counter value, overflow flag and overflow direction) ...
status_t FTM_DRV_QuadDecodeStop(uint32_t instance)
De-activates the quadrature decode mode.
static void FTM_DRV_SetQuadPhaseBPolarity(FTM_Type *const ftmBase, ftm_quad_phase_polarity_t mode)
Selects polarity for the quadrature decode phase B input.
ftm_config_mode_t ftmMode
static void FTM_DRV_SetQuadMode(FTM_Type *const ftmBase, ftm_quad_decode_mode_t quadMode)
Sets the encoding mode used in quadrature decoding mode.
ftm_quad_phase_polarity_t phasePolarity
FTM quadrature state(counter value and flags)
static uint16_t FTM_DRV_GetCounter(const FTM_Type *ftmBase)
Returns the FTM peripheral current counter value.