Давненько не писал о проблемах, но тут возникли чудеса с AD7718 (24 бит сигма-дельта)
Измеряю сопротивление термодатчика Pt1000 по ратиометрической схеме.
Цепь сверху вниз: Uref = 2048мВ - R 10кОм - Rt 1кОм подключен к Ain7-Ain8 - Rref 10кОм подключен к Ain9-Ain10 (REF2+/-) - R 1кОм - земля.
Изначально планировал измерять за один раз сразу отношение Rt/Rref, но не учел высокий входной ток входа опоры. Пришлось делать как обычно, двумя измерениями.
Суть проблемы заключается в том, что при измерении Rt (точный магазин сопротивлений) обнаружился перекос на 10 Ом, или 1% от измеряемой величины 1 кОм.
При этом 10кОм измеряется с точностью до последнего знака, то есть 9998,4 - опорный резистор 10кОм С2-29В-С с достаточной точностью.
Пошел по шкале вниз и на уровне Rt=84 Ом (U=8.197мВ) обнаружил "срыв" кода, то есть резкий скачок между 655хх и 573хх, что в единицах напряжения равно около 1мВ.
Другими словами:
При возрастании Uin от нуля до примерно 8мВ все идет нормально, код точно соответствует входному напряжению, далее резкий скачок кода с 655хх
(но не 65535, как можно подумать, потому как видел и 65537) до примерно 57300, далее опять рост с прежней крутизной, но смещением по коду на эквивалент 1мВ.
Интересно, какие могут быть предположения.
Как бороться, я уже примерно наметил.
Проверял на двух экземплярах, поведение абсолютно идентичное.
PS: входные напряжения смотрел, в точности соответствуют заданным резисторам. По всей видимости, дефект дешифратора сигма-дельта кода.
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)