Jump to content

    

Опрос и управление блоком кнопок по двум проводам

Есть некое устройство (в дальнейшем хост) к которому подключаются от 1-й до нескольких десятков "кнопок".

Кнопка - это небольшая коробочка с платой внутри.

На плате есть микро переключатель на замыкание, светодиод, пара диодов (скорее всего шоттки),

три керамических конденсатора(два вроде 100нФ (0603) и один побольше(1206)) , пара резисторов и ATTINY13A.

Подключаются все кнопки параллельно.

Длина кабеля от хоста к первой кнопке ~1 метр. Между кнопками 5...10 см.

Необходимость соблюдения полярности при подключении не выяснял, но

производитель использовал провода двух цветов (чёрный и белый) и все двайсы подключаются одинаково.

Хост определяет замкнут ли какой либо из переключателей и может включать светодиод на любой кнопке.

Получается что-то типа удалённой клавиатуры с подсветкой каждой из кнопок.

Помогите понять как это работает.

Share this post


Link to post
Share on other sites

Посмотрите осциллографом сигналы на этих 2х линиях. Скорее всего там обычный 1-Wire.

Share this post


Link to post
Share on other sites
1 hour ago, arhiv6 said:

Посмотрите осциллографом сигналы на этих 2х линиях. Скорее всего там обычный 1-Wire.

Да, похоже на 1-Wire. Раньше не сталкивался (

Но светодиод в каждой кнопке ... И гореть они могут все одновременно.

Посмотрел осциллографом на мастере при отключенных всех кнопках.

Прямоугольные импульсы. Размах 5В.

Длительность ноля всегда 25 мкс, единицы - от 25 до 100 мкс, но всегда кратна 25 мкс

Похоже не совсем обычный 1-Wire. 

 

Share this post


Link to post
Share on other sites

Какой максимальный ток могут потреблять устройства на шине 1-wire?

Share this post


Link to post
Share on other sites
53 минуты назад, zombi сказал:

Какой максимальный ток могут потреблять устройства на шине 1-wire?

google->"one wire standard"

может там не onewire, а частотой дудят в шину питания - нет ли в топологии печатки кнопки подозрительных конденсаторов с шины на обычный gpio тиньки?

Share this post


Link to post
Share on other sites
В 08.01.2019 в 14:59, zombi сказал:
В 08.01.2019 в 14:59, zombi сказал:

Помогите понять как это работает.

Способов может быть масса. Разрисовали бы схему - ответить было бы проще.

 

Share this post


Link to post
Share on other sites

Корявое оно какое-то (не в смысле как нарисовано, а схемотехника). Защиты от переполюсовки нет, требуется фазировка. Если диоды не Шоттки, то изюминкой на торте паразитная запитка...  Ну, тут может быть совершенно любой протокол, хоть бы и тот же 1-wire. Другой вариант - передавать сообщение о кнопке модуляцией тока потребления. По корявости решения - я бы предположил 1-wire.  Разрисовывать хост, цеплять анализатор (тот же saleae) на хост и абонентов, смотреть диаграммы...

Share this post


Link to post
Share on other sites
4 hours ago, zombi said:

Какой максимальный ток могут потреблять устройства на шине 1-wire?

судя по прямому подключению 6 вывода МК на шину - не особо много, выход больше 20мА не утянет поди.

соответственно и источник "питания" должен быть хилый чтобы хоть как-то от этих 20мА просаживаться.

 

Share this post


Link to post
Share on other sites
38 minutes ago, _pv said:

судя по прямому подключению 6 вывода МК на шину - не особо много, выход больше 20мА не утянет поди.

питание шины от генератора тока 20 мА ?

Share this post


Link to post
Share on other sites

Тогда "нескольким десяткам светодиодов" маловато будет. Тут надо хост разрисовывать и диаграммы снимать.

Share this post


Link to post
Share on other sites
4 minutes ago, rx3apf said:

Тогда "нескольким десяткам светодиодов" маловато будет. Тут надо хост разрисовывать и диаграммы снимать.

Я вот тоже всё думаю-гадаю как одновременно 20 светодиодов горят?

И резистор последовательно со светодиодом всего 68 Ом.

Скорее всего реализован режим ACTIVE PULLUP.

И мастер сообщает всем абонентам когда нужно/можно светодиоды включать.

Так и мерцает в импульсном режиме. И поскольку частота высокая то глазу кажется что просто горит постоянно )

 

Share this post


Link to post
Share on other sites
8 minutes ago, rx3apf said:

Тогда "нескольким десяткам светодиодов" маловато будет. Тут надо хост разрисовывать и диаграммы снимать.

Светодиоды могут "кушать" эти 20 мА последовательно по времени, допустим засветка в течение 20 мс после опроса хоста "мастера". При быстром опросе - мерцания не будет видно. 

Share this post


Link to post
Share on other sites

Так все равно яркость обратно пропорциональна скважности. Хоть все сразу параллельно, хоть мультиплексом - итог-то один. Ну да, сверхяркому синему, белому или особенно зеленому и 1 mA более чем, остальным маловато будет. Но если шестая нога работает в режиме замыкания шлейфа, тут все равно выше 20 mA не прыгнешь.

 

В пользу мультиплексирования говорит малый номинал токоограничивающего резистора.

Edited by rx3apf

Share this post


Link to post
Share on other sites
1 minute ago, rx3apf said:

тут все равно выше 20 mA не прыгнешь.

Почитал в гугле про всякие реализации 1-wire.

Как понял (может и не верно) мастер переводит линию в обычный режим (подтяжка к питанию 4.7кОм) и общается с устройствами.

Когда нужно сообщает устройствам (на уровне протокола а может ещё как...) о переводе линии в режим "ACTIVE PULLUP" (когда можно "кушать" сколько влезет)

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