Декодирование сигнала

Поклонники продукции Microchip Technology Inc тусуются тут.
Ответить
Родился
Сообщения: 6
Зарегистрирован: Вс фев 15, 2015 11:34:55

Сообщение ben_ln »

Котам привет!

Возник интересный вопрос. Имеется контроллер, опрашивающий датчики по двухпроводной линии. Физическая реализация интерфейса нестандартная, длинна более км. Датчики, в данном случае, температуры и влажности, адресные, имеют 2-х байтный ID. Есть необходимость понять протокол обмена. Контроллер через PIC18F14K50 посылает запрос датчику, ждёт ответа. На компе (через преобразователь RS-485) на специальной программе видим ответ датчика, т.е. система работает. На пике вывод 12 формирует запрос (формирователь интерфейса пока не рассматриваем), на вывод 10 приходит эхо запроса и ответ датчика(ов). Это логично, эти выводы как раз EUSART. Скрин с лог. анализатора, вывод 10:
adr_0.jpeg
(45.96 КБ) 20 скачиваний
Здесь опрос датчика с адресом "0" и его ответ. Вроде чётко вначале виден адрес.
Здесь другой датчик, адрес "2":
adr_2.jpeg
(42 КБ) 9 скачиваний
Адрес "4":
adr_4.jpeg
(41.62 КБ) 6 скачиваний
Видно, что "нулевой" датчик отвечает контроллеру тот же код, а вот "второй" и "четвёртый" уже по другому.
Реакция датчика на нажатие кнопки присутствия:
adr_0_knopka.jpeg
(41.1 КБ) 10 скачиваний
И сам ответ со значением температуры и влажности:
adr_0_opros.jpeg
(41.41 КБ) 8 скачиваний
А теперь вопросы... Код похож на Мачестер? Или что-то другое? Как расшифровать?
Буду благодарен за советы, если что надо замерить, выложу.
Реклама
Мучитель микросхем
Сообщения: 453
Зарегистрирован: Ср сен 02, 2015 07:47:20

Сообщение HardWareMan »

1 wire?
Изображение
Вложения
1-Wire-Protocol.png
(27.07 КБ) 91 скачивание
Реклама
Родился
Сообщения: 6
Зарегистрирован: Вс фев 15, 2015 11:34:55

Сообщение ben_ln »

1 Wire тоже предполагал, благо 18b20 знаком хорошо! Но начиная с импульса Reset - 480-1000 мкс он отпадает.
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 164
Зарегистрирован: Чт ноя 26, 2015 23:22:35
Откуда: не с Уфы

Сообщение Родэрик »

если есть "необходимость понять протокол", то почему бы просто не почитать документы по этим датчикам ...
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Мучитель микросхем
Сообщения: 453
Зарегистрирован: Ср сен 02, 2015 07:47:20

Сообщение HardWareMan »

ben_ln писал(а): Вт авг 11, 2026 17:31:45 1 Wire тоже предполагал, благо 18b20 знаком хорошо! Но начиная с импульса Reset - 480-1000 мкс он отпадает.
1 wire физически работает на 1 линии да ещё и с фантомным питанием. Поэтому, ему требуются такие времянки. А у вас дифпара на RS485. Поэтому, времянки можно сократить.
ben_ln писал(а): Вт авг 11, 2026 00:16:22 Код похож на Мачестер?
Абсолютно не похож. У манчестера не могут формироваться импульсы скважностью 1/3, а у вас начальная посылка от старта практически вся такая. Похоже, вам придётся прислушаться к предыдущему оратору и покурить буквари на датчики.
Реклама
Родился
Сообщения: 6
Зарегистрирован: Вс фев 15, 2015 11:34:55

Сообщение ben_ln »

Родэрик писал(а): Вт авг 11, 2026 18:11:41 если есть "необходимость понять протокол", то почему бы просто не почитать документы по этим датчикам ...
Кто же будет расписывать свой протокол обмена?
Реклама
Друг Кота
Аватара пользователя
Сообщения: 15730
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

