AM263Px MCU+ SDK: APIs for SDFM

| AM263Px MCU+ SDK 26.00.00 |

Data Structures | Functions | Macros
APIs for SDFM
APIs for SOC Specific Device Drivers

## Introduction

This module contains APIs to program and use the SDFM module.

## Data Structures
struct | SDFM_CompEventFilterConfig

## Functions
static void | SDFM_enableExternalReset (uint32_t base, uint32_t filterNumber)
static void | SDFM_disableExternalReset (uint32_t base, uint32_t filterNumber)
static void | SDFM_enableFilter (uint32_t base, uint32_t filterNumber)
static void | SDFM_disableFilter (uint32_t base, uint32_t filterNumber)
static void | SDFM_enableFIFOBuffer (uint32_t base, uint32_t filterNumber)
static void | SDFM_disableFIFOBuffer (uint32_t base, uint32_t filterNumber)
static bool | SDFM_getZeroCrossTripStatus (uint32_t base, uint32_t filterNumber)
static void | SDFM_clearZeroCrossTripStatus (uint32_t base, uint32_t filterNumber)
static void | SDFM_enableComparator (uint32_t base, uint32_t filterNumber)
static void | SDFM_disableComparator (uint32_t base, uint32_t filterNumber)
static void | SDFM_selectCompEventSource (uint32_t base, uint32_t filterNumber, uint32_t compEventNum, uint32_t compEventSource)
static void | SDFM_setFilterType (uint32_t base, uint32_t filterNumber, uint32_t filterType)
static void | SDFM_setFilterOverSamplingRatio (uint32_t base, uint32_t filterNumber, uint16_t overSamplingRatio)
static void | SDFM_setupModulatorClock (uint32_t base, uint32_t filterNumber, uint32_t clockMode)
static void | SDFM_setOutputDataFormat (uint32_t base, uint32_t filterNumber, uint32_t dataFormat)
static void | SDFM_setDataShiftValue (uint32_t base, uint32_t filterNumber, uint16_t shiftValue)
static void | SDFM_setCompFilterHighThreshold (uint32_t base, uint32_t filterNumber, uint32_t highThreshold)
static void | SDFM_setCompFilterLowThreshold (uint32_t base, uint32_t filterNumber, uint32_t lowThreshold)
static void | SDFM_setCompFilterZeroCrossThreshold (uint32_t base, uint32_t filterNumber, uint16_t zeroCrossThreshold)
static void | SDFM_enableZeroCrossEdgeDetect (uint32_t base, uint32_t filterNumber)
static void | SDFM_disableZeroCrossEdgeDetect (uint32_t base, uint32_t filterNumber)
static void | SDFM_enableInterrupt (uint32_t base, uint32_t filterNumber, uint16_t intFlags)
static void | SDFM_disableInterrupt (uint32_t base, uint32_t filterNumber, uint16_t intFlags)
static void | SDFM_setComparatorFilterType (uint32_t base, uint32_t filterNumber, uint32_t filterType)
static void | SDFM_setCompFilterOverSamplingRatio (uint32_t base, uint32_t filterNumber, uint16_t overSamplingRatio)
static uint32_t | SDFM_getFilterData (uint32_t base, uint32_t filterNumber)
static uint32_t | SDFM_getThresholdStatus (uint32_t base, uint32_t filterNumber)
static bool | SDFM_getModulatorStatus (uint32_t base, uint32_t filterNumber)
static bool | SDFM_getNewFilterDataStatus (uint32_t base, uint32_t filterNumber)
static bool | SDFM_getFIFOOverflowStatus (uint32_t base, uint32_t filterNumber)
static bool | SDFM_getFIFOISRStatus (uint32_t base, uint32_t filterNumber)
static bool | SDFM_getIsrStatus (uint32_t base)
static void | SDFM_clearInterruptFlag (uint32_t base, uint32_t flag)
static void | SDFM_enableMainInterrupt (uint32_t base)
static void | SDFM_disableMainInterrupt (uint32_t base)
static void | SDFM_enableMainFilter (uint32_t base)
static void | SDFM_disableMainFilter (uint32_t base)
static uint16_t | SDFM_getFIFODataCount (uint32_t base, uint32_t filterNumber)
static uint16_t | SDFM_getComparatorSincData (uint32_t base, uint32_t filterNumber)
static uint32_t | SDFM_getFIFOData (uint32_t base, uint32_t filterNumber)
static void | SDFM_setFIFOInterruptLevel (uint32_t base, uint32_t filterNumber, uint16_t fifoLevel)
static void | SDFM_setDataReadyInterruptSource (uint32_t base, uint32_t filterNumber, uint32_t dataReadySource)
static bool | SDFM_getWaitForSyncStatus (uint32_t base, uint32_t filterNumber)
static void | SDFM_clearWaitForSyncFlag (uint32_t base, uint32_t filterNumber)
static void | SDFM_enableWaitForSync (uint32_t base, uint32_t filterNumber)
static void | SDFM_disableWaitForSync (uint32_t base, uint32_t filterNumber)
static void | SDFM_setPWMSyncSource (uint32_t base, uint32_t filterNumber, uint32_t syncSource)
static void | SDFM_setFIFOClearOnSyncMode (uint32_t base, uint32_t filterNumber, uint32_t fifoClearSyncMode)
static void | SDFM_setWaitForSyncClearMode (uint32_t base, uint32_t filterNumber, uint32_t syncClearMode)
static void | SDFM_selectClockSource (uint32_t base, uint32_t filterNumber, uint32_t clkSource)
static void | SDFM_enableSynchronizer (uint32_t base, uint32_t filterNumber, uint16_t syncConfig)
static void | SDFM_disableSynchronizer (uint32_t base, uint32_t filterNumber, uint16_t syncConfig)
static void | SDFM_selectCompEventHighSource (uint32_t base, uint32_t filterNumber, uint32_t source)
static void | SDFM_selectCompEventLowSource (uint32_t base, uint32_t filterNumber, uint32_t source)
static void | SDFM_initCompEventLowFilter (uint32_t base, uint32_t filterNumber)
static void | SDFM_initCompEventHighFilter (uint32_t base, uint32_t filterNumber)
static void | SDFM_lockCompEventFilterConfig (uint32_t base, uint32_t filterNumber, uint16_t lockConfig)
void | SDFM_configComparator (uint32_t base, uint16_t config1, uint32_t config2, uint16_t config3)
void | SDFM_configEnhancedComparator (uint32_t base, uint16_t filterConfig, uint32_t highLowThreshold1, uint32_t highLowThreshold2, uint16_t zeroCrossThreshold)
void | SDFM_configDataFilter (uint32_t base, uint16_t config1, uint16_t config2)
void | SDFM_configZeroCrossComparator (uint32_t base, uint16_t config1, uint16_t config2)
void | SDFM_configDataFilterFIFO (uint32_t base, uint16_t config1, uint16_t config2)
void | SDFM_configCompEventLowFilter (uint32_t base, uint32_t filterNumber, const SDFM_CompEventFilterConfig *config)
void | SDFM_configCompEventHighFilter (uint32_t base, uint32_t filterNumber, const SDFM_CompEventFilterConfig *config)

