Jump to content

    

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

Всем привет!

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

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

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

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

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

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

Share this post


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

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

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

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

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

 

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

 

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

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

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this