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

mega8 не получается найти ds18b20

если вы внимательно прочитаете мое предыдущее сообщение, то там четко указано, что вам необходимо обеспечить достаточное питание вашим датчикам.

 

Как вы этого добьетесь, уже другой вопрос: ТОЛЬКО ВЫ знаете как проложены провода и какой они длины.

 

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

 

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

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


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

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

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

А на самом деле быстрее вскрыть плинтуса и термоусадки, чтоб сделать все по правильному.

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


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

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

А на самом деле быстрее вскрыть плинтуса и термоусадки, чтоб сделать все по правильному.

 

Это крайний вариант и самый не удобный способ.

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


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

Это крайний вариант и самый не удобный способ.

Но при этом 100% рабочий.

Можно сделать по-проще, но при определенных фазах луны работать не будет.

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


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

тогда пробуйте вариант APPENDIX C – ADVANCED 1-WIRE NETWORK DRIVER

 

в этом сучае должно пойти наверняка.

 

только на тайминги обращайте внимание.

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


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

pullup собрал по вот этой схеме:

4206Fig01.gif

С фронтами стало лучше, было:

post-39302-1420494070_thumb.jpg

стало:

post-39302-1420494124_thumb.jpg

 

Функцию сброса отладил по таймингам из AN132.

Но не отрабатывает корректно функция записи в шину. На датчиках в макетке все замечательно. А на шине, при чтении ROM, что-то не срастается.

Посоветуйте где подсмотреть тайминги для длинных шин(AN132 не дало результата даже для данных линии до 600м), чтобы не подбирать долго и муторно?

 

Схема:

post-39302-1420549320_thumb.jpg

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


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

Переделал всю шину и датчики на трехпроводную, топологию переделал в шину из звезды, сделал активную подтяжку с помощью компаратора, все равно всех ds18b30 мк не видит или не стабильно видит.

Чуть посже присоеденю осцилограммы.

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


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

Переделал всю шину и датчики на трехпроводную, топологию переделал в шину из звезды, сделал активную подтяжку с помощью компаратора, все равно всех ds18b30 мк не видит или не стабильно видит.

Чуть посже присоеденю осцилограммы.

есть т.н. "китайские" ds18b20, я делаю приборы где по 4 штуки, приходится подбирать - не все умеют работать по 4 (даже по 4 ) штуки. Каждый отдельно работает, а вот соединяешь их 4 вместе - висяк, питание честное, не паразитное. Встречал и у других людей жалобы на "не совсем настоящие" 18b20, виснут при соединении нескольких в шину на одноплатниках. Так что попробуйте по одному, а потом отобрать те, что работают вместе. Сам день убил, пока дошло до такой возможности - ну не любят некоторые 18b20 друг друга. Почему - не выяснял, мне проще подобрать.

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


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

есть т.н. "китайские" ds18b20, я делаю приборы где по 4 штуки, приходится подбирать - не все умеют работать по 4 (даже по 4 ) штуки. Каждый отдельно работает, а вот соединяешь их 4 вместе - висяк, питание честное, не паразитное. Встречал и у других людей жалобы на "не совсем настоящие" 18b20, виснут при соединении нескольких в шину на одноплатниках. Так что попробуйте по одному, а потом отобрать те, что работают вместе. Сам день убил, пока дошло до такой возможности - ну не любят некоторые 18b20 друг друга. Почему - не выяснял, мне проще подобрать.

 

Именно таких проблем нет, в ПК (роутера) все датчики находятся и опрашиваются отлично, а вот с mega8 не все так радужно.

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


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

А какое удаление в по линии? Не пробовали в проге ставить точки прохождения, скажем на сведодиод. А осцилограмы сделаны возле датчиков или на ножке мк?

Изменено пользователем andrey videoplus

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


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

А какое удаление в по линии? Не пробовали в проге ставить точки прохождения, скажем на сведодиод.

 

От мастера получается максимум 21 метр. Что за точки прохождения, как они связаны со светодиодом?

При атачил визуально как шина 1wire выглядит у меня, вместо роутера как раз должне быть девайс на mega8.

 

post-39302-1442472025_thumb.jpg

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


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

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

например, даем старт, потом ждем ответ, если ответ приходит засветить светодиод и стоп программа. если нет разбираемся почему мк не "видит ответа". если есть переносим точку прохода дальше по программе до самого конца, и ищем участок, после которого все идет не так как должно.

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

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


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

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

например, даем старт, потом ждем ответ, если ответ приходит засветить светодиод и стоп программа. если нет разбираемся почему мк не "видит ответа". если есть переносим точку прохода дальше по программе до самого конца, и ищем участок, после которого все идет не так как должно.

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

 

Тайминги скорее всего и плывут или не те. Оссцилограф есть, но он весь обмен, например поиск всех датчиков, записать от начала и до конца не может, т.к. не расчитан на это. Тогда уже выводить на не светодиод, а собирать в буфер и потом выдать в usart.

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


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

на светодиод это образно. Я бы поступил так: отключил все датчики и проверил с одним, если не работает подключил бы напрямую к контроллеру. Если напрямую работает, а удаленно нет. Значит проблема с линией, надо увеличивать тайминги, и таким образом понижать скорость. Как правило "валит фронты" длинная линия, вернее ее емкость. Из практики лечится только понижением скорости. Я в свое время намучился с этой проблемой. Это при условии что нет помех, по этому кабелю больше ничего не подключено?? Если да - отключить все, даже безобидный удаленный светодиод. причем отключать все контакты.

 

Если даже напрямую не работает тут уже поэтапно методом "светодиода"))).

 

P.S. Только сейчас заметил что в линию подается отдельно 5В и 12В, я так понимаю для питания еще чего-то? Тоже отключите, импульсный блок питания дает пульсации, и чем больше ток тем больше наводки.

Изменено пользователем andrey videoplus

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


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

на светодиод это образно. Я бы поступил так: отключил все датчики и проверил с одним, если не работает подключил бы напрямую к контроллеру. Если напрямую работает, а удаленно нет. Значит проблема с линией, надо увеличивать тайминги, и таким образом понижать скорость. Как правило "валит фронты" длинная линия, вернее ее емкость. Из практики лечится только понижением скорости. Я в свое время намучился с этой проблемой. Это при условии что нет помех, по этому кабелю больше ничего не подключено?? Если да - отключить все, даже безобидный удаленный светодиод. причем отключать все контакты.

 

Если даже напрямую не работает тут уже поэтапно методом "светодиода"))).

 

Попробую с новой биллиотекой по принципу как написали. На макетке пока все работает.

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


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

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

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

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

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

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

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

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

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

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