Либо сравнением как здесь, либо внимательным изучением листинга дизассемблера.Reaper666 писал(а): как можно выловить этот глюк компилятора?
Всё по DS18(B/S)20.
-
uk8amk
- Поставщик валерьянки для Кота
- Сообщения: 2222
- Зарегистрирован: Вт ноя 27, 2007 11:32:06
- Откуда: Tashkent
Re: Всё по DS18(B/S)20.
- Реклама
- Gudd-Head
- Друг Кота
- Сообщения: 20092
- Зарегистрирован: Чт сен 18, 2008 12:27:21
- Откуда: Столица Мира Санкт-Петербург
Re: Всё по DS18(B/S)20.
Как вам цена $1.2 за DS18B20? 
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
- Аlex
- Модератор
- Сообщения: 4614
- Зарегистрирован: Чт мар 18, 2010 23:09:57
- Откуда: Планета Земля
- Контактная информация:
Re: Всё по DS18(B/S)20.
Нормальная цена 
- Аlex
- Модератор
- Сообщения: 4614
- Зарегистрирован: Чт мар 18, 2010 23:09:57
- Откуда: Планета Земля
- Контактная информация:
Re: Всё по DS18(B/S)20.
Я бы тоже десяточек взял. Но с китайцами не работал никогда 
- Реклама
- ibiza11
- Поставщик валерьянки для Кота
- Сообщения: 1900
- Зарегистрирован: Сб фев 21, 2009 13:11:40
- Откуда: Москва
Re: Всё по DS18(B/S)20.
Значит пора начинать) Если есть карточка VISA или MASTER CARD, то это не составит труда.
Рекомендую сначала зарегистрироваться на PayPal. (только сначала прочитайте как ПРАВИЛЬНО это сделать. В интернете есть статьи на эту тему.)
Я сам долго не мог решиться на покупки через интернет, но все же созрел - результатами я более чем доволен)
Рекомендую сначала зарегистрироваться на PayPal. (только сначала прочитайте как ПРАВИЛЬНО это сделать. В интернете есть статьи на эту тему.)
Я сам долго не мог решиться на покупки через интернет, но все же созрел - результатами я более чем доволен)
Ставим плюсы: )
- Аlex
- Модератор
- Сообщения: 4614
- Зарегистрирован: Чт мар 18, 2010 23:09:57
- Откуда: Планета Земля
- Контактная информация:
Re: Всё по DS18(B/S)20.
Обязательно попробую. Спасибо.
- Gerik_PP
- Открыл глаза
- Сообщения: 59
- Зарегистрирован: Вт ноя 07, 2006 14:14:16
- Откуда: пос. Правдинский
- Контактная информация:
Re: Всё по DS18(B/S)20.
Всем привет! Вопрос по DS18B20...
1. Подцепил DS к контроллеру (подтягивающий = 4,7к)
2. Раз в 5 сек. конвертирую температуру и читаю 9 байт байт памяти с последующей проверкой CRC
3. Обращение к этому конкретному датчику через MATCH ROM [55h]
4. На 5-ти метрах (витая пара) всё отлично работает.
Проблема: Выношу датчик на улицу, тупо цепляю его по витой паре длинной 100 метров, уменьшив при этом только подтягивающий до 1,5к. Проверка CRC проходит без ошибок, но значение температуры с каждым чтением (раз в 5 сек.) всегда отличается с разницей от 1-го до 15 градусов!!!!!
Мой вывод: Если CRC без ошибок, значит передача информации проходит корректно. Значит, DS18B20, при конвертации температуры (44h), по какой-то причине ошибочно определяет температуру, которую затем безошибочно передаёт контроллеру (BEh). Такое может быть?
Вопрос: Подскажите, пожалуйста, как можно решить эту проблему. Спасибо.
1. Подцепил DS к контроллеру (подтягивающий = 4,7к)
2. Раз в 5 сек. конвертирую температуру и читаю 9 байт байт памяти с последующей проверкой CRC
3. Обращение к этому конкретному датчику через MATCH ROM [55h]
4. На 5-ти метрах (витая пара) всё отлично работает.
Проблема: Выношу датчик на улицу, тупо цепляю его по витой паре длинной 100 метров, уменьшив при этом только подтягивающий до 1,5к. Проверка CRC проходит без ошибок, но значение температуры с каждым чтением (раз в 5 сек.) всегда отличается с разницей от 1-го до 15 градусов!!!!!
Мой вывод: Если CRC без ошибок, значит передача информации проходит корректно. Значит, DS18B20, при конвертации температуры (44h), по какой-то причине ошибочно определяет температуру, которую затем безошибочно передаёт контроллеру (BEh). Такое может быть?
Вопрос: Подскажите, пожалуйста, как можно решить эту проблему. Спасибо.
- Аlex
- Модератор
- Сообщения: 4614
- Зарегистрирован: Чт мар 18, 2010 23:09:57
- Откуда: Планета Земля
- Контактная информация:
Re: Всё по DS18(B/S)20.
Есть ещё один вариант, который Вы упустили - неправильный расчёт CRC. Его то-же стоит проверить...Если CRC без ошибок, значит передача информации проходит корректно. Значит, DS18B20, при конвертации температуры (44h), по какой-то причине ошибочно определяет температуру, которую затем безошибочно передаёт контроллеру (BEh).
Re: Всё по DS18(B/S)20.
100м это предел по витой паре для 1wire..... и еще активная подтяжка нужна, она у вас реализована?Gerik_PP писал(а):Выношу датчик на улицу, тупо цепляю его по витой паре длинной 100 метров, уменьшив при этом только подтягивающий до 1,5к.
Попробуй еще параллельно питанию у датчика поставь кондерчик, микрофарат на 100, может питания не хватает, просадка во время преобразования....
Я вообще, когда так далеко цепляю датчики, то подаю 12в по питанию, а рядом с датчиком ставлю 78l05
- Вложения
-
- 1wire.jpg
- (26.6 КБ) 888 скачиваний
- Gudd-Head
- Друг Кота
- Сообщения: 20092
- Зарегистрирован: Чт сен 18, 2008 12:27:21
- Откуда: Столица Мира Санкт-Петербург
Re: Всё по DS18(B/S)20.
Вот это уже интересно. Тоже с таким сталкивались. В какую сторону температура уходит от настоящей?Gerik_PP писал(а):цепляю его по витой паре длинной 100 метров, уменьшив при этом только подтягивающий до 1,5к. Проверка CRC проходит без ошибок, но значение температуры с каждым чтением (раз в 5 сек.) всегда отличается с разницей от 1-го до 15 градусов!!!!!
Скорее всего, это помехи, от которых датчик сходит с ума.
Где у вас проложены эти 100 м? Витая пара экранирована? Может, попробовать продёрнуть кабель через ферритовое кольцо у датчика?
Если дело было бы в активной подтяжке, то неправильно принимались бы биты (линия не успевала бы зарядиться до лог. "1"), и CRC вычислялся бы неправильно.shads писал(а):100м это предел по витой паре для 1wire..... и еще активная подтяжка нужна, она у вас реализована?
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Re: Всё по DS18(B/S)20.
А тут по вашему CRC будет вычислятся правильно?Gudd-Head писал(а):Скорее всего, это помехи, от которых датчик сходит с ума.
- Gudd-Head
- Друг Кота
- Сообщения: 20092
- Зарегистрирован: Чт сен 18, 2008 12:27:21
- Откуда: Столица Мира Санкт-Петербург
Re: Всё по DS18(B/S)20.
Если неправильно будет только конвертироваться темпертура (аналоговая часть датчика), то да. СRC правильно будет вычисляться с учётом неверной температуры.shads писал(а):А тут по вашему CRC будет вычислятся правильно?
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Re: Всё по DS18(B/S)20.
Просто вы писали о помехах...
Помехи возможны:
либо по линии данных, что неизбежно приведет к искажению сигнала и к неверной CRC
либо по питанию, тут я не знаю как будет вести себя датчик, но можно просто зашунтировать питание датчика кондером.
Кстати... витая пара уже сама по себе хорошо защищена от помех, даже не экранированная, так что помехи отпадают.
Но скорее всего на входе длинной линии, питание подается 5в, и я на 100% уверен что через 100м там будет уже не 5в (именно во время преобразования) вот тут скорее всего и возможно нештатное поведение датчика.....
Помехи возможны:
либо по линии данных, что неизбежно приведет к искажению сигнала и к неверной CRC
либо по питанию, тут я не знаю как будет вести себя датчик, но можно просто зашунтировать питание датчика кондером.
Кстати... витая пара уже сама по себе хорошо защищена от помех, даже не экранированная, так что помехи отпадают.
Но скорее всего на входе длинной линии, питание подается 5в, и я на 100% уверен что через 100м там будет уже не 5в (именно во время преобразования) вот тут скорее всего и возможно нештатное поведение датчика.....
Последний раз редактировалось shads Чт фев 21, 2013 11:14:31, всего редактировалось 1 раз.
- Gudd-Head
- Друг Кота
- Сообщения: 20092
- Зарегистрирован: Чт сен 18, 2008 12:27:21
- Откуда: Столица Мира Санкт-Петербург
Re: Всё по DS18(B/S)20.
Если не хватает питания во время преобразования, датчик обычно в ресет сваливается и выдаёт +85°С.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
- Gerik_PP
- Открыл глаза
- Сообщения: 59
- Зарегистрирован: Вт ноя 07, 2006 14:14:16
- Откуда: пос. Правдинский
- Контактная информация:
Re: Всё по DS18(B/S)20.
Прыгает в разные стороны, при реальных -6, скачет от -15 до +5Gudd-Head писал(а):Вот это уже интересно. Тоже с таким сталкивались. В какую сторону температура уходит от настоящей?
Витая пара не экранирована. Примерно 30м проложены под потолком в подвальной части дома, 30 метров под землёй в пластиковой трубе и примерно метров 20 лишней длинны смотаны (временно) в кольцо на уличном столбе на котором в настоящий момент и закреплён датчикGudd-Head писал(а):Скорее всего, это помехи, от которых датчик сходит с ума.
Где у вас проложены эти 100 м? Витая пара экранирована?
Тоже начал думать что из-за "наведённых" помех в питании неправильно работает аналоговый генератор DS18B20 в момент определения температуры. И уже неправильно определённое значение датчик записывает себе в память (правильно расчитав CRC для этого значения). Попробую обеспечить качественные +5V. Для начала на дальнем конце поставлю 10uF электролит и 0,1uF керамику. Хочу ещё добавить два диода шоттки и два ферритовых фильтра - для большей помехоустойчивости. Схемку нарыл в инете:Gudd-Head писал(а):Может, попробовать продёрнуть кабель через ферритовое кольцо у датчика?

Если всё вышеперечисленное не поможет, то тоже так сделаю. Всем спасибо за участиеshads писал(а):Я вообще, когда так далеко цепляю датчики, то подаю 12в по питанию, а рядом с датчиком ставлю 78l05
- Gudd-Head
- Друг Кота
- Сообщения: 20092
- Зарегистрирован: Чт сен 18, 2008 12:27:21
- Откуда: Столица Мира Санкт-Петербург
Re: Всё по DS18(B/S)20.
Вы уж держите нас в курсе.
От 10 мкФ думаю будет мало пользы.
У вас там антенна прям. Думаю, есть смысл наоборот поставить 10...100...1000 пФ РЧ давить.
От 10 мкФ думаю будет мало пользы.
У вас там антенна прям. Думаю, есть смысл наоборот поставить 10...100...1000 пФ РЧ давить.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
- Gerik_PP
- Открыл глаза
- Сообщения: 59
- Зарегистрирован: Вт ноя 07, 2006 14:14:16
- Откуда: пос. Правдинский
- Контактная информация:
Re: Всё по DS18(B/S)20.
Да, пожалуй... Обязательно отпишу, что и как получилось...
- Gerik_PP
- Открыл глаза
- Сообщения: 59
- Зарегистрирован: Вт ноя 07, 2006 14:14:16
- Откуда: пос. Правдинский
- Контактная информация:
Re: Всё по DS18(B/S)20.
Так сколько поставить? 100пФ?Gudd-Head писал(а):У вас там антенна прям. Думаю, есть смысл наоборот поставить 10...100...1000 пФ РЧ давить.
- Gudd-Head
- Друг Кота
- Сообщения: 20092
- Зарегистрирован: Чт сен 18, 2008 12:27:21
- Откуда: Столица Мира Санкт-Петербург
Re: Всё по DS18(B/S)20.
Ставьте что есть. Если поставить все, хуже не будет.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]


