Сигнал через транзистор

Привет, нужно подключить несколько устройств на одну линию wire, но устройства имеют одинаковый адрес, появилась идея подключить их через двойные транзисторы например IRF7328TRPBF, будет ли через них проходить сигнал? питание дёргать не вариант, т.к. устройства должны работать постоянно, а если по очереди слать на них инфу - то это приемлемо, открываю один транзистор - пообщался, закрыл, открыл другой - пообщался… Или может есть другие варианты?


Вот такой костыль думаю сделать

транзисторы дёргать драйвером ws2811 - не в первой, и в наличии есть. Вопрос по проходимости сигнала сквозь транзистор: реально или нет. И есть ли альтернативное решение?

Пройдёт или нет не знаю, но в аналогичной ситуации взял софт i2c и повесил на разные ноги. Работает.

какую-то каракатицу ты придумал, имхо. Тебе нужен мультиплексор/демультиплексор, что-то типа 74HC4053PW

первый тест провалился, прошил две ардуинки примерами из wire: Wire Master Writer и Wire Slave Receiver, напрямую естественно работает, как только хоть один порт SDA или SCL пускаю через транзистор программа останавливается, а то и контроллер подвисает.

Спасибо, пошёл гуглить девайс

стоп, я затупил и не увидел что у тебя там I2C шина. для нее есть спец шняга, на 8 каналов: TCA9548A

2 лайка

Учитывая что SDA SDL линии с открытым коллектором и требуют подтяжки для работы, а отключенные от питания МС нужно проверить на отсутствие защитных диодов к линии +5 и если защитных диодов нет, то вполне работоспосоьной схема выглядит, особенно если ключи есть в наличии, а мультиплексора нет.

ага и еще транзистор инвертирует сигнал к тому же)

тут затупил, не учёл…

:slight_smile:
Не ждаватся!!! Я так делал :


и так делал:

…хотя и с …плексаром тоже делал.

На линии должны быть высокие уровни в пассивном состоянии. Посмотри может где то надо резисторов добавить. И странно про какие транзисторы ты говоришь в линии SDL SDA? Их просто парраллельно пустить надо а у МС нужных питание на время включать.

В том то и проблема, питание МС не вариант вырубать. Он свою работу должен делать, но иногда получать новые инструкции от Мастера

Я имел ввиду так запустилось


а так нет

ну ради эксперимента транз можно заюзать как эмиттерный повторитель, но это тупизна и фронты завалены будут, и, возможно, выше 100КГц не заработает, надо смотреть граничную частоту в даташите, мне лень, сорян.

Тогда я тебя не правильно понял. Вариант с софтовыми i2c остаётся если за бесплатно.

А вот так уже работает… продолжаем эксперименты…

Сейчас найду ещё один контроллер и попробую одним поочерёдно прочитать два других

Что за железка то ?
Может стоит даташит поизучать, вдруг там написано как поменять “один адрес” ?