Периферийные устройства

Датчик температуры DS1621

Датчик температуры DS1621

Назначение выводов

Датчик температуры DS1621

  • SDA - линия данных шины I2C
  • SCL - линия тактового сигнала шины I2C
  • Tout - выход термостата
  • Vdd - плюсовой вывод питания
  • Vss - минусовой вывод питания
  • A0..A2 - линииформирования младших битов адреса

 

Принцип работы

Датчик температуры DS1621 для измерения использует принцип нестабильности частоты колебаний при изменении температуры. Для этого в ее состав входят два генератора. Первый имеет высокую температурную стабильность. Его частота соответствует температуре –55 градусов и практически не подвержена изменениям. Частота работы второго генератора, наоборот, изменяется пропорционально температуре. Специальные счетчики импульсов производят подсчет за одинаковый временной интервал и на основе разности, вычисляют значение температуры. Это значение в 9-разрядном двоичном коде доступно пользователю Данные разбиваются на старший и младший байты. Если достаточно целое значение температуры, то можно пользоваться только старшим байтом. Младший байт имеет только один информационный бит LSB, обеспечивающий дискретность 0.5 градуса. Остальные биты младшего байта всегда равны 0.

 

Регистр состояния

Регистр состояния

Микросхема DS1621 имеет несколько режимов работы. Настройка и отслеживание этих режимов производится с помощью регистра состояний. Имеются следующие доступные биты:

  • DONE – флаг окончания преобразования.Устанавливается по завершении преобразования.
  • THF – флаг «высокая температура». Устанавливается при превышении порога TH. Сбрасывается программно или отключением питания.
  • TLF - флаг «низкая температура». Устанавливается при температуре меньшей, чем значение порога TL. Сбрасывается программно или отключением питания.
  • NVB – флаг записи данных в энергонезависимую память. Установленный флаг свидетельствует о незавершенности записи. Время записи ячейки составляет ориентировочно 10 мс.
  • POL – полярность выхода Tout. Высокое значение соответствует прямой полярности, низкое – обратной. Бит энергонезависим.
  • ISHOT – управление циклом измерений. При высоком логическом уровне измерение выполняется однократно. Данный режим используется в энергосберегающих системах. Низкий логический уровень бита, разрешает выполнение преобразования в непрерывном режиме. Бит энергонезависим.

 

Работа с DS1621

Команды обмена

Обмен данными с DS1621 производится по стандартному протоколу I2C. Микросхема участвует в нем в качестве slave-устройства. Slave-адрес DS1621 имеет вид 1001ххх, где ххх – состояние линий А0-А2 микросхемы. Для работы с DS1621 используются следующие команды:

  • 22h – «Останов преобразования» - команда производит завершение работы схемы преобразования температуры. Дополнительных данных для работы не требуется.
  • AAh – «Чтение температуры» - Результатом работы команды являются два байта данных, содержащих значение измеренной температуры.
  • A1h – «Установка TH» - команда установки верхнего порога срабатывания термостата. После данной команды требуется передача двух байтов значения порога.
  • A2h - «Установка TL» - команда установки нижнего порога срабатывания термостата. После данной команды требуется передача двух байтов значения порога.
  • A8h – «чтение температурного счетчика». Команда работает только на чтение и позволяет считать данные счетчика, частота работы которого зависит от температуры.
  • A9h - «чтение стабильного счетчика». Команда работает только на чтение и позволяет считать данные счетчика, частота работы которого не зависит от температуры.
  • AСh – «Регистр конфигурации». В зависимости от состояния бита R/W производится запись или чтение регистра конфигурации. Формат используемых данных – байт.
  • EEh – «Старт счетчика» - команда начала измерения температуры. Дополнительных данных не требуется.

Повышение точности измерений

Датчик температуры DS1621 допускает повышение точности измерения. Для этого пользователю доступны значения счетчиков стабильного N[A9h] и температурнозависимого N[A8h] генератора. Зная измеренное значение температуры T[AAh]и значения счетчиков можно воспользоваться формулой:

T=T[AAh] – 0.25 + (N[A9h]-N[A8h])/N[A9h]

Также желательна калибровка датчика с определением необходимых поправок. Учет этих поправок должен производиться в контроллере.

Режим термостата

Микросхема DS1621 может работать в режиме термостата. Для этого имеется выход Tout, устанавливаемый в зависимости от значения температуры. Пороги включения и выключения выхода задаются значениями в регистрах TH и TL. Полярность выхода устанавливается битом POL регистра конфигурации.

Работа DS1621 в режиме термостата Графики работы DS1621 в режиме термостата

Примеры работы

Использование датчика температуры DS1621 и платы AMICUS18

You have no rights to post comments