??? 05/16/08 07:36 Modified: 05/16/08 08:22 Read: times |
#154816 - I shouldn\\\'t post after a long workday ... Responding to: ???'s previous message |
... since I'll end up omitting half of what I intended to say and the rest becomes incomprehensible.
Yes, if you truncate/round the filter output to the number of bits that the ADC outputs, you'll not be able to stop the LSB from flickering in a case where the ADC input value is sufficiently close to the threshold between two steps. Truncation adds 1 LSB or noise, rounding adds 0.5 LSB of noise. If you keep the additional bits of precision gained by filtering, then you can get the flickering to below the ADC resolution, effectively getting a number of stable bits that is equal to or even larger than the ADC resolution, at the cost of having to carry around additional bits after that (that's the point I forgot earlier - you need to keep those bits instead of throwing them away). However, as soon as you truncate/round that value to the ADC resolution (e.g. for output, to save memory, etc), you're adding 0.5-1 LSB of round-off/truncation noise and the last (ADC resolution) bit will flicker again. I hope I'm making more sense now than in the earlier posting, and I realize that this doesn't really help the OP since he needs to round his value to the output resolution at some point. I also apologize for my short temper. I've found myself explaining "their own" spec to "them" at work too often lately (not calling any names here), which starts to wear down my patience outside work. |