38 return &(MODULE_SRC.DSADC.DSADC[channel].SRA);
46 frequency = frequency / ((
float32)1.0 + dsadc->CH[channel].IWCTR.B.NVALINT);
47 Ifx_DSADC_CH_FCFGM fcfgm = dsadc->CH[channel].FCFGM;
49 if (fcfgm.B.FIR0EN != 0)
51 frequency = frequency / 2;
54 if (fcfgm.B.FIR1EN != 0)
56 frequency = frequency / 2;
67 return frequency / ((
float32)1.0 + dsadc->CH[channel].FCFGC.B.CFMDF);
73 Ifx_DSADC_CH_FCFGC fcfgc = dsadc->CH[channel].FCFGC;
74 Ifx_DSADC_CH_FCFGM fcfgm = dsadc->CH[channel].FCFGM;
75 Ifx_DSADC_CH_DICFG dicfg = dsadc->CH[channel].DICFG;
76 Ifx_DSADC_CH_IWCTR iwctr = dsadc->CH[channel].IWCTR;
78 float32 tsComb = tsMod * (1 + fcfgc.B.CFMDF);
79 float32 tsFir0 = tsComb * (1 + fcfgm.B.FIR0EN);
80 float32 tsFir1 = tsFir0 * (1 + fcfgm.B.FIR1EN);
83 uint32 combN = (1 + fcfgc.B.CFMDF);
84 float32 gdComb = tsMod * ((fcfgc.B.CFMC < 3) ? (0.5 * (fcfgc.B.CFMC + 1) * combN) : (combN + 1));
85 float32 gdFir0 = (fcfgm.B.FIR0EN != 0) ? (0.5 * 8 * tsComb) : 0;
86 float32 gdFir1 = (fcfgm.B.FIR1EN != 0) ? (0.5 * 28 * tsFir0) : 0;
89 return gdDsA + gdComb + gdFir0 + gdFir1 + gdInt;
95 return &(MODULE_SRC.DSADC.DSADC[channel].SRM);
103 return sourceFreq / ((dsadc->CH[channel].MODCFG.B.DIVM + 1) * 2);
111 switch (dsadc->GLOBCFG.B.MCSEL)