Перейти к блогу GetChip.net - блог        JilTE[1] - в разработке     Модификации устройств - модификации

 
Текущее время: 20 сен 2019, 05:28

Часовой пояс: UTC + 3 часа [ Летнее время ]



Ответить
Имя пользователя:
Заголовок:
Текст сообщения:
Введите текст вашего сообщения. Длина сообщения в символах не более: 60000

Размер шрифта:
Цвет шрифта
Настройки:
BBCode ВКЛЮЧЁН
[img] ВКЛЮЧЁН
[flash] ВЫКЛЮЧЕН
[url] ВКЛЮЧЁН
Смайлики ВЫКЛЮЧЕНЫ
Отключить в этом сообщении BBCode
Не преобразовывать адреса URL в ссылки
Анти-спам
Анти-спам:
Выполните задание
   

Обзор темы - Устройства iButton.
Автор Сообщение
  Заголовок сообщения:  Устройства iButton.  
Цитата
Надеюсь, что в этом топике будут размещаться различные датчики для однопроводной шины.

Вот первый рабочий вариант дискретного датчика для однопроводной (1-Wire) шины. Код написан для МК ATtiny13A. Тактируется на частоте 9,6 МГц от внутреннего генератора. Уникальный номер датчика 0xE5000003372FC040.
Вложение:
1.png
1.png [ 52.67 КБ | Просмотров: 715 ]

Так как мой код поиска датчиков на шине по уникальным номерам не совершенен, то опытным путём был найден код семейства (0х40) который совместно с датчиками DS18B20 определяется без ошибок. Что касается данного кода семейства, то такой номер не определён для устройств iButton. Таким образом данный номер гарантированно не встретится у других устройств.

Схема:
Вложение:
2.png
2.png [ 11.73 КБ | Просмотров: 715 ]

К порту РВ0 подключается сухой контакт. К порту РВ1 шина (1-Wire) с подтягивающим резистором (4к7) к положительному потенциалу напряжения питания. К порту РВ4 можно подключить светодиод для индикации состояния контактов.

Данный датчик опрашивается так же как и DS18B20… датчик понимает команды РОМ : SEARCH ROM (0xF0) – поиск кода ром; READ ROM (0x33) – чтение ром; MATCH ROM (0x55) – соответствия ром; SKIP ROM (0xCC) – пропуск ром. Из функциональных команд поддерживаются: CONVERT (0x44) – конвертирования значений, и READ MEMORY (0xBE) – чтение памяти датчика.
При поступлении команды 0х44, датчик прижимает шину к «земле» и производит опрос входа сухого контакта. В зависимости от состояния контакта производится занесение соответствующего значения в память датчика с вычислением CRC. После выполнении соответствующих процедур шина отпускается.
При поступлении команды 0хВЕ, датчик выдаёт 9 байт. Два младших байта, это информация о состоянии контакта датчика (по аналогии значения температуры у DS18B20), девятый байт контрольная сумма CRC вычисленная из первых восьми байт. По аналогии с термометром DS18B20, значение 0,0 «градусов» будет соответствовать разомкнутому контакту. Значение 10,0 «градусов» - соответствует при замкнутом контакте.


Вложение:
Концевой выключатель.zip [15.57 КБ]
Скачиваний: 59
Сообщение Добавлено: 29 июл 2017, 10:14

Часовой пояс: UTC + 3 часа [ Летнее время ]


Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB