Jump to content

    
Sign in to follow this  
Sagittarius

АЦП AD7124 и внутренний температурный сенсор

Recommended Posts

Здравствуйте.

 

Может кто ни будь сможет подсказать. Использую AD7124-8, пытаюсь измерить показания внутреннего температурного сенсора. На выбранном канале на "+" коммутирую сенсор, на "-" AVss. Конфиг на канал биполярный, буферизированный, референс внутренний. В принципе пробовал и всякие другие установки как по конфигу так и по фильтрам, как дефолтные так и из примеров и форума AD. Результат примерно одинаковый - результат преобразования 0xBE8xxx..0xBE9xxx что по формуле из доки дает температуру в районе 300 тысяч цельсия :-) Где то косяк, но в чем как то уже не придумывается. Может кто то сталкивался с подобным или подскажет рабочие настройки канал/конфиг/фильтр ?

 

Спасибо.

Share this post


Link to post
Share on other sites
На выбранном канале на "+" коммутирую сенсор, на "-" AVss.
Фраза не очень понятна.

Потому что если вы меряете внутренний датчик температуры то нужно выставлять:

AINP[4:0] = 10000 = temperature sensor

AINM[4:0] = 10000 = temperature sensor

 

Т.е. это по сути 17-ый канал.

 

Плюс возможно влияние оказывает ещё PGA... хотя скорее всего нет.

Share this post


Link to post
Share on other sites
Фраза не очень понятна.

Потому что если вы меряете внутренний датчик температуры то нужно выставлять:

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.

Да, по другим каналам (внешним, внутренним) приходят ожидаемые значения, там вроде как все нормально.

 

Share this post


Link to post
Share on other sites
((12484608 – 8388608) / 13584) – 272,5 = +29,03°C

 

((12488704 – 8388608) / 13584) – 272,5 = +29,33°C

 

Опа! чего то не допер сразу. А ведь в доке то стоит запятая, 13.584, это как так?

Спасибо.

Share this post


Link to post
Share on other sites

Целую и дробную часть у нас разделяет запятая, а у американцев точка. Запятая же у них служит десятичным разделителем (каждые три порядка целого или дробного), тогда как мы и весь прогрессивный мир делает это посредством полукегельной шпации (специальный пробел).

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this