## Macros
#define | SDFM_GET_LOW_THRESHOLD(C) ((uint16_t)(C))
| Header Files. More...
#define | SDFM_GET_HIGH_THRESHOLD(C) ((uint16_t)((uint32_t)(C) >> 16U))
| Macro to get the high threshold. More...
#define | SDFM_GET_LOW_THRESHOLD_BOTH(C1, C2)
#define | SDFM_GET_HIGH_THRESHOLD_BOTH(C1, C2)
#define | SDFM_SET_OSR(X) (((X) - 1) << 8U)
| Macro to convert comparator over sampling ratio to acceptable bit location. More...
#define | SDFM_SHIFT_VALUE(X) ((X) << 2U)
| Macro to convert the data shift bit values to acceptable bit location. More...
#define | SDFM_THRESHOLD(H, L) ((((uint32_t)(H)) << 16U) | (L))
| Macro to combine high threshold and low threshold values. More...
#define | SDFM_SET_FIFO_LEVEL(X) ((X) << 7U)
| Macro to set the FIFO level to acceptable bit location. More...
#define | SDFM_SET_ZERO_CROSS_THRESH_VALUE(X) (0x8000 | (X))
| Macro to set and enable the zero cross threshold value. More...
#define | SDFM_FILTER_DISABLE (0x0U)
| Macros to enable or disable filter. More...
#define | SDFM_FILTER_ENABLE (0x2U)
#define | SDFM_SDFIL_OFFSET (CSL_SDFM_SDCTLPARM2 - CSL_SDFM_SDCTLPARM1)
| < SD filter offset More...
#define | SDFM_DIGFIL_OFFSET (CSL_SDFM_SDCOMP2CTL - CSL_SDFM_SDCOMP1CTL)
| Offset between high threshold 1 & 2 registers. More...
#define | SDFM_SDFLT1CMPHx_OFFSET (CSL_SDFM_SDFLT1CMPH2 - CSL_SDFM_SDFLT1CMPH1)
| Offset between low threshold 1 & 2 registers. More...
#define | SDFM_SDFLT1CMPLx_OFFSET (CSL_SDFM_SDFLT1CMPL2 - CSL_SDFM_SDFLT1CMPL1)
#define | SDFM_COMPEVT_FILTER_CONFIG_M
#define | SDFM_COMPEVT_FILTER_LOCK_M
#define | SDFM_CLOCK_SYNCHRONIZER CSL_SDFM_SDCTLPARM1_SDCLKSYNC_MASK
| Define for Clock synchronizer Configuration. More...
#define | SDFM_DATA_SYNCHRONIZER CSL_SDFM_SDCTLPARM1_SDDATASYNC_MASK
| Define for Data Synchronizer Configuration. More...
#define | SDFM_OUTPUT_WITHIN_THRESHOLD (0)
| Values that can be returned from SDFM_getThresholdStatus() More...
#define | SDFM_OUTPUT_ABOVE_THRESHOLD (1)
| SDFM output is above threshold. More...
#define | SDFM_OUTPUT_BELOW_THRESHOLD (2)
| SDFM output is below threshold. More...
#define | SDFM_FILTER_1 (0)
| Digital filter 1. More...
#define | SDFM_FILTER_2 (1)
| Digital filter 2. More...
#define | SDFM_FILTER_3 (2)
| Digital filter 3. More...
#define | SDFM_FILTER_4 (3)
| Digital filter 4. More...
#define | SDFM_FILTER_SINC_FAST (0x00)
| Digital filter with SincFast structure. More...
#define | SDFM_FILTER_SINC_1 (0x10)
| Digital filter with Sinc1 structure. More...
#define | SDFM_FILTER_SINC_2 (0x20)
| Digital filter with Sinc3 structure. More...
#define | SDFM_FILTER_SINC_3 (0x30)
| Digital filter with Sinc4 structure. More...
#define | SDFM_MODULATOR_CLK_EQUAL_DATA_RATE (0)
| Modulator clock is identical to the data rate. More...
#define | SDFM_DATA_FORMAT_16_BIT (0)
| Filter output is in 16 bits 2's complement format. More...
#define | SDFM_DATA_FORMAT_32_BIT (1)
| Filter output is in 32 bits 2's complement format. More...
#define | SDFM_DATA_READY_SOURCE_DIRECT (0)
| Data ready interrupt source is direct (non -FIFO). More...
#define | SDFM_DATA_READY_SOURCE_FIFO (1)
| Data ready interrupt source is FIFO. More...
#define | SDFM_SYNC_PWM0_SOCA (0)
| SDFM sync source is PWM1 SOCA. More...
#define | SDFM_SYNC_PWM0_SOCB (1)
| SDFM sync source is PWM1 SOCB. More...
#define | SDFM_SYNC_PWM1_SOCA (2)
| SDFM sync source is PWM2 SOCA. More...
#define | SDFM_SYNC_PWM1_SOCB (3)
| SDFM sync source is PWM2 SOCB. More...
#define | SDFM_SYNC_PWM2_SOCA (4)
| SDFM sync source is PWM3 SOCA. More...
#define | SDFM_SYNC_PWM2_SOCB (5)
| SDFM sync source is PWM3 SOCB. More...
#define | SDFM_SYNC_PWM3_SOCA (6)
| SDFM sync source is PWM4 SOCA. More...
#define | SDFM_SYNC_PWM3_SOCB (7)
| SDFM sync source is PWM4 SOCB. More...
#define | SDFM_SYNC_PWM4_SOCA (8)
| SDFM sync source is PWM5 SOCA. More...
#define | SDFM_SYNC_PWM4_SOCB (9)
| SDFM sync source is PWM5 SOCB. More...
#define | SDFM_SYNC_PWM5_SOCA (10)
| SDFM sync source is PWM6 SOCA. More...
#define | SDFM_SYNC_PWM5_SOCB (11)
| SDFM sync source is PWM6 SOCB. More...
#define | SDFM_SYNC_PWM6_SOCA (12)
| SDFM sync source is PWM7 SOCA. More...
#define | SDFM_SYNC_PWM6_SOCB (13)
| SDFM sync source is PWM7 SOCB. More...
#define | SDFM_SYNC_PWM7_SOCA (14)
| SDFM sync source is PWM8 SOCA. More...
#define | SDFM_SYNC_PWM7_SOCB (15)
| SDFM sync source is PWM8 SOCB. More...
#define | SDFM_SYNC_PWM8_SOCA (16)
| SDFM sync source is PWM9 SOCA. More...
#define | SDFM_SYNC_PWM8_SOCB (17)
| SDFM sync source is PWM9 SOCB. More...
#define | SDFM_SYNC_PWM9_SOCA (18)
| SDFM sync source is PWM10 SOCA. More...
#define | SDFM_SYNC_PWM9_SOCB (19)
| SDFM sync source is PWM10 SOCB. More...
#define | SDFM_SYNC_PWM10_SOCA (20)
| SDFM sync source is PWM11 SOCA. More...
#define | SDFM_SYNC_PWM10_SOCB (21)
| SDFM sync source is PWM11 SOCB. More...
#define | SDFM_SYNC_PWM11_SOCA (22)
| SDFM sync source is PWM12 SOCA. More...
#define | SDFM_SYNC_PWM11_SOCB (23)
| SDFM sync source is PWM12 SOCB. More...
#define | SDFM_SYNC_PWM12_SOCA (24)
| SDFM sync source is PWM13 SOCA. More...
#define | SDFM_SYNC_PWM12_SOCB (25)
| SDFM sync source is PWM13 SOCB. More...
#define | SDFM_SYNC_PWM13_SOCA (26)
| SDFM sync source is PWM14 SOCA. More...
#define | SDFM_SYNC_PWM13_SOCB (27)
| SDFM sync source is PWM14 SOCB. More...
#define | SDFM_SYNC_PWM14_SOCA (28)
| SDFM sync source is PWM15 SOCA. More...
#define | SDFM_SYNC_PWM14_SOCB (29)
| SDFM sync source is PWM15 SOCB. More...
#define | SDFM_SYNC_PWM15_SOCA (30)
| SDFM sync source is PWM16 SOCA. More...
#define | SDFM_SYNC_PWM15_SOCB (31)
| SDFM sync source is PWM16 SOCB. More...
#define | SDFM_SYNC_PWM16_SOCA (32)
| SDFM sync source is PWM17 SOCA. More...
#define | SDFM_SYNC_PWM16_SOCB (33)
| SDFM sync source is PWM17 SOCB. More...
#define | SDFM_SYNC_PWM17_SOCA (34)
| SDFM sync source is PWM18 SOCA. More...
#define | SDFM_SYNC_PWM17_SOCB (35)
| SDFM sync source is PWM18 SOCB. More...
#define | SDFM_SYNC_PWM18_SOCA (36)
| SDFM sync source is PWM19 SOCA. More...
#define | SDFM_SYNC_PWM18_SOCB (37)
| SDFM sync source is PWM19 SOCB. More...
#define | SDFM_SYNC_PWM19_SOCA (38)
| SDFM sync source is PWM20 SOCA. More...
#define | SDFM_SYNC_PWM19_SOCB (39)
| SDFM sync source is PWM20 SOCB. More...
#define | SDFM_SYNC_PWM20_SOCA (40)
| SDFM sync source is PWM21 SOCA. More...
#define | SDFM_SYNC_PWM20_SOCB (41)
| SDFM sync source is PWM21 SOCB. More...
#define | SDFM_SYNC_PWM21_SOCA (42)
| SDFM sync source is PWM22 SOCA. More...
#define | SDFM_SYNC_PWM21_SOCB (43)
| SDFM sync source is PWM22 SOCB. More...
#define | SDFM_SYNC_PWM22_SOCA (44)
| SDFM sync source is PWM23 SOCA. More...
#define | SDFM_SYNC_PWM22_SOCB (45)
| SDFM sync source is PWM23 SOCB. More...
#define | SDFM_SYNC_PWM23_SOCA (46)
| SDFM sync source is PWM24 SOCA. More...
#define | SDFM_SYNC_PWM23_SOCB (47)
| SDFM sync source is PWM24 SOCB. More...
#define | SDFM_SYNC_PWM24_SOCA (48)
| SDFM sync source is PWM25 SOCA. More...
#define | SDFM_SYNC_PWM24_SOCB (49)
| SDFM sync source is PWM25 SOCB. More...
#define | SDFM_SYNC_PWM25_SOCA (50)
| SDFM sync source is PWM26 SOCA. More...
#define | SDFM_SYNC_PWM25_SOCB (51)
| SDFM sync source is PWM26 SOCB. More...
#define | SDFM_SYNC_PWM26_SOCA (52)
| SDFM sync source is PWM27 SOCA. More...
#define | SDFM_SYNC_PWM26_SOCB (53)
| SDFM sync source is PWM27 SOCB. More...
#define | SDFM_SYNC_PWM27_SOCA (54)
| SDFM sync source is PWM28 SOCA. More...
#define | SDFM_SYNC_PWM27_SOCB (55)
| SDFM sync source is PWM28 SOCB. More...
#define | SDFM_SYNC_PWM28_SOCA (56)
| SDFM sync source is PWM29 SOCA. More...
#define | SDFM_SYNC_PWM28_SOCB (57)
| SDFM sync source is PWM29 SOCB. More...
#define | SDFM_SYNC_PWM29_SOCA (58)
| SDFM sync source is PWM30 SOCA. More...
#define | SDFM_SYNC_PWM29_SOCB (59)
| SDFM sync source is PWM30 SOCB. More...
#define | SDFM_SYNC_PWM30_SOCA (60)
| SDFM sync source is PWM31 SOCA. More...
#define | SDFM_SYNC_PWM30_SOCB (61)
| SDFM sync source is PWM31 SOCB. More...
#define | SDFM_SYNC_PWM31_SOCA (62)
| SDFM sync source is PWM32 SOCA. More...
#define | SDFM_SYNC_PWM31_SOCB (63)
| SDFM sync source is PWM32 SOCB. More...
#define | SDFM_FIFO_NOT_CLEARED_ON_SYNC (0)
| SDFM FIFO buffer is not cleared on Sync signal. More...
#define | SDFM_FIFO_CLEARED_ON_SYNC (1)
| SDFM FIFO buffer is cleared on Sync signal. More...
#define | SDFM_MANUAL_CLEAR_WAIT_FOR_SYNC (0)
| Wait for sync cleared using software. More...
#define | SDFM_AUTO_CLEAR_WAIT_FOR_SYNC (1)
| Wait for sync cleared automatically. More...
#define | SDFM_COMP_EVENT_1 CSL_SDFM_SDCPARM1_CEVT1SEL_SHIFT
| Selects CEVT1. More...
#define | SDFM_COMP_EVENT_2 CSL_SDFM_SDCPARM1_CEVT2SEL_SHIFT
| Selects CEVT2. More...
#define | SDFM_COMP_EVENT_SRC_COMPH1 (0)
| < COMPH1 event is the source More...
#define | SDFM_COMP_EVENT_SRC_COMPH1_L1 (1)
| COMPH2 event is the source. More...
#define | SDFM_COMP_EVENT_SRC_COMPH2 (2)
| Either of COMPH2 or COMPL2 event can be the source. More...
#define | SDFM_COMP_EVENT_SRC_COMPH2_L2 (3)
| COMPL1 event is the source. More...
#define | SDFM_COMP_EVENT_SRC_COMPL1 (0)
| COMPL2 event is the source. More...
#define | SDFM_COMP_EVENT_SRC_COMPL2 (2)
#define | SDFM_CLK_SOURCE_CHANNEL_CLK (0x0)
| Source is respective channel clock. More...
#define | SDFM_CLK_SOURCE_SD1_CLK CSL_SDFM_SDCTLPARM1_SDCLKSEL_MASK
| Source is SD1 channel clock is the source. More...
#define | SDFM_COMPHOUT_SOURCE_COMPHIN (0x0)
| Comparator event high source is unfiltered event. More...
#define | SDFM_COMPHOUT_SOURCE_FILTER (0x8)
| Comparator event high source is filtered event. More...
#define | SDFM_COMPLOUT_SOURCE_COMPLIN (0x000)
| Comparator event low source is unfiltered event. More...
#define | SDFM_COMPLOUT_SOURCE_FILTER (0x800)
| Comparator event low source is filtered event. More...
#define | SDFM_MODULATOR_FAILURE_INTERRUPT (0x200U)
| Interrupt is generated if Modulator fails. More...
#define | SDFM_CEVT2_INTERRUPT (0x40U)
| Interrupt on CEVT2 (Comparator Event 2). More...
#define | SDFM_CEVT1_INTERRUPT (0x20U)
| Interrupt on CEVT1 (Comparator Event 1). More...
#define | SDFM_DATA_FILTER_ACKNOWLEDGE_INTERRUPT (0x1U)
| Interrupt on Acknowledge flag. More...
#define | SDFM_FIFO_INTERRUPT (0x1000U)
| Interrupt on FIFO level. More...
#define | SDFM_FIFO_OVERFLOW_INTERRUPT (0x8000U)
| Interrupt on FIFO overflow. More...
#define | SDFM_MAIN_INTERRUPT_FLAG (0x80000000U)
| Main interrupt flag. More...
#define | SDFM_FILTER_1_HIGH_THRESHOLD_FLAG (0x1U)
| Filter 1 high -level threshold flag. More...
#define | SDFM_FILTER_1_LOW_THRESHOLD_FLAG (0x2U)
| Filter 1 low -level threshold flag. More...
#define | SDFM_FILTER_2_HIGH_THRESHOLD_FLAG (0x4U)
| Filter 2 high -level threshold flag. More...
#define | SDFM_FILTER_2_LOW_THRESHOLD_FLAG (0x8U)
| Filter 2 low -level threshold flag. More...
#define | SDFM_FILTER_3_HIGH_THRESHOLD_FLAG (0x10U)
| Filter 3 high -level threshold flag. More...
#define | SDFM_FILTER_3_LOW_THRESHOLD_FLAG (0x20U)
| Filter 3 low -level threshold flag. More...
#define | SDFM_FILTER_4_HIGH_THRESHOLD_FLAG (0x40U)
| Filter 4 high -level threshold flag. More...
#define | SDFM_FILTER_4_LOW_THRESHOLD_FLAG (0x80U)
| Filter 4 low -level threshold flag. More...
#define | SDFM_FILTER_1_MOD_FAILED_FLAG (0x100U)
| Filter 1 modulator failed flag. More...
#define | SDFM_FILTER_2_MOD_FAILED_FLAG (0x200U)
| Filter 2 modulator failed flag. More...
#define | SDFM_FILTER_3_MOD_FAILED_FLAG (0x400U)
| Filter 3 modulator failed flag. More...
#define | SDFM_FILTER_4_MOD_FAILED_FLAG (0x800U)
| Filter 4 modulator failed flag. More...
#define | SDFM_FILTER_1_NEW_DATA_FLAG (0x1000U)
| Filter 1 new data flag. More...
#define | SDFM_FILTER_2_NEW_DATA_FLAG (0x2000U)
| Filter 2 new data flag. More...
#define | SDFM_FILTER_3_NEW_DATA_FLAG (0x4000U)
| Filter 3 new data flag. More...
#define | SDFM_FILTER_4_NEW_DATA_FLAG (0x8000U)
| Filter 4 new data flag. More...
#define | SDFM_FILTER_1_FIFO_OVERFLOW_FLAG (0x10000U)
| Filter 1 FIFO overflow flag. More...
#define | SDFM_FILTER_2_FIFO_OVERFLOW_FLAG (0x20000U)
| Filter 2 FIFO overflow flag. More...
#define | SDFM_FILTER_3_FIFO_OVERFLOW_FLAG (0x40000U)
| Filter 3 FIFO overflow flag. More...
#define | SDFM_FILTER_4_FIFO_OVERFLOW_FLAG (0x80000U)
| Filter 4 FIFO overflow flag. More...
#define | SDFM_FILTER_1_FIFO_INTERRUPT_FLAG (0x100000U)
| Filter 1 FIFO overflow flag. More...
#define | SDFM_FILTER_2_FIFO_INTERRUPT_FLAG (0x200000U)
| Filter 2 FIFO overflow flag. More...
#define | SDFM_FILTER_3_FIFO_INTERRUPT_FLAG (0x400000U)
| Filter 3 FIFO overflow flag. More...
#define | SDFM_FILTER_4_FIFO_INTERRUPT_FLAG (0x800000U)
| Filter 4 FIFO overflow flag. More...

## Macro Definition Documentation

## ◆ SDFM_GET_LOW_THRESHOLD

#define SDFM_GET_LOW_THRESHOLD | ( |  | C | ) | ((uint16_t)(C))

Header Files.

Macro to get the low threshold

## ◆ SDFM_GET_HIGH_THRESHOLD

#define SDFM_GET_HIGH_THRESHOLD | ( |  | C | ) | ((uint16_t)((uint32_t)(C) >> 16U))

Macro to get the high threshold.

## ◆ SDFM_GET_LOW_THRESHOLD_BOTH

#define SDFM_GET_LOW_THRESHOLD_BOTH | ( |  | C1,
|  |  | C2
| ) |  |

Value:
((((uint32_t)(SDFM_GET_LOW_THRESHOLD(C2))) << 16U) | \
((uint32_t)(SDFM_GET_LOW_THRESHOLD(C1))))

Macro to get the high threshold 1 & 2 to be passed as lowThreshold parameter to SDFM_setCompFilterLowThreshold().

## ◆ SDFM_GET_HIGH_THRESHOLD_BOTH

#define SDFM_GET_HIGH_THRESHOLD_BOTH | ( |  | C1,
|  |  | C2
| ) |  |

Value:
((((uint32_t)(SDFM_GET_HIGH_THRESHOLD(C2))) << 16U) | \
((uint32_t)(SDFM_GET_HIGH_THRESHOLD(C1))))

Macro to get the high threshold 1 & 2 to be passed as highThreshold parameter to SDFM_setCompFilterHighThreshold().

## ◆ SDFM_SET_OSR

#define SDFM_SET_OSR | ( |  | X | ) | (((X) - 1) << 8U)

Macro to convert comparator over sampling ratio to acceptable bit location.

## ◆ SDFM_SHIFT_VALUE

#define SDFM_SHIFT_VALUE | ( |  | X | ) | ((X) << 2U)

Macro to convert the data shift bit values to acceptable bit location.

## ◆ SDFM_THRESHOLD

#define SDFM_THRESHOLD | ( |  | H,
|  |  | L
| ) |  | ((((uint32_t)(H)) << 16U) | (L))

Macro to combine high threshold and low threshold values.

## ◆ SDFM_SET_FIFO_LEVEL

#define SDFM_SET_FIFO_LEVEL | ( |  | X | ) | ((X) << 7U)

Macro to set the FIFO level to acceptable bit location.

## ◆ SDFM_SET_ZERO_CROSS_THRESH_VALUE

#define SDFM_SET_ZERO_CROSS_THRESH_VALUE | ( |  | X | ) | (0x8000 | (X))

Macro to set and enable the zero cross threshold value.

## ◆ SDFM_FILTER_DISABLE

#define SDFM_FILTER_DISABLE (0x0U)

Macros to enable or disable filter.

## ◆ SDFM_FILTER_ENABLE

#define SDFM_FILTER_ENABLE (0x2U)

## ◆ SDFM_SDFIL_OFFSET

#define SDFM_SDFIL_OFFSET (CSL_SDFM_SDCTLPARM2 - CSL_SDFM_SDCTLPARM1)

< SD filter offset

Event Digital filter offset

## ◆ SDFM_DIGFIL_OFFSET

#define SDFM_DIGFIL_OFFSET (CSL_SDFM_SDCOMP2CTL - CSL_SDFM_SDCOMP1CTL)

Offset between high threshold 1 & 2 registers.

## ◆ SDFM_SDFLT1CMPHx_OFFSET

#define SDFM_SDFLT1CMPHx_OFFSET (CSL_SDFM_SDFLT1CMPH2 - CSL_SDFM_SDFLT1CMPH1)

Offset between low threshold 1 & 2 registers.

## ◆ SDFM_SDFLT1CMPLx_OFFSET

#define SDFM_SDFLT1CMPLx_OFFSET (CSL_SDFM_SDFLT1CMPL2 - CSL_SDFM_SDFLT1CMPL1)

## ◆ SDFM_COMPEVT_FILTER_CONFIG_M

#define SDFM_COMPEVT_FILTER_CONFIG_M

Value:
(CSL_SDFM_SDCOMP1EVT1FLTCTL_SAMPWIN_MASK | \
CSL_SDFM_SDCOMP1EVT1FLTCTL_THRESH_MASK)

## ◆ SDFM_COMPEVT_FILTER_LOCK_M

#define SDFM_COMPEVT_FILTER_LOCK_M

Value:
(SDFM_SDCOMPLOCK_SDCOMPCTL | \
SDFM_SDCOMPLOCK_COMP)

## ◆ SDFM_CLOCK_SYNCHRONIZER

#define SDFM_CLOCK_SYNCHRONIZER CSL_SDFM_SDCTLPARM1_SDCLKSYNC_MASK

Define for Clock synchronizer Configuration.

## ◆ SDFM_DATA_SYNCHRONIZER

#define SDFM_DATA_SYNCHRONIZER CSL_SDFM_SDCTLPARM1_SDDATASYNC_MASK

Define for Data Synchronizer Configuration.

## ◆ SDFM_OUTPUT_WITHIN_THRESHOLD

#define SDFM_OUTPUT_WITHIN_THRESHOLD (0)

Values that can be returned from SDFM_getThresholdStatus()

SDFM output is within threshold

## ◆ SDFM_OUTPUT_ABOVE_THRESHOLD

#define SDFM_OUTPUT_ABOVE_THRESHOLD (1)

SDFM output is above threshold.

## ◆ SDFM_OUTPUT_BELOW_THRESHOLD

#define SDFM_OUTPUT_BELOW_THRESHOLD (2)

SDFM output is below threshold.

## ◆ SDFM_FILTER_1

#define SDFM_FILTER_1 (0)

Digital filter 1.

Values that can be passed to all functions as the filterNumber parameter.

## ◆ SDFM_FILTER_2

#define SDFM_FILTER_2 (1)

Digital filter 2.

## ◆ SDFM_FILTER_3

#define SDFM_FILTER_3 (2)

Digital filter 3.

## ◆ SDFM_FILTER_4

#define SDFM_FILTER_4 (3)

Digital filter 4.

## ◆ SDFM_FILTER_SINC_FAST

#define SDFM_FILTER_SINC_FAST (0x00)

Digital filter with SincFast structure.

Values that can be passed to SDFM_setFilterType(), SDFM_setComparatorFilterType() as the filterType parameter.

## ◆ SDFM_FILTER_SINC_1

#define SDFM_FILTER_SINC_1 (0x10)

Digital filter with Sinc1 structure.

## ◆ SDFM_FILTER_SINC_2

#define SDFM_FILTER_SINC_2 (0x20)

Digital filter with Sinc3 structure.

## ◆ SDFM_FILTER_SINC_3

#define SDFM_FILTER_SINC_3 (0x30)

Digital filter with Sinc4 structure.

## ◆ SDFM_MODULATOR_CLK_EQUAL_DATA_RATE

#define SDFM_MODULATOR_CLK_EQUAL_DATA_RATE (0)

Modulator clock is identical to the data rate.

Values that can be passed to SDFM_setupModulatorClock(),as the clockMode parameter.

## ◆ SDFM_DATA_FORMAT_16_BIT

#define SDFM_DATA_FORMAT_16_BIT (0)

Filter output is in 16 bits 2's complement format.

Values that can be passed to SDFM_setOutputDataFormat(),as the dataFormat parameter.

## ◆ SDFM_DATA_FORMAT_32_BIT

#define SDFM_DATA_FORMAT_32_BIT (1)

Filter output is in 32 bits 2's complement format.

## ◆ SDFM_DATA_READY_SOURCE_DIRECT

#define SDFM_DATA_READY_SOURCE_DIRECT (0)

Data ready interrupt source is direct (non -FIFO).

Values that can be passed to SDFM_setDataReadyInterruptSource(),as the dataReadySource parameter.

## ◆ SDFM_DATA_READY_SOURCE_FIFO

#define SDFM_DATA_READY_SOURCE_FIFO (1)

Data ready interrupt source is FIFO.

## ◆ SDFM_SYNC_PWM0_SOCA

#define SDFM_SYNC_PWM0_SOCA (0)

SDFM sync source is PWM1 SOCA.

Values that can be passed to SDFM_setPWMSyncSource(),as the syncSource parameter.

## ◆ SDFM_SYNC_PWM0_SOCB

#define SDFM_SYNC_PWM0_SOCB (1)

SDFM sync source is PWM1 SOCB.

## ◆ SDFM_SYNC_PWM1_SOCA

#define SDFM_SYNC_PWM1_SOCA (2)

SDFM sync source is PWM2 SOCA.

## ◆ SDFM_SYNC_PWM1_SOCB

#define SDFM_SYNC_PWM1_SOCB (3)

SDFM sync source is PWM2 SOCB.

## ◆ SDFM_SYNC_PWM2_SOCA

#define SDFM_SYNC_PWM2_SOCA (4)

SDFM sync source is PWM3 SOCA.

## ◆ SDFM_SYNC_PWM2_SOCB

#define SDFM_SYNC_PWM2_SOCB (5)

SDFM sync source is PWM3 SOCB.

## ◆ SDFM_SYNC_PWM3_SOCA

#define SDFM_SYNC_PWM3_SOCA (6)

SDFM sync source is PWM4 SOCA.

## ◆ SDFM_SYNC_PWM3_SOCB

#define SDFM_SYNC_PWM3_SOCB (7)

SDFM sync source is PWM4 SOCB.

## ◆ SDFM_SYNC_PWM4_SOCA

#define SDFM_SYNC_PWM4_SOCA (8)

SDFM sync source is PWM5 SOCA.

## ◆ SDFM_SYNC_PWM4_SOCB

#define SDFM_SYNC_PWM4_SOCB (9)

SDFM sync source is PWM5 SOCB.

## ◆ SDFM_SYNC_PWM5_SOCA

#define SDFM_SYNC_PWM5_SOCA (10)

SDFM sync source is PWM6 SOCA.

## ◆ SDFM_SYNC_PWM5_SOCB

#define SDFM_SYNC_PWM5_SOCB (11)

SDFM sync source is PWM6 SOCB.

## ◆ SDFM_SYNC_PWM6_SOCA

#define SDFM_SYNC_PWM6_SOCA (12)

SDFM sync source is PWM7 SOCA.

## ◆ SDFM_SYNC_PWM6_SOCB

#define SDFM_SYNC_PWM6_SOCB (13)

SDFM sync source is PWM7 SOCB.

## ◆ SDFM_SYNC_PWM7_SOCA

#define SDFM_SYNC_PWM7_SOCA (14)

SDFM sync source is PWM8 SOCA.

## ◆ SDFM_SYNC_PWM7_SOCB

#define SDFM_SYNC_PWM7_SOCB (15)

SDFM sync source is PWM8 SOCB.

## ◆ SDFM_SYNC_PWM8_SOCA

#define SDFM_SYNC_PWM8_SOCA (16)

SDFM sync source is PWM9 SOCA.

## ◆ SDFM_SYNC_PWM8_SOCB

#define SDFM_SYNC_PWM8_SOCB (17)

SDFM sync source is PWM9 SOCB.

## ◆ SDFM_SYNC_PWM9_SOCA

#define SDFM_SYNC_PWM9_SOCA (18)

SDFM sync source is PWM10 SOCA.

## ◆ SDFM_SYNC_PWM9_SOCB

#define SDFM_SYNC_PWM9_SOCB (19)

SDFM sync source is PWM10 SOCB.

## ◆ SDFM_SYNC_PWM10_SOCA

#define SDFM_SYNC_PWM10_SOCA (20)

SDFM sync source is PWM11 SOCA.

## ◆ SDFM_SYNC_PWM10_SOCB

#define SDFM_SYNC_PWM10_SOCB (21)

SDFM sync source is PWM11 SOCB.

## ◆ SDFM_SYNC_PWM11_SOCA

#define SDFM_SYNC_PWM11_SOCA (22)

SDFM sync source is PWM12 SOCA.

## ◆ SDFM_SYNC_PWM11_SOCB

#define SDFM_SYNC_PWM11_SOCB (23)

SDFM sync source is PWM12 SOCB.

## ◆ SDFM_SYNC_PWM12_SOCA

#define SDFM_SYNC_PWM12_SOCA (24)

SDFM sync source is PWM13 SOCA.

## ◆ SDFM_SYNC_PWM12_SOCB

#define SDFM_SYNC_PWM12_SOCB (25)

SDFM sync source is PWM13 SOCB.

## ◆ SDFM_SYNC_PWM13_SOCA

#define SDFM_SYNC_PWM13_SOCA (26)

SDFM sync source is PWM14 SOCA.

## ◆ SDFM_SYNC_PWM13_SOCB

#define SDFM_SYNC_PWM13_SOCB (27)

SDFM sync source is PWM14 SOCB.

## ◆ SDFM_SYNC_PWM14_SOCA

#define SDFM_SYNC_PWM14_SOCA (28)

SDFM sync source is PWM15 SOCA.

## ◆ SDFM_SYNC_PWM14_SOCB

#define SDFM_SYNC_PWM14_SOCB (29)

SDFM sync source is PWM15 SOCB.

## ◆ SDFM_SYNC_PWM15_SOCA

#define SDFM_SYNC_PWM15_SOCA (30)

SDFM sync source is PWM16 SOCA.

## ◆ SDFM_SYNC_PWM15_SOCB

#define SDFM_SYNC_PWM15_SOCB (31)

SDFM sync source is PWM16 SOCB.

## ◆ SDFM_SYNC_PWM16_SOCA

#define SDFM_SYNC_PWM16_SOCA (32)

SDFM sync source is PWM17 SOCA.

## ◆ SDFM_SYNC_PWM16_SOCB

#define SDFM_SYNC_PWM16_SOCB (33)

SDFM sync source is PWM17 SOCB.

## ◆ SDFM_SYNC_PWM17_SOCA

#define SDFM_SYNC_PWM17_SOCA (34)

SDFM sync source is PWM18 SOCA.

## ◆ SDFM_SYNC_PWM17_SOCB

#define SDFM_SYNC_PWM17_SOCB (35)

SDFM sync source is PWM18 SOCB.

## ◆ SDFM_SYNC_PWM18_SOCA

#define SDFM_SYNC_PWM18_SOCA (36)

SDFM sync source is PWM19 SOCA.

## ◆ SDFM_SYNC_PWM18_SOCB

#define SDFM_SYNC_PWM18_SOCB (37)

SDFM sync source is PWM19 SOCB.

## ◆ SDFM_SYNC_PWM19_SOCA

#define SDFM_SYNC_PWM19_SOCA (38)

SDFM sync source is PWM20 SOCA.

## ◆ SDFM_SYNC_PWM19_SOCB

#define SDFM_SYNC_PWM19_SOCB (39)

SDFM sync source is PWM20 SOCB.

## ◆ SDFM_SYNC_PWM20_SOCA

#define SDFM_SYNC_PWM20_SOCA (40)

SDFM sync source is PWM21 SOCA.

## ◆ SDFM_SYNC_PWM20_SOCB

#define SDFM_SYNC_PWM20_SOCB (41)

SDFM sync source is PWM21 SOCB.

## ◆ SDFM_SYNC_PWM21_SOCA

#define SDFM_SYNC_PWM21_SOCA (42)

SDFM sync source is PWM22 SOCA.

## ◆ SDFM_SYNC_PWM21_SOCB

#define SDFM_SYNC_PWM21_SOCB (43)

SDFM sync source is PWM22 SOCB.

## ◆ SDFM_SYNC_PWM22_SOCA

#define SDFM_SYNC_PWM22_SOCA (44)

SDFM sync source is PWM23 SOCA.

## ◆ SDFM_SYNC_PWM22_SOCB

#define SDFM_SYNC_PWM22_SOCB (45)

SDFM sync source is PWM23 SOCB.

## ◆ SDFM_SYNC_PWM23_SOCA

#define SDFM_SYNC_PWM23_SOCA (46)

SDFM sync source is PWM24 SOCA.

## ◆ SDFM_SYNC_PWM23_SOCB

#define SDFM_SYNC_PWM23_SOCB (47)

SDFM sync source is PWM24 SOCB.

## ◆ SDFM_SYNC_PWM24_SOCA

#define SDFM_SYNC_PWM24_SOCA (48)

SDFM sync source is PWM25 SOCA.

## ◆ SDFM_SYNC_PWM24_SOCB

#define SDFM_SYNC_PWM24_SOCB (49)

SDFM sync source is PWM25 SOCB.

## ◆ SDFM_SYNC_PWM25_SOCA

#define SDFM_SYNC_PWM25_SOCA (50)

SDFM sync source is PWM26 SOCA.

## ◆ SDFM_SYNC_PWM25_SOCB

#define SDFM_SYNC_PWM25_SOCB (51)

SDFM sync source is PWM26 SOCB.

## ◆ SDFM_SYNC_PWM26_SOCA

#define SDFM_SYNC_PWM26_SOCA (52)

SDFM sync source is PWM27 SOCA.

## ◆ SDFM_SYNC_PWM26_SOCB

#define SDFM_SYNC_PWM26_SOCB (53)

SDFM sync source is PWM27 SOCB.

## ◆ SDFM_SYNC_PWM27_SOCA

#define SDFM_SYNC_PWM27_SOCA (54)

SDFM sync source is PWM28 SOCA.

## ◆ SDFM_SYNC_PWM27_SOCB

#define SDFM_SYNC_PWM27_SOCB (55)

SDFM sync source is PWM28 SOCB.

## ◆ SDFM_SYNC_PWM28_SOCA

#define SDFM_SYNC_PWM28_SOCA (56)

SDFM sync source is PWM29 SOCA.

## ◆ SDFM_SYNC_PWM28_SOCB

#define SDFM_SYNC_PWM28_SOCB (57)

SDFM sync source is PWM29 SOCB.

## ◆ SDFM_SYNC_PWM29_SOCA

#define SDFM_SYNC_PWM29_SOCA (58)

SDFM sync source is PWM30 SOCA.

## ◆ SDFM_SYNC_PWM29_SOCB

#define SDFM_SYNC_PWM29_SOCB (59)

SDFM sync source is PWM30 SOCB.

## ◆ SDFM_SYNC_PWM30_SOCA

#define SDFM_SYNC_PWM30_SOCA (60)

SDFM sync source is PWM31 SOCA.

## ◆ SDFM_SYNC_PWM30_SOCB

#define SDFM_SYNC_PWM30_SOCB (61)

SDFM sync source is PWM31 SOCB.

## ◆ SDFM_SYNC_PWM31_SOCA

#define SDFM_SYNC_PWM31_SOCA (62)

SDFM sync source is PWM32 SOCA.

## ◆ SDFM_SYNC_PWM31_SOCB

#define SDFM_SYNC_PWM31_SOCB (63)

SDFM sync source is PWM32 SOCB.

## ◆ SDFM_FIFO_NOT_CLEARED_ON_SYNC

#define SDFM_FIFO_NOT_CLEARED_ON_SYNC (0)

SDFM FIFO buffer is not cleared on Sync signal.

Values that can be passed to SDFM_setFIFOClearOnSyncMode(),as the fifoClearSyncMode parameter.

## ◆ SDFM_FIFO_CLEARED_ON_SYNC

#define SDFM_FIFO_CLEARED_ON_SYNC (1)

SDFM FIFO buffer is cleared on Sync signal.

## ◆ SDFM_MANUAL_CLEAR_WAIT_FOR_SYNC

#define SDFM_MANUAL_CLEAR_WAIT_FOR_SYNC (0)

Wait for sync cleared using software.

Values that can be passed to SDFM_setWaitForSyncClearMode(),as the syncClearMode parameter.

## ◆ SDFM_AUTO_CLEAR_WAIT_FOR_SYNC

#define SDFM_AUTO_CLEAR_WAIT_FOR_SYNC (1)

Wait for sync cleared automatically.

## ◆ SDFM_COMP_EVENT_1

#define SDFM_COMP_EVENT_1 CSL_SDFM_SDCPARM1_CEVT1SEL_SHIFT

Selects CEVT1.

Values that can be passed to SDFM_selectCompEventSource() as the compEventNum parameter.

## ◆ SDFM_COMP_EVENT_2

#define SDFM_COMP_EVENT_2 CSL_SDFM_SDCPARM1_CEVT2SEL_SHIFT

Selects CEVT2.

## ◆ SDFM_COMP_EVENT_SRC_COMPH1

#define SDFM_COMP_EVENT_SRC_COMPH1 (0)

< COMPH1 event is the source

Values that can be passed to SDFM_selectCompEventSource() as the compEventSource parameter. Either of COMPH1 or COMPL1 event can be the source

## ◆ SDFM_COMP_EVENT_SRC_COMPH1_L1

#define SDFM_COMP_EVENT_SRC_COMPH1_L1 (1)

COMPH2 event is the source.

## ◆ SDFM_COMP_EVENT_SRC_COMPH2

#define SDFM_COMP_EVENT_SRC_COMPH2 (2)

Either of COMPH2 or COMPL2 event can be the source.

## ◆ SDFM_COMP_EVENT_SRC_COMPH2_L2

#define SDFM_COMP_EVENT_SRC_COMPH2_L2 (3)

COMPL1 event is the source.

## ◆ SDFM_COMP_EVENT_SRC_COMPL1

#define SDFM_COMP_EVENT_SRC_COMPL1 (0)

COMPL2 event is the source.

## ◆ SDFM_COMP_EVENT_SRC_COMPL2

#define SDFM_COMP_EVENT_SRC_COMPL2 (2)

## ◆ SDFM_CLK_SOURCE_CHANNEL_CLK

#define SDFM_CLK_SOURCE_CHANNEL_CLK (0x0)

Source is respective channel clock.

Values that can be passed to SDFM_selectClockSource() as the clkSource parameter.

## ◆ SDFM_CLK_SOURCE_SD1_CLK

#define SDFM_CLK_SOURCE_SD1_CLK CSL_SDFM_SDCTLPARM1_SDCLKSEL_MASK

Source is SD1 channel clock is the source.

## ◆ SDFM_COMPHOUT_SOURCE_COMPHIN

#define SDFM_COMPHOUT_SOURCE_COMPHIN (0x0)

Comparator event high source is unfiltered event.

Values that can be passed to SDFM_selectCompEventHighSource() as the source parameter.

## ◆ SDFM_COMPHOUT_SOURCE_FILTER

#define SDFM_COMPHOUT_SOURCE_FILTER (0x8)

Comparator event high source is filtered event.

## ◆ SDFM_COMPLOUT_SOURCE_COMPLIN

#define SDFM_COMPLOUT_SOURCE_COMPLIN (0x000)

Comparator event low source is unfiltered event.

Values that can be passed to SDFM_selectCompEventLowSource() as the source parameter.

## ◆ SDFM_COMPLOUT_SOURCE_FILTER

#define SDFM_COMPLOUT_SOURCE_FILTER (0x800)

Comparator event low source is filtered event.

## ◆ SDFM_MODULATOR_FAILURE_INTERRUPT

#define SDFM_MODULATOR_FAILURE_INTERRUPT (0x200U)

Interrupt is generated if Modulator fails.

## ◆ SDFM_CEVT2_INTERRUPT

#define SDFM_CEVT2_INTERRUPT (0x40U)

Interrupt on CEVT2 (Comparator Event 2).

## ◆ SDFM_CEVT1_INTERRUPT

#define SDFM_CEVT1_INTERRUPT (0x20U)

Interrupt on CEVT1 (Comparator Event 1).

## ◆ SDFM_DATA_FILTER_ACKNOWLEDGE_INTERRUPT

#define SDFM_DATA_FILTER_ACKNOWLEDGE_INTERRUPT (0x1U)

Interrupt on Acknowledge flag.

## ◆ SDFM_FIFO_INTERRUPT

#define SDFM_FIFO_INTERRUPT (0x1000U)

Interrupt on FIFO level.

## ◆ SDFM_FIFO_OVERFLOW_INTERRUPT

#define SDFM_FIFO_OVERFLOW_INTERRUPT (0x8000U)

Interrupt on FIFO overflow.

## ◆ SDFM_MAIN_INTERRUPT_FLAG

#define SDFM_MAIN_INTERRUPT_FLAG (0x80000000U)

Main interrupt flag.

## ◆ SDFM_FILTER_1_HIGH_THRESHOLD_FLAG

#define SDFM_FILTER_1_HIGH_THRESHOLD_FLAG (0x1U)

Filter 1 high -level threshold flag.

## ◆ SDFM_FILTER_1_LOW_THRESHOLD_FLAG

#define SDFM_FILTER_1_LOW_THRESHOLD_FLAG (0x2U)

Filter 1 low -level threshold flag.

## ◆ SDFM_FILTER_2_HIGH_THRESHOLD_FLAG

#define SDFM_FILTER_2_HIGH_THRESHOLD_FLAG (0x4U)

Filter 2 high -level threshold flag.

## ◆ SDFM_FILTER_2_LOW_THRESHOLD_FLAG

#define SDFM_FILTER_2_LOW_THRESHOLD_FLAG (0x8U)

Filter 2 low -level threshold flag.

## ◆ SDFM_FILTER_3_HIGH_THRESHOLD_FLAG

#define SDFM_FILTER_3_HIGH_THRESHOLD_FLAG (0x10U)

Filter 3 high -level threshold flag.

## ◆ SDFM_FILTER_3_LOW_THRESHOLD_FLAG

#define SDFM_FILTER_3_LOW_THRESHOLD_FLAG (0x20U)

Filter 3 low -level threshold flag.

## ◆ SDFM_FILTER_4_HIGH_THRESHOLD_FLAG

#define SDFM_FILTER_4_HIGH_THRESHOLD_FLAG (0x40U)

Filter 4 high -level threshold flag.

## ◆ SDFM_FILTER_4_LOW_THRESHOLD_FLAG

#define SDFM_FILTER_4_LOW_THRESHOLD_FLAG (0x80U)

Filter 4 low -level threshold flag.

## ◆ SDFM_FILTER_1_MOD_FAILED_FLAG

#define SDFM_FILTER_1_MOD_FAILED_FLAG (0x100U)

Filter 1 modulator failed flag.

## ◆ SDFM_FILTER_2_MOD_FAILED_FLAG

#define SDFM_FILTER_2_MOD_FAILED_FLAG (0x200U)

Filter 2 modulator failed flag.

## ◆ SDFM_FILTER_3_MOD_FAILED_FLAG

#define SDFM_FILTER_3_MOD_FAILED_FLAG (0x400U)

Filter 3 modulator failed flag.

## ◆ SDFM_FILTER_4_MOD_FAILED_FLAG

#define SDFM_FILTER_4_MOD_FAILED_FLAG (0x800U)

Filter 4 modulator failed flag.

## ◆ SDFM_FILTER_1_NEW_DATA_FLAG

#define SDFM_FILTER_1_NEW_DATA_FLAG (0x1000U)

Filter 1 new data flag.

## ◆ SDFM_FILTER_2_NEW_DATA_FLAG

#define SDFM_FILTER_2_NEW_DATA_FLAG (0x2000U)

Filter 2 new data flag.

## ◆ SDFM_FILTER_3_NEW_DATA_FLAG

#define SDFM_FILTER_3_NEW_DATA_FLAG (0x4000U)

Filter 3 new data flag.

## ◆ SDFM_FILTER_4_NEW_DATA_FLAG

#define SDFM_FILTER_4_NEW_DATA_FLAG (0x8000U)

Filter 4 new data flag.

## ◆ SDFM_FILTER_1_FIFO_OVERFLOW_FLAG

#define SDFM_FILTER_1_FIFO_OVERFLOW_FLAG (0x10000U)

Filter 1 FIFO overflow flag.

## ◆ SDFM_FILTER_2_FIFO_OVERFLOW_FLAG

#define SDFM_FILTER_2_FIFO_OVERFLOW_FLAG (0x20000U)

Filter 2 FIFO overflow flag.

## ◆ SDFM_FILTER_3_FIFO_OVERFLOW_FLAG

#define SDFM_FILTER_3_FIFO_OVERFLOW_FLAG (0x40000U)

Filter 3 FIFO overflow flag.

## ◆ SDFM_FILTER_4_FIFO_OVERFLOW_FLAG

#define SDFM_FILTER_4_FIFO_OVERFLOW_FLAG (0x80000U)

Filter 4 FIFO overflow flag.

## ◆ SDFM_FILTER_1_FIFO_INTERRUPT_FLAG

#define SDFM_FILTER_1_FIFO_INTERRUPT_FLAG (0x100000U)

Filter 1 FIFO overflow flag.

## ◆ SDFM_FILTER_2_FIFO_INTERRUPT_FLAG

#define SDFM_FILTER_2_FIFO_INTERRUPT_FLAG (0x200000U)

Filter 2 FIFO overflow flag.

## ◆ SDFM_FILTER_3_FIFO_INTERRUPT_FLAG

#define SDFM_FILTER_3_FIFO_INTERRUPT_FLAG (0x400000U)

Filter 3 FIFO overflow flag.

## ◆ SDFM_FILTER_4_FIFO_INTERRUPT_FLAG

#define SDFM_FILTER_4_FIFO_INTERRUPT_FLAG (0x800000U)

Filter 4 FIFO overflow flag.

## Function Documentation

## ◆ SDFM_enableExternalReset()

static void SDFM_enableExternalReset | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Enable external reset

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function enables data filter to be reset by an external source (PWM compare output).

Returns
  None.

## ◆ SDFM_disableExternalReset()

static void SDFM_disableExternalReset | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Disable external reset

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function disables data filter from being reset by an external source (PWM compare output).

Returns
  None.

## ◆ SDFM_enableFilter()

static void SDFM_enableFilter | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Enable filter

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function enables the filter specified by the filterNumber variable.

Returns
  None.

## ◆ SDFM_disableFilter()

static void SDFM_disableFilter | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Disable filter

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function disables the filter specified by the filterNumber variable.

Returns
  None.

## ◆ SDFM_enableFIFOBuffer()

static void SDFM_enableFIFOBuffer | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Enable FIFO buffer

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function enables the filter FIFO buffer specified by the filterNumber variable.

Returns
  None.

## ◆ SDFM_disableFIFOBuffer()

static void SDFM_disableFIFOBuffer | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Disable FIFO buffer

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function disables the filter FIFO buffer specified by the filterNumber variable.

Returns
  None.

## ◆ SDFM_getZeroCrossTripStatus()

static bool SDFM_getZeroCrossTripStatus | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Return the Zero Cross Trip status

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function returns the Zero Cross Trip status for the filter specified by filterNumber variable.

Returns
  true if Comparator filter output >= High-level threshold (Z) false if Comparator filter output < High-level threshold (Z)

## ◆ SDFM_clearZeroCrossTripStatus()

static void SDFM_clearZeroCrossTripStatus | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Clear the Zero Cross Trip status

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function clears the Zero Cross Trip status for the filter specified by filterNumber variable.

Returns
  None.

## ◆ SDFM_enableComparator()

static void SDFM_enableComparator | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Enable Comparator.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function enables the Comparator for the selected filter.

Returns
  None.

## ◆ SDFM_disableComparator()

static void SDFM_disableComparator | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Disable Comparator.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function disables the Comparator for the selected filter.

Returns
  None.

## ◆ SDFM_selectCompEventSource()

static void SDFM_selectCompEventSource | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint32_t | compEventNum,
|  | uint32_t | compEventSource
| ) |  |
| inlinestatic

Selects Comparator Event Source.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number
  compEventNum | is the event number
  compEventSource | is the event source

This function selects the comparator event source. Valid values for compEventNum are:

- SDFM_COMP_EVENT_1 - Selects comparator event 1
- SDFM_COMP_EVENT_2 - Selects comparator event 2 Valid values for SDFM_COMP_EVENT_1 are:
- SDFM_COMP_EVENT_SRC_COMPH1 - COMPH1 event is the source for selected event
- SDFM_COMP_EVENT_SRC_COMPH1_L1 - Either of COMPH1 or COMPL1 event can be the source for selected event
- SDFM_COMP_EVENT_SRC_COMPH2 - COMPH2 event is the source for selected event
- SDFM_COMP_EVENT_SRC_COMPH2_L2 - Either of COMPH2 or COMPL2 event can be the source for selected event

Valid values for SDFM_COMP_EVENT_2 are:

- SDFM_COMP_EVENT_SRC_COMPL1 - COMPL1 event is the source for selected event
- SDFM_COMP_EVENT_SRC_COMPH1_L1 - Either of COMPH1 or COMPL1 event can be the source for selected event
- SDFM_COMP_EVENT_SRC_COMPL2 - COMPL2 event is the source for selected event
- SDFM_COMP_EVENT_SRC_COMPH2_L2 - Either of COMPH2 or COMPL2 event can be the source for selected event

Returns
  None.

## ◆ SDFM_setFilterType()

static void SDFM_setFilterType | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint32_t | filterType
| ) |  |
| inlinestatic

Set filter type.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.
  filterType | is the filter type or structure.

This function sets the filter type or structure to be used as specified by filterType for the selected filter number as specified by filterNumber.

Returns
  None.

## ◆ SDFM_setFilterOverSamplingRatio()

static void SDFM_setFilterOverSamplingRatio | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint16_t | overSamplingRatio
| ) |  |
| inlinestatic

Set data filter over sampling ratio.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.
  overSamplingRatio | is the data filter over sampling ratio.

This function sets the filter oversampling ratio for the filter specified by the filterNumber variable.Valid values for the variable overSamplingRatio are 0 to 255 inclusive. The actual oversampling ratio will be this value plus one.

Returns
  None.

## ◆ SDFM_setupModulatorClock()

static void SDFM_setupModulatorClock | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint32_t | clockMode
| ) |  |
| inlinestatic

Set modulator clock mode.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.
  clockMode | is the modulator clock mode.

This function sets the modulator clock mode specified by clockMode for the filter specified by filterNumber.

Note
  This function also enables the data and clock synchronizers for the specified filter.

Returns
  None.

## ◆ SDFM_setOutputDataFormat()

static void SDFM_setOutputDataFormat | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint32_t | dataFormat
| ) |  |
| inlinestatic

Set the output data format

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.
  dataFormat | is the output data format.

This function sets the output data format for the filter specified by filterNumber.

Returns
  None.

## ◆ SDFM_setDataShiftValue()

static void SDFM_setDataShiftValue | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint16_t | shiftValue
| ) |  |
| inlinestatic

Set data shift value.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.
  shiftValue | is the data shift value.

This function sets the shift value for the 16 bit 2's complement data format. The valid maximum value for shiftValue is 31.

Note: Use this function with 16 bit 2's complement data format only.

Returns
  None.

## ◆ SDFM_setCompFilterHighThreshold()

static void SDFM_setCompFilterHighThreshold | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint32_t | highThreshold
| ) |  |
| inlinestatic

Set Filter output high-level threshold.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.
  highThreshold | is the high-level threshold 1 & 2.

This function sets the unsigned high-level threshold value for the Comparator filter output. If the output value of the filter exceeds highThreshold and interrupt generation is enabled, an interrupt will be issued. The param highThreshold takes both high threshold 1 & 2 values. The upper 16-bits represent the high threshold 2 value while lower 16-bits represent the threshold 1 values.

Returns
  None.

## ◆ SDFM_setCompFilterLowThreshold()

static void SDFM_setCompFilterLowThreshold | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint32_t | lowThreshold
| ) |  |
| inlinestatic

Set Filter output low-level threshold.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number
  lowThreshold | is the low-level threshold

This function sets the unsigned low-level threshold value 1 or 2 for the Comparator filter output. If the output value of the filter gets below lowThreshold and interrupt generation is enabled, an interrupt will be issued. The param lowThreshold takes both low threshold 1 & 2 values. The upper 16-bits represent the low threshold 2 value while lower 16-bits represent the threshold 1 values.

Returns
  None.

## ◆ SDFM_setCompFilterZeroCrossThreshold()

static void SDFM_setCompFilterZeroCrossThreshold | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint16_t | zeroCrossThreshold
| ) |  |
| inlinestatic

Set Filter output zero-cross threshold.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.
  zeroCrossThreshold | is the zero-cross threshold.

This function sets the unsigned zero-cross threshold value for the Comparator filter output.

Returns
  None.

## ◆ SDFM_enableZeroCrossEdgeDetect()

static void SDFM_enableZeroCrossEdgeDetect | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Enable zero-cross Edge detect mode.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function enables Zero Cross Edge detection.

Returns
  None.

## ◆ SDFM_disableZeroCrossEdgeDetect()

static void SDFM_disableZeroCrossEdgeDetect | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Disable zero-cross Edge detect mode.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function disables Zero Cross Edge detection.

Returns
  None.

## ◆ SDFM_enableInterrupt()

static void SDFM_enableInterrupt | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint16_t | intFlags
| ) |  |
| inlinestatic

Enable SDFM interrupts.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.
  intFlags | is the interrupt source.

This function enables the low threshold , high threshold or modulator failure interrupt as determined by intFlags for the filter specified by filterNumber. Valid values for intFlags are: SDFM_MODULATOR_FAILURE_INTERRUPT , SDFM_CEVT2_INTERRUPT, SDFM_CEVT1_INTERRUPT, SDFM_FIFO_INTERRUPT, SDFM_FIFO_OVERFLOW_INTERRUPT,SDFM_DATA_FILTER_ACKNOWLEDGE_INTERRUPT

Returns
  None.

## ◆ SDFM_disableInterrupt()

static void SDFM_disableInterrupt | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint16_t | intFlags
| ) |  |
| inlinestatic

Disable SDFM interrupts.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.
  intFlags | is the interrupt source.

This function disables the low threshold , high threshold or modulator failure interrupt as determined by intFlags for the filter specified by filterNumber. Valid values for intFlags are: SDFM_MODULATOR_FAILURE_INTERRUPT , SDFM_CEVT2_INTERRUPT, SDFM_CEVT1_INTERRUPT, SDFM_FIFO_INTERRUPT, SDFM_FIFO_OVERFLOW_INTERRUPT,SDFM_DATA_FILTER_ACKNOWLEDGE_INTERRUPT

Returns
  None.

## ◆ SDFM_setComparatorFilterType()

static void SDFM_setComparatorFilterType | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint32_t | filterType
| ) |  |
| inlinestatic

Set the comparator filter type.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.
  filterType | is the comparator filter type or structure.

This function sets the Comparator filter type or structure to be used as specified by filterType for the selected filter number as specified by filterNumber.

Returns
  None.

## ◆ SDFM_setCompFilterOverSamplingRatio()

static void SDFM_setCompFilterOverSamplingRatio | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint16_t | overSamplingRatio
| ) |  |
| inlinestatic

Set Comparator filter over sampling ratio.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.
  overSamplingRatio | is the comparator filter over sampling ration.

This function sets the comparator filter oversampling ratio for the filter specified by the filterNumber.Valid values for the variable overSamplingRatio are 0 to 31 inclusive. The actual oversampling ratio will be this value plus one.

Returns
  None.

## ◆ SDFM_getFilterData()

static uint32_t SDFM_getFilterData | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Get the filter data output.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function returns the latest data filter output. Depending on the filter data output format selected, the valid value will be the lower 16 bits or the whole 32 bits of the returned value.

Returns
  Returns the latest data filter output.

## ◆ SDFM_getThresholdStatus()

static uint32_t SDFM_getThresholdStatus | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Get the Comparator threshold status.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function returns the Comparator output threshold status for the given filterNumber.

Returns
  Returns the following status flags.
  - SDFM_OUTPUT_WITHIN_THRESHOLD if the output is within the specified threshold.
  - SDFM_OUTPUT_ABOVE_THRESHOLD if the output is above the high threshold
  - SDFM_OUTPUT_BELOW_THRESHOLD if the output is below the low threshold.

## ◆ SDFM_getModulatorStatus()

static bool SDFM_getModulatorStatus | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Get the Modulator status.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function returns the Modulator status.

Returns
  Returns true if the Modulator is operating normally Returns false if the Modulator has failed

## ◆ SDFM_getNewFilterDataStatus()

static bool SDFM_getNewFilterDataStatus | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Check if new Filter data is available.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function returns new filter data status.

Returns
  Returns true if new filter data is available Returns false if no new filter data is available

## ◆ SDFM_getFIFOOverflowStatus()

static bool SDFM_getFIFOOverflowStatus | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Check if FIFO buffer is overflowed.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function returns the status of the FIFO buffer overflow for the given filter value.

Returns
  Returns true if FIFO buffer is overflowed Returns false if FIFO buffer is not overflowed

## ◆ SDFM_getFIFOISRStatus()

static bool SDFM_getFIFOISRStatus | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Check FIFO buffer interrupt status.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function returns the status of the FIFO buffer interrupt for the given filter.

Returns
  Returns true if FIFO buffer interrupt has occurred. Returns false if FIFO buffer interrupt has not occurred.

## ◆ SDFM_getIsrStatus()

static bool SDFM_getIsrStatus | ( | uint32_t | base | ) |
| inlinestatic

Get pending interrupt.

Parameters

  base | is the base address of the SDFM module

This function returns any pending interrupt status.

Returns
  Returns true if there is a pending interrupt. Returns false if no interrupt is pending.

## ◆ SDFM_clearInterruptFlag()

static void SDFM_clearInterruptFlag | ( | uint32_t | base,
|  | uint32_t | flag
| ) |  |
| inlinestatic

Clear pending flags.

Parameters

  base | is the base address of the SDFM module
  flag | is the SDFM status

This function clears the specified pending interrupt flag. Valid values are SDFM_MAIN_INTERRUPT_FLAG,SDFM_FILTER_1_NEW_DATA_FLAG, SDFM_FILTER_2_NEW_DATA_FLAG,SDFM_FILTER_3_NEW_DATA_FLAG, SDFM_FILTER_4_NEW_DATA_FLAG,SDFM_FILTER_1_MOD_FAILED_FLAG, SDFM_FILTER_2_MOD_FAILED_FLAG,SDFM_FILTER_3_MOD_FAILED_FLAG, SDFM_FILTER_4_MOD_FAILED_FLAG,SDFM_FILTER_1_HIGH_THRESHOLD_FLAG, SDFM_FILTER_1_LOW_THRESHOLD_FLAG,SDFM_FILTER_2_HIGH_THRESHOLD_FLAG, SDFM_FILTER_2_LOW_THRESHOLD_FLAG,SDFM_FILTER_3_HIGH_THRESHOLD_FLAG, SDFM_FILTER_3_LOW_THRESHOLD_FLAG,SDFM_FILTER_4_HIGH_THRESHOLD_FLAG, SDFM_FILTER_4_LOW_THRESHOLD_FLAG,SDFM_FILTER_1_FIFO_OVERFLOW_FLAG, SDFM_FILTER_2_FIFO_OVERFLOW_FLAG,SDFM_FILTER_3_FIFO_OVERFLOW_FLAG SDFM_FILTER_4_FIFO_OVERFLOW_FLAG,SDFM_FILTER_1_FIFO_INTERRUPT_FLAG, SDFM_FILTER_2_FIFO_INTERRUPT_FLAG,SDFM_FILTER_3_FIFO_INTERRUPT_FLAG SDFM_FILTER_4_FIFO_INTERRUPT_FLAG or any combination of the above flags.

Returns
  None

## ◆ SDFM_enableMainInterrupt()

static void SDFM_enableMainInterrupt | ( | uint32_t | base | ) |
| inlinestatic

Enable main interrupt.

Parameters

  base | is the base address of the SDFM module

This function enables the main SDFM interrupt.

Returns
  None

## ◆ SDFM_disableMainInterrupt()

static void SDFM_disableMainInterrupt | ( | uint32_t | base | ) |
| inlinestatic

Disable main interrupt.

Parameters

  base | is the base address of the SDFM module

This function disables the main SDFM interrupt.

Returns
  None

## ◆ SDFM_enableMainFilter()

static void SDFM_enableMainFilter | ( | uint32_t | base | ) |
| inlinestatic

Enable main filter.

Parameters

  base | is the base address of the SDFM module

This function enables main filter.

Returns
  None

## ◆ SDFM_disableMainFilter()

static void SDFM_disableMainFilter | ( | uint32_t | base | ) |
| inlinestatic

Disable main filter.

Parameters

  base | is the base address of the SDFM module

This function disables main filter.

Returns
  None

## ◆ SDFM_getFIFODataCount()

static uint16_t SDFM_getFIFODataCount | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Return the FIFO data count

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function returns the FIFO data count.

Returns
  Returns the number of data words available in FIFO buffer.

## ◆ SDFM_getComparatorSincData()

static uint16_t SDFM_getComparatorSincData | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Return the Comparator sinc filter data

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function returns the Comparator sinc filter data output.

Returns
  Returns the Comparator sinc filter data output.

## ◆ SDFM_getFIFOData()

static uint32_t SDFM_getFIFOData | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Return the FIFO data

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function returns the latest FIFO data.

Returns
  Returns the latest FIFO data.

Note
  Discard the upper 16 bits if the output data format is 16bits.

## ◆ SDFM_setFIFOInterruptLevel()

static void SDFM_setFIFOInterruptLevel | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint16_t | fifoLevel
| ) |  |
| inlinestatic

Set the FIFO interrupt level.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.
  fifoLevel | is the FIFO interrupt level.

This function sets the FIFO interrupt level. Interrupt is generated when the FIFO buffer word count gets to or exceeds the value of fifoLevel. Maximum value for fifoLevel is 16.

Returns
  None.

## ◆ SDFM_setDataReadyInterruptSource()

static void SDFM_setDataReadyInterruptSource | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint32_t | dataReadySource
| ) |  |
| inlinestatic

Set data ready interrupt source.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.
  dataReadySource | is the data ready interrupt source.

This function sets the data ready interrupt source. Valid values for dataReadySource:

- SDFM_DATA_READY_SOURCE_DIRECT - Direct data ready
- SDFM_DATA_READY_SOURCE_FIFO - FIFO data ready.

Returns
  None.

## ◆ SDFM_getWaitForSyncStatus()

static bool SDFM_getWaitForSyncStatus | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Get the wait-for-sync event status.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function returns the Wait-for-Sync event status.

Returns
  Returns true if sync event has occurred. Returns false if sync event has not occurred.

## ◆ SDFM_clearWaitForSyncFlag()

static void SDFM_clearWaitForSyncFlag | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Clear the Wait-for-sync event status.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function clears the Wait-for-sync event status.

Returns
  None.

## ◆ SDFM_enableWaitForSync()

static void SDFM_enableWaitForSync | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Enable wait for sync mode.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function enables the wait for sync mode. Data to FIFO will be written only after PWM sync event.

Returns
  None.

## ◆ SDFM_disableWaitForSync()

static void SDFM_disableWaitForSync | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Disable wait for sync mode.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function disables the wait for sync mode. Data to FIFO will be written every Data ready event.

Returns
  None.

## ◆ SDFM_setPWMSyncSource()

static void SDFM_setPWMSyncSource | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint32_t | syncSource
| ) |  |
| inlinestatic

Set the PWM sync mode.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.
  syncSource | is the PWM sync source.

This function sets the PWM sync source for the specific SDFM filter. Valid values for syncSource are SDFM_SYNC_PWMx_CMPy. Where x ranges from 1 to 8 Representing PWM1 to PWM8 respectively and y ranges from A to D representing PWM comparators A to D.

Returns
  None.

## ◆ SDFM_setFIFOClearOnSyncMode()

static void SDFM_setFIFOClearOnSyncMode | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint32_t | fifoClearSyncMode
| ) |  |
| inlinestatic

Set FIFO clear on sync mode.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.
  fifoClearSyncMode | is the FIFO clear on sync mode.

This function sets the FIFO clear mode for the specified filter when a sync happens depending on the value of fifoClearSyncMode. Valid values for fifoClearSyncMode are:

- SDFM_FIFO_NOT_CLEARED_ON_SYNC - FIFO is not cleared on sync.
- SDFM_FIFO_CLEARED_ON_SYNC - FIFO is cleared on sync.

Returns
  None.

## ◆ SDFM_setWaitForSyncClearMode()

static void SDFM_setWaitForSyncClearMode | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint32_t | syncClearMode
| ) |  |
| inlinestatic

Set Wait-for-sync clear mode.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.
  syncClearMode | is the wait-for-sync clear mode.

This function sets the Wait-For-sync clear mode depending on the value of syncClearMode. Valid values for syncClearMode are:

- SDFM_MANUAL_CLEAR_WAIT_FOR_SYNC - Wait-for-sync flag is cleared by invoking SDFM_clearWaitForSyncFlag().
- SDFM_AUTO_CLEAR_WAIT_FOR_SYNC - Wait-for-sync flag is cleared automatically on FIFO interrupt.

Returns
  None.

## ◆ SDFM_selectClockSource()

static void SDFM_selectClockSource | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint32_t | clkSource
| ) |  |
| inlinestatic

Selects clock source for SDFM channels.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.
  clkSource | is the clock source

This function selects the clock for SDFM module filter channels. Valid values for clkSource are:

- SDFM_CLK_SOURCE_CHANNEL_CLK - Respective channel's clk is the source
- SDFM_CLK_SOURCE_SD1_CLK - Filter 1 clock is the source

Returns
  None.

## ◆ SDFM_enableSynchronizer()

static void SDFM_enableSynchronizer | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint16_t | syncConfig
| ) |  |
| inlinestatic

Enables Input Synchronizer.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.
  syncConfig | defines which synchronizer to be enabled

This function enables either data or clock or both synchronizer. Valid values for syncConfig can be the logical OR of any of the values:

- SDFM_CLOCK_SYNCHRONIZER - Enable SDFM input clock synchronizer
- SDFM_DATA_SYNCHRONIZER - Enable SDFM input data synchronizer

Returns
  None.

## ◆ SDFM_disableSynchronizer()

static void SDFM_disableSynchronizer | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint16_t | syncConfig
| ) |  |
| inlinestatic

Disables Input Synchronizer.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.
  syncConfig | defines which synchronizer to be disabled

This function disables either data or clock or both synchronizer. Valid values for syncConfig can be the logical OR of any of the values:

- SDFM_CLOCK_SYNCHRONIZER - Disable SDFM input clock synchronizer
- SDFM_DATA_SYNCHRONIZER - Disable SDFM input data synchronizer

Returns
  None.

## ◆ SDFM_selectCompEventHighSource()

static void SDFM_selectCompEventHighSource | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint32_t | source
| ) |  |
| inlinestatic

Selects comparator event high source.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.
  source | is the comparator event high source

This function selects the source for comparator event high. Valid values for source are:

- SDFM_COMPHOUT_SOURCE_COMPHIN - Original COMPHIN/CEVT1 signal is source
- SDFM_COMPHOUT_SOURCE_FILTER - Filtered COMPHIN/CEVT1 signal is source

Returns
  None.

## ◆ SDFM_selectCompEventLowSource()

static void SDFM_selectCompEventLowSource | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint32_t | source
| ) |  |
| inlinestatic

Selects comparator event low source.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.
  source | is the comparator event low source

This function selects the source for comparator event low. Valid values for source are:

- SDFM_COMPLOUT_SOURCE_COMPLIN - Original COMPLIN/CEVT2 signal is source
- SDFM_COMPHOUT_SOURCE_FILTER - Filtered COMPLIN/CEVT2 signal is source

Returns
  None.

## ◆ SDFM_initCompEventLowFilter()

static void SDFM_initCompEventLowFilter | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Initializes Comparator Event Low Filter.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function initializes Comparator Event Low Filter.

Returns
  None.

## ◆ SDFM_initCompEventHighFilter()

static void SDFM_initCompEventHighFilter | ( | uint32_t | base,
|  | uint32_t | filterNumber
| ) |  |
| inlinestatic

Initializes Comparator Event High Filter.

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.

This function initializes Comparator Event High Filter.

Returns
  None.

## ◆ SDFM_lockCompEventFilterConfig()

static void SDFM_lockCompEventFilterConfig | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | uint16_t | lockConfig
| ) |  |
| inlinestatic

Lock Comparator Event Filter Configurations

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.
  lockConfig | defines the configurations to be locked

This function locks the comparator event filter configurations. Valid values of the lockConfig can be logical OR of any of the following values:

- SDFM_SDCOMPLOCK_SDCOMPCTL - Locks write access to SDCOMPCTL register
- SDFM_SDCOMPLOCK_COMP - Locks write access to SDCOMPxFILCTL & SDCOMPxFILCLKCTL register

Returns
  None.

## ◆ SDFM_configComparator()

void SDFM_configComparator | ( | uint32_t | base,
|  | uint16_t | config1,
|  | uint32_t | config2,
|  | uint16_t | config3
| ) |  |

Configures SDFM comparator for filter config & threshold values

Parameters

  base | is the base address of the SDFM module
  config1 | is the filter number, filter type and over sampling ratio.
  config2 | is high-level and low-level threshold 1 values.
  config3 | is the zero-cross threshold value.

This function configures the comparator filter for filter config and threshold values based on provided inputs.

The config1 parameter is the logical OR of the filter number, filter type and oversampling ratio. The bit definitions for config1 are as follow:

- config1.[3:0] filter number
- config1.[7:4] filter type
- config1.[15:8] Over sampling Ratio Valid values for filter number and filter type are defined in CSL_uint32_t and CSL_uint32_t enumerations respectively. SDFM_SET_OSR(X) macro can be used to set the value of the oversampling ratio ,which ranges [1,32] inclusive, in the appropriate bit location. For example the value (SDFM_FILTER_1 | SDFM_FILTER_SINC_2 | SDFM_SET_OSR(16)) will select Filter 1, SINC 2 type with an oversampling ratio of 16.

The config2 parameter is the logical OR of the filter high and low threshold 1 values. The bit definitions for config2 are as follow:

- config2.[15:0] low threshold 1
- config2.[31:16] high threshold 1 The upper 16 bits define the high threshold 1 and the lower 16 bits define the low threshold 1. SDFM_THRESHOLD(H,L) can be used to combine the high and low thresholds. The config3 parameter is the logical OR of the zero cross threshold enable flag and the zero-cross threshold value. The bit definitions for config3 are as follow:
- config3.[15] - Enable or disable zero cross threshold. Valid values are 1 or 0 to enable or disable the zero cross threshold respectively. -config3.[14:0] - Zero Cross Threshold value. The SDFM_SET_ZERO_CROSS_THRESH_VALUE(X) macro can be used to specify the zero-cross threshold value and OR the 1 to enable it.

Returns
  None.

## ◆ SDFM_configEnhancedComparator()

void SDFM_configEnhancedComparator | ( | uint32_t | base,
|  | uint16_t | filterConfig,
|  | uint32_t | highLowThreshold1,
|  | uint32_t | highLowThreshold2,
|  | uint16_t | zeroCrossThreshold
| ) |  |

Configure SDFM enhanced comparator for filter config & threshold values

Parameters

  base | is the base address of the SDFM module
  filterConfig | is the filter number, filter type & over sampling ratio.
  highLowThreshold1 | is high-level and low-level threshold 1 values.
  highLowThreshold2 | is high-level and low-level threshold 2 values.
  zeroCrossThreshold | is the zero-cross threshold value.

This function configures the comparator filter for filter config and threshold values based on input parameters.

The filterConfig parameter is the logical OR of the filter number, filter type and oversampling ratio. The bit definitions for filterConfig are as follow:

- filterConfig.[3:0] filter number
- filterConfig.[7:4] filter type
- filterConfig.[15:8] Over sampling Ratio Valid values for filter number and filter type are defined in CSL_uint32_t and CSL_uint32_t enumerations respectively. SDFM_SET_OSR(X) macro can be used to set the value of the oversampling ratio ,which ranges [1,32] inclusive, in the appropriate bit location. For example the value (SDFM_FILTER_1 | SDFM_FILTER_SINC_2 | SDFM_SET_OSR(16)) will select Filter 1, SINC 2 type with an oversampling ratio of 16.

The highLowThreshold1 parameter is the logical OR of the filter high & low threshold 1 values. The bit definitions for highLowThreshold1 are as follow:

- highLowThreshold1.[15:0] low threshold 1
- highLowThreshold1.[31:16] high threshold 1 The upper 16 bits define the high threshold and the lower 16 bits define the low threshold. SDFM_THRESHOLD(H,L) can be used to combine the high and low thresholds.

The highLowThreshold2 parameter is the logical OR of the filter high & low threshold 2 values. The bit definitions for highLowThreshold2 are as follow:

- highLowThreshold2.[15:0] low threshold 2
- highLowThreshold2.[31:16] high threshold 2 The upper 16 bits define the high threshold and the lower 16 bits define the low threshold. SDFM_THRESHOLD(H,L) can be used to combine the high & low thresholds.

The zeroCrossThreshold parameter is the logical OR of the zero cross threshold enable flag and the zero-cross threshold value. The bit definitions for zeroCrossThreshold are as follows:

- zeroCrossThreshold.[15] - Enable or disable zero cross threshold. Valid values are 1 or 0 to enable or disable the zero cross threshold respectively.
- zeroCrossThreshold.[14:0] - Zero Cross Threshold value. The SDFM_SET_ZERO_CROSS_THRESH_VALUE(X) macro can be used as parameter zeroCrossThreshold to enable & specify the zero-cross threshold value.

Returns
  None.

## ◆ SDFM_configDataFilter()

void SDFM_configDataFilter | ( | uint32_t | base,
|  | uint16_t | config1,
|  | uint16_t | config2
| ) |  |

Configure SDFM data filter

Parameters

  base | is the base address of the SDFM module
  config1 | is the filter number, filter type and over sampling ratio configuration.
  config2 | is filter switch, data representation and data shift values configuration.

This function configures the data filter based on configurations config1 and config2.

The config1 parameter is the logical OR of the filter number, filter type and oversampling ratio. The bit definitions for config1 are as follow:

- config1.[3:0] Filter number
- config1.[7:4] Filter type
- config1.[15:8] Over sampling Ratio Valid values for filter number and filter type are defined in CSL_uint32_t and CSL_uint32_t enumerations respectively. SDFM_SET_OSR(X) macro can be used to set the value of the oversampling ratio , which ranges [1,256] inclusive , in the appropriate bit location for config1. For example the value (SDFM_FILTER_2 | SDFM_FILTER_SINC_3 | SDFM_SET_OSR(64)) will select Filter 2 , SINC 3 type with an oversampling ratio of 64.

The config2 parameter is the logical OR of data representation, filter switch, and data shift values The bit definitions for config2 are as follow:

- config2.[0] Data representation
- config2.[1] Filter switch
- config2.[15:2] Shift values Valid values for data representation are given in CSL_uint32_t enumeration. SDFM_FILTER_DISABLE or SDFM_FILTER_ENABLE will define the filter switch values.SDFM_SHIFT_VALUE(X) macro can be used to set the value of the data shift value,which ranges [0,31] inclusive, in the appropriate bit location for config2. The shift value is valid only in SDFM_DATA_FORMAT_16_BIT data representation format.

Returns
  None.

## ◆ SDFM_configZeroCrossComparator()

void SDFM_configZeroCrossComparator | ( | uint32_t | base,
|  | uint16_t | config1,
|  | uint16_t | config2
| ) |  |

Configure SDFM comparator Zero Cross threshold

Parameters

  base | is the base address of the SDFM module
  config1 | is the filter number, filter type and over sampling ratio.
  config2 | is the zero cross threshold value.

This function configures the comparator filter zero cross threshold values based on configurations config1 and config2.

The config1 parameter is the logical OR of the filter number, filter type and oversampling ratio. The bit definitions for config1 are as follow:

- config1.[3:0] filter number
- config1.[7:4] filter type
- config1.[15:8] Over sampling Ratio Valid values for filter number and filter type are defined in CSL_uint32_t and CSL_uint32_t enumerations respectively. SDFM_SET_OSR(X) macro can be used to set the value of the oversampling ratio ,which ranges [1,32] inclusive, in the appropriate bit location. For example the value (SDFM_FILTER_1 | SDFM_FILTER_SINC_2 | SDFM_SET_OSR(16)) will select Filter 1 , SINC 2 type with an oversampling ratio of 16.

The config2 parameter is the value of the zero cross threshold. The maximum acceptable value is 32767.

Returns
  None.

## ◆ SDFM_configDataFilterFIFO()

void SDFM_configDataFilterFIFO | ( | uint32_t | base,
|  | uint16_t | config1,
|  | uint16_t | config2
| ) |  |

Configure SDFM data filter FIFO

Parameters

  base | is the base address of the SDFM module
  config1 | is the filter number, filter type and over sampling ratio configuration.
  config2 | is filter switch, data representation and data shift values and FIFO level configuration.

This function enables and configures the data filter FIFO based on configurations config1 and config2.

The config1 parameter is the logical OR of the filter number, filter type and oversampling ratio. The bit definitions for config1 are as follow:

- config1.[3:0] filter number
- config1.[7:4] filter type
- config1.[15:8] Over sampling Ratio Valid values for filter number and filter type are defined in CSL_uint32_t and CSL_uint32_t enumerations respectively. SDFM_SET_OSR(X) macro can be used to set the value of the oversampling ratio , which ranges [1,256] inclusive , in the appropriate bit location for config1. For example the value (SDFM_FILTER_2 | SDFM_FILTER_SINC_3 | SDFM_SET_OSR(64)) will select Filter 2 , SINC 3 type with an oversampling ratio of 64.

The config2 parameter is the logical OR of data representation, filter switch, data shift value, and FIFO level The bit definitions for config2 are as follow:

- config2.[0] Data representation
- config2.[1] filter switch.
- config2.[6:2] shift values.
- config2.[15:7] FIFO level Valid values for data representation are given in CSL_uint32_t enumeration. SDFM_FILTER_DISABLE or SDFM_FILTER_ENABLE will define the filter switch values.SDFM_SHIFT_VALUE(X) macro can be used to set the value of the data shift value,which ranges [0,31] inclusive, in the appropriate bit location for config2. The value of FIFO level ranges [1,16] inclusive. The macro SDFM_SET_FIFO_LEVEL(X) can be used to set the value of the FIFO level.

Returns
  None.

## ◆ SDFM_configCompEventLowFilter()

void SDFM_configCompEventLowFilter | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | const SDFM_CompEventFilterConfig * | config
| ) |  |

Configure Comparator Event Low Filter

Parameters

  base | is the base address of the SDFM module
  filterNumber | is the filter number.
  config | is the comparator event low source

This function configures the sample window, threshold and clock prescale configurations for the comparator event low filter.

Returns
  None.

## ◆ SDFM_configCompEventHighFilter()

void SDFM_configCompEventHighFilter | ( | uint32_t | base,
|  | uint32_t | filterNumber,
|  | const SDFM_CompEventFilterConfig * | config
| ) |  |

Configure Comparator Event High Filter

Parameters

  base | is the base address of the SDFM module.
  filterNumber | is the filter number.
  config | is the comparator event high source

This function configures the sample window, threshold and clock prescale configurations for the comparator event high filter.

Returns
  None.

SDFM_GET_HIGH_THRESHOLD
#define SDFM_GET_HIGH_THRESHOLD(C)
Macro to get the high threshold.
Definition: sdfm/v0/sdfm.h:79
SDFM_GET_LOW_THRESHOLD
#define SDFM_GET_LOW_THRESHOLD(C)
Header Files.
Definition: sdfm/v0/sdfm.h:76