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

1-wire slave. Проблемы с поиском

Всем привет!

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

Все работало прекрасно, пока была связь точка-точка. Как только подключаю еще один-два слейв устройства, начинается свистопляска при поиске. То одно устройство находится мастером, то два, то одно аж два раза.

Было принято стратегическое решение найти "нормального" мастера и "нормальных" слейвов, чтобы тестировать с ними. В закромах Родины нашелся переходник USB-1-wire от Maxim (мастер) и платка с термодатчиком, реле и UIDом (слейвы).

И тут тоже самое. Подправила задержки, вроде "нормальный" мастер обнаруживает мое устройство, но получается такая же свистопляска, если подключать более одного слейва. Все тайминги проверила ( по крайней мере постаралась). Все равно не работает(

А вообще должно? Как в реальных сетях? Поиск выполняется мастером однократно в начале? Или мониторится сеть постоянно и перебои в количестве обнаруживаемых устройств это в рамках нормы? Куда копать? :wacko::help:

Тех. детали: в качестве моего слейва платка с контроллером xmega32d4, дергает ногой, не уартом.

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


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

А вообще должно? Как в реальных сетях? Поиск выполняется мастером однократно в начале? Или мониторится сеть постоянно и перебои в количестве обнаруживаемых устройств это в рамках нормы? Куда копать? :wacko::help:

Тех. детали: в качестве моего слейва платка с контроллером xmega32d4, дергает ногой, не уартом.

попробуйте поискать информацию по исходниках ядра (kernel.org) в разделе drivers/w1

и там же в доках Documentation/w1

у Maxim/Dallas был неплохой раздел с литературой по w1..

 

уж если почти на любом проце можно организовать onewire, то и у вас должно получится..

 

как гипотеза, ваш слейв не поддерживает режим multislave, такие варианты есть у далласа - есть чипы термометров, которые могут сосуществовать вместе, есть индивидумы..

для проверки можно изолировать ваши слейвы через w1 мультиплексор..

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


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

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

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

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

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

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

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

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

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

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