Перейти к содержанию
    

Период (частота) опроса iButton

Кто работал с Далласовскими ключами на iButton, подскажите,

 

какой оптимальный период (частоту) опроса iButton выбрать?

 

- с одной стороны хочется, чтобы пользователей не напрягала процедура (чтобы ждать не нужно было, прикоснулся и готово);

 

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

 

Что-то я не натыкался в аппликейшенах на подобные рекомендации.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

...какой оптимальный период (частоту) опроса iButton выбрать?...чтобы ждать не нужно было, прикоснулся и готово...
Про какой период опроса идет речь? Как этот период может влиять на время чтения информации? Если Вы желаете отлавливать импульс присутствия, то это можно сделать и аппаратно. Тогда контроллер будет загружен работой с iButton только, собственно, при чтении значения ключа.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Чтобы пользователей не видели инерционности работы устройства, частота опроса должна быть порядка 20 Гц. В принципе, такой период опроса нужен для опознавания устройства, там нужно сформировать импульс (нулевой) длиной около 1 мс, а потом отловить импульс присутствия, который будет от 15 до 65 мкс после окончания первого, что отлично делается по прерыванию + таймер. Длина первого импульса не критична, можно и 10 мс, и 100, и больше. Даже на AVR

 

Чтобы пользователей не видели инерционности работы устройства, частота опроса должна быть порядка 20 Гц. В принципе, такой период опроса нужен для опознавания устройства, там нужно сформировать импульс (нулевой) длиной около 1 мс, а потом отловить импульс присутствия, который будет от 15 до 65 мкс после окончания первого, что отлично делается по прерыванию + таймер. Длина первого импульса не критична, можно и 10 мс, и 100, и больше. Даже на AVR это займет ничтожное количество времени при нормальной реализации, не более 1%.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Чтобы пользователей не видели инерционности работы устройства, частота опроса должна быть порядка 20 Гц.
Следует помнить, что iButton выдаст импульс присутствия самостоятельно сразу же после того, как пользователь соединит его с контактами считывателя. Этот момент в документации опущен. Хотя понятно, что раз на пластинах таблетки нет напряжения в течении долгого времени - iButton воспринимает это так же как импульс сброса, и при появлении напряжения соответственно реагирует импульсом присутствия. Очень удобно завести линию на ногу INTx и не заморачиваться с периодическим опросом - нужно лишь аппаратно отлавливать импульс присутствия, который iButton сформирует при подключении к контактам. Ну, а уж потом - reset pulse, presence pulse и т.д.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо за ответы. Про импульс присутствия, который выдает iButton после подключения к шине, я совсем не подумал. Работал только с постоянно подключенными датчиками температуры. В даташитах этот вопрос прямиком тоже не описан.

 

Однако порылся в апликейшенах и нашел описание этого процесса:

App Note 937: Book of iButton Standards

стр.5 глава C.Sinchronization,

стр.38 глава D.Presence Detect

 

Но оказалось, что не все так хорошо, как пишут в описаниях. Есть и то, что сначала не получилось.

В частности, есть DS1990A и DS1990R. В первой выдача импульса присутствия после подачи напряжения не получилась (не гарантируется):

Note 14: Presence pulse is guaranteed only after a preceding Reset Pulse (tRSTL).

Далласу пришлось делать улучшенную модель DS1990R, где этот дефект устранен:

SPECIAL FEATURES:
Upgrade of DS1990A Guarantees Presence Pulse on Contact
In applications where a presence pulse on contact is critical the DS1990R should be preferred over the DS1990A.
Presence Detector Acknowledges when Reader First Applies Voltage
Note 13: Presence pulse after POR is guaranteed by design, not production tested.

 

Так что "теперь я вся в сомнениях". Нога у меня сейчас под прием 1-Wire задействована без прерывания, нужно передвигать. Да и неизвестно, какие iButton-ы будет применять конечный потребитель. Хотя можно написать в документации, что "работа с DS1990A не гарантируется".

Такие вот пироги.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если вам нужно просто следать устройство "для отмашки от начальства", то можете написать, что будет работать только с новыми приборами (с суффиксом R), а если вы заинтересованы в том, чтобы его продавать - лучше делать универсальным, тем более цена вопроса копеечная - дергать ногу контроллера (по таймеру или еще как), и ловить импульс присутствия.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Есть и то, что сначала не получилось.

В частности, есть DS1990A и DS1990R. В первой выдача импульса присутствия после подачи напряжения не получилась (не гарантируется)

Чёрт его знает - насколько выдача импульса не гарантируется. Используются таблетки с буковкой А уже много лет - без нареканий...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Сделал по опросу в главном цикле 10 раз в секунду (100 мс период). Работает как часы. Никаких прерываний, обычная ножка.

Пробовал в два раза чаще - 20 раз в секунду - никакой разницы не заметил. При 100 мс также четко читает в одно касание.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если все ваши прерывания обрабатываются достаточно быстро, и вы согласны терять при каждом опросе порядка 1 мс времени - то почему бы и нет. Не зная задачи целиком и характерных особенностей ее решения, выбранных вами, вряд ли можно сказать большее.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...