This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

UCD3138: Front End auto gain shift using non-linear control thresholds.

Part Number: UCD3138

Hello all,

I'm looking at section 3.1.1 of sluu995a and it says that "By setting the AUTO_GAIN_SHIFT_MODE bit in the EADCCTRL register, the second auto gain mode can be enabled. In this mode, the shift points are set by the Filter nonlinear mode thresholds."  I've been using AUTO_GAIN_SHIFT_EN = 1 to shift FE gain automatically, but I've come across something strange and I'd like to manually set the thresholds.  Unfortunately the documentation does not explain exactly how the NL thresholds can be used.  Here's what I have so far:

FeCtrl0Regs.EADCCTRL.bit.AUTO_GAIN_SHIFT_EN = 1; // Enable auto-gain-shift

FeCtrl0Regs.EADCCTRL.bit.AUTO_GAIN_SHIFT_MODE = 1; // Use NL limits, not automatic limits

LoopMuxRegs.FECTRL0MUX.bit.NL_SEL = 2; // Use filter2 limits to control FE0 gain

Filter2Regs.FILTERCTRL.bit.NL_MODE = 1; // Use symmetric mode in filter2

LoopMuxRegs.FILTERMUX.bit.FILTER2_FE_SEL = 0; // Connect filter2 to FE0

From this point I've experimented with the NL thresholds (Filter2Regs.FILTERNLx), but I cannot figure out exactly how they change the gain.  Do the "bins" matter (Filter2Regs.COEFCONFIG.bit.BINx_CONFIG)?  Is there support for hysteresis in this gain shift mode, as there is in the auto-shift?

Thanks

Nathan