реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Период (частота) опроса iButton
Baser
сообщение Oct 16 2008, 16:15
Сообщение #1


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



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

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

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

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

Что-то я не натыкался в аппликейшенах на подобные рекомендации.
Go to the top of the page
 
+Quote Post
Палыч
сообщение Oct 17 2008, 08:00
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(Baser @ Oct 16 2008, 19:15) *
...какой оптимальный период (частоту) опроса iButton выбрать?...чтобы ждать не нужно было, прикоснулся и готово...
Про какой период опроса идет речь? Как этот период может влиять на время чтения информации? Если Вы желаете отлавливать импульс присутствия, то это можно сделать и аппаратно. Тогда контроллер будет загружен работой с iButton только, собственно, при чтении значения ключа.
Go to the top of the page
 
+Quote Post
WEST128
сообщение Oct 17 2008, 09:10
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 468
Регистрация: 13-10-06
Из: Россия, Томск
Пользователь №: 21 291



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

Чтобы пользователей не видели инерционности работы устройства, частота опроса должна быть порядка 20 Гц. В принципе, такой период опроса нужен для опознавания устройства, там нужно сформировать импульс (нулевой) длиной около 1 мс, а потом отловить импульс присутствия, который будет от 15 до 65 мкс после окончания первого, что отлично делается по прерыванию + таймер. Длина первого импульса не критична, можно и 10 мс, и 100, и больше. Даже на AVR это займет ничтожное количество времени при нормальной реализации, не более 1%.
Go to the top of the page
 
+Quote Post
Палыч
сообщение Oct 17 2008, 10:54
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(WEST128 @ Oct 17 2008, 12:10) *
Чтобы пользователей не видели инерционности работы устройства, частота опроса должна быть порядка 20 Гц.
Следует помнить, что iButton выдаст импульс присутствия самостоятельно сразу же после того, как пользователь соединит его с контактами считывателя. Этот момент в документации опущен. Хотя понятно, что раз на пластинах таблетки нет напряжения в течении долгого времени - iButton воспринимает это так же как импульс сброса, и при появлении напряжения соответственно реагирует импульсом присутствия. Очень удобно завести линию на ногу INTx и не заморачиваться с периодическим опросом - нужно лишь аппаратно отлавливать импульс присутствия, который iButton сформирует при подключении к контактам. Ну, а уж потом - reset pulse, presence pulse и т.д.
Go to the top of the page
 
+Quote Post
Baser
сообщение Oct 18 2008, 20:41
Сообщение #5


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Спасибо за ответы. Про импульс присутствия, который выдает 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 не гарантируется".
Такие вот пироги.
Go to the top of the page
 
+Quote Post
WEST128
сообщение Oct 20 2008, 05:01
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 468
Регистрация: 13-10-06
Из: Россия, Томск
Пользователь №: 21 291



Если вам нужно просто следать устройство "для отмашки от начальства", то можете написать, что будет работать только с новыми приборами (с суффиксом R), а если вы заинтересованы в том, чтобы его продавать - лучше делать универсальным, тем более цена вопроса копеечная - дергать ногу контроллера (по таймеру или еще как), и ловить импульс присутствия.
Go to the top of the page
 
+Quote Post
Палыч
сообщение Oct 20 2008, 05:36
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(Baser @ Oct 18 2008, 23:41) *
Есть и то, что сначала не получилось.
В частности, есть DS1990A и DS1990R. В первой выдача импульса присутствия после подачи напряжения не получилась (не гарантируется)
Чёрт его знает - насколько выдача импульса не гарантируется. Используются таблетки с буковкой А уже много лет - без нареканий...
Go to the top of the page
 
+Quote Post
Baser
сообщение Oct 22 2008, 15:03
Сообщение #8


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Сделал по опросу в главном цикле 10 раз в секунду (100 мс период). Работает как часы. Никаких прерываний, обычная ножка.
Пробовал в два раза чаще - 20 раз в секунду - никакой разницы не заметил. При 100 мс также четко читает в одно касание.
Go to the top of the page
 
+Quote Post
WEST128
сообщение Oct 23 2008, 06:53
Сообщение #9


Местный
***

Группа: Свой
Сообщений: 468
Регистрация: 13-10-06
Из: Россия, Томск
Пользователь №: 21 291



Если все ваши прерывания обрабатываются достаточно быстро, и вы согласны терять при каждом опросе порядка 1 мс времени - то почему бы и нет. Не зная задачи целиком и характерных особенностей ее решения, выбранных вами, вряд ли можно сказать большее.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 04:59
Рейтинг@Mail.ru


Страница сгенерированна за 0.01425 секунд с 7
ELECTRONIX ©2004-2016