У всех официальных производителей протоколы для своих компонентов обязательно описаны. Или в даташитах непосредственно или в специальных апнотах/юзерс гвидах... (иначе их изделия никто покупать / использовать не будет :wink: )
Есть и отдельно созданные протоколы - их описание надо в общепринятых стандартах искать.
Кроме прочего может быть и "самодеятельность" производителя техники - то уже к производителю обращаться надо будет.
8)
Найдите наименование датчика и по его документации определите протокол (физический и логический уровни).
Как вариант "шаманского гадания" - DHT11 или DHT22/AM2302 (но у них "в чистом виде" нет понятия про "адрес").
:wink:
Родился
Сообщения: 6
Зарегистрирован: Вс фев 15, 2015 11:34:55

Сообщение ben_ln »

HardWareMan писал(а): Вт авг 11, 2026 19:52:43
1 wire физически работает на 1 линии да ещё и с фантомным питанием. Поэтому, ему требуются такие времянки. А у вас дифпара на RS485. Поэтому, времянки можно сократить.
Физически интерфейс реализован на рассыпухе и на 485-й не похож:
1.pdf
(22.78 КБ) 3 скачивания
Тут тоже фантомное питание.
HardWareMan писал(а): Вт авг 11, 2026 19:52:43 Абсолютно не похож. У манчестера не могут формироваться импульсы скважностью 1/3, а у вас начальная посылка от старта практически вся такая. Похоже, вам придётся прислушаться к предыдущему оратору и покурить буквари на датчики.
Про Манчестер я подумал на код после адреса. Очень странная кодировка, слишком много повторяющихся "нулей" и "единиц". Я в них не силён, может быть есть какой-нибудь стандартный способ зашифровать посылку? Или это всё же защита от помех?
Документации нет... Это весьма нестандартная заказная система.
Родился
Сообщения: 6
Зарегистрирован: Вс фев 15, 2015 11:34:55

Сообщение ben_ln »

BOB51 писал(а): Вт авг 11, 2026 20:41:06 У всех официальных производителей протоколы для своих компонентов обязательно описаны. Или в даташитах непосредственно или в специальных апнотах/юзерс гвидах... (иначе их изделия никто покупать / использовать не будет :wink: )
Есть и отдельно созданные протоколы - их описание надо в общепринятых стандартах искать.
Кроме прочего может быть и "самодеятельность" производителя техники - то уже к производителю обращаться надо будет.
8)
Найдите наименование датчика и по его документации определите протокол (физический и логический уровни).
Как вариант "шаманского гадания" - DHT11 или DHT22/AM2302 (но у них "в чистом виде" нет понятия про "адрес").
:wink:
Это не датчики в чистом виде, это отдельные устройства со своими сенсорами и МК. Их несколько видов, но интерфейс и протокол один. Производитель соорудил некоторую единичную, хотя и немаленькую партию. Документации нет и не будет. У меня оказалось некоторое количество этих датчиков и я хочу найти им применение.
Цель - считать температуру и влажность. Считать получилось, расшифровать пока нет...
Друг Кота
Аватара пользователя
Сообщения: 15730
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

Тогда только считывание и анализ программы в МК (или написать свою прожку под установленные датчики да транспортный протокол взамен имеющейся в устройстве).
8)
Родился
Сообщения: 6
Зарегистрирован: Вс фев 15, 2015 11:34:55

Сообщение ben_ln »

BOB51 писал(а): Вт авг 11, 2026 21:08:48 Тогда только считывание и анализ программы в МК (или написать свою прожку под установленные датчики да транспортный протокол взамен имеющейся в устройстве).
8)
Если бы биты защиты не стояли, я бы сюда не писал...
Под каждый вид датчика придётся писать свою прогу.
Ответить

Вернуться в «PIC»