Sagittarius 0 14 августа, 2017 Опубликовано 14 августа, 2017 · Жалоба Здравствуйте. Может кто ни будь сможет подсказать. Использую AD7124-8, пытаюсь измерить показания внутреннего температурного сенсора. На выбранном канале на "+" коммутирую сенсор, на "-" AVss. Конфиг на канал биполярный, буферизированный, референс внутренний. В принципе пробовал и всякие другие установки как по конфигу так и по фильтрам, как дефолтные так и из примеров и форума AD. Результат примерно одинаковый - результат преобразования 0xBE8xxx..0xBE9xxx что по формуле из доки дает температуру в районе 300 тысяч цельсия :-) Где то косяк, но в чем как то уже не придумывается. Может кто то сталкивался с подобным или подскажет рабочие настройки канал/конфиг/фильтр ? Спасибо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 14 августа, 2017 Опубликовано 14 августа, 2017 · Жалоба Я думаю, вам нужно выбрать или задать выравнивание результатов измерения справа или слева в слове. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MegaVolt 25 14 августа, 2017 Опубликовано 14 августа, 2017 · Жалоба На выбранном канале на "+" коммутирую сенсор, на "-" AVss.Фраза не очень понятна. Потому что если вы меряете внутренний датчик температуры то нужно выставлять: AINP[4:0] = 10000 = temperature sensor AINM[4:0] = 10000 = temperature sensor Т.е. это по сути 17-ый канал. Плюс возможно влияние оказывает ещё PGA... хотя скорее всего нет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Sagittarius 0 14 августа, 2017 Опубликовано 14 августа, 2017 · Жалоба Фраза не очень понятна. Потому что если вы меряете внутренний датчик температуры то нужно выставлять: AINP[4:0] = 10000 = temperature sensor AINM[4:0] = 10000 = temperature sensor Т.е. это по сути 17-ый канал. Плюс возможно влияние оказывает ещё PGA... хотя скорее всего нет. Если temperature sensor ставить на оба канала то результатом будет что то типа 0x7FFFe7, что тоже не проходит. Собственно с этой конфигурации начинал. А вот тут, вроде как форум самого AD: https://ez.analog.com/thread/94666 говорят именно про конфигурацию когда на IN+ подключают датчик а IN- на AGND. Да, по другим каналам (внешним, внутренним) приходят ожидаемые значения, там вроде как все нормально. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Plain 168 14 августа, 2017 Опубликовано 14 августа, 2017 · Жалоба результат преобразования 0xBE8xxx..0xBE9xxx что по формуле из доки дает ((12484608 – 8388608) / 13584) – 272,5 = +29,03°C ((12488704 – 8388608) / 13584) – 272,5 = +29,33°C Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Sagittarius 0 14 августа, 2017 Опубликовано 14 августа, 2017 · Жалоба ((12484608 – 8388608) / 13584) – 272,5 = +29,03°C ((12488704 – 8388608) / 13584) – 272,5 = +29,33°C Опа! чего то не допер сразу. А ведь в доке то стоит запятая, 13.584, это как так? Спасибо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Plain 168 14 августа, 2017 Опубликовано 14 августа, 2017 · Жалоба Целую и дробную часть у нас разделяет запятая, а у американцев точка. Запятая же у них служит десятичным разделителем (каждые три порядка целого или дробного), тогда как мы и весь прогрессивный мир делает это посредством полукегельной шпации (специальный пробел). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться