Trashy_2 1 Понедельник в 17:25 Опубликовано Понедельник в 17:25 · Жалоба MASTER и SLAVE питаются от 3.3 вольта, но от разных источников и один источник(для SLAVE) управляется MASTERом(ON/OFF). Конфликт в следующем: Если подтяжки к питанию мастера и Мастер вырубает питание ведомому, то - через подтяжки от мастера натекает некоторое количество энергии в ведомого. А это потери энергии и не полный сброс ведомого. Если подтяжки к питанию ведомого и Мастер вырубает питание ведомому, то шина Мастера становится в неопределённом состоянии. Как выкрутиться? Ставить доп-микрухи изолирующие? Какие? Городить на диодах/транзисторах? А если ведомых несколько? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
x893 55 Понедельник в 18:57 Опубликовано Понедельник в 18:57 · Жалоба Выключайте контроллер перед выключением питанием и включайте после подачи питания. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Точка Опоры 37 Понедельник в 19:39 Опубликовано Понедельник в 19:39 (изменено) · Жалоба Ключ в "земляном" выводе ведомого? При размыкании ключа утечкам будет некуда течь. При повторном замыкании - на SDA и SCL сразу будут правильные уровни (пауза). Подтяжки - на питании ведущего. Изменено Понедельник в 19:40 пользователем Точка Опоры Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlanDrakes 1 Вторник в 04:18 Опубликовано Вторник в 04:18 · Жалоба Предполоагается, что подтяжки на шине на стороне ведомого и при отсутствии питания на нём, шина будет в состоянии 0|0 Перед выключением питания ведомого: 1. Дождаться окончания передачи на шине I2C 2. Отключить блок I2C от пинов (отключить альтернативную функцию на обычный вход) (опционально - отключить сам блок I2C) 3. Обесточить ведомого. При включении: 1. Подать на ведомого питание. 2. Дождаться на пинах GPIO состояния 1|1 (питание появилось) 3. Подключить блок I2C к пинам (альтентативная функция) 4. Минимум пару раз отправить адрес ведомого на запись, проверить, есть ли отклик. Если есть - можно работать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 136 Вторник в 06:09 Опубликовано Вторник в 06:09 · Жалоба Я так понял, что на этой шине I2C висит несколько разных ведомых устройств и задача состоит в том, чтобы полностью обесточить одно из них, не нарушая работу с остальными. В этом случае физику не обманешь - либо какой-то двунаправленный буфер с отключением перед отводом на это устройство, либо коммутатор (внешний или внутренний, если ведущий умеет выводить этот I2C на разные ноги). И подтяжка должна быть на стороне ведущего, ибо он на шине есть всегда. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 179 Вторник в 06:51 Опубликовано Вторник в 06:51 · Жалоба 42 минуты назад, Сергей Борщ сказал: Я так понял, что на этой шине I2C висит несколько разных ведомых устройств и задача состоит в том, чтобы полностью обесточить одно из них, не нарушая работу с остальными. В этом случае физику не обманешь - либо какой-то двунаправленный буфер с отключением перед отводом на это устройство, либо коммутатор (внешний или внутренний, если ведущий умеет выводить этот I2C на разные ноги). И подтяжка должна быть на стороне ведущего, ибо он на шине есть всегда. Сложнее, если мастеров несколько, и каждому можно отключить питание. Я в таких случаях устанавливаю управляемую подтяжку от независимого дежурного питания. Но ТС спасет изолятор, раз потребление важно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 236 Вторник в 08:58 Опубликовано Вторник в 08:58 · Жалоба 13 часов назад, Точка Опоры сказал: Ключ в "земляном" выводе ведомого? При размыкании ключа утечкам будет некуда течь. При повторном замыкании - на SDA и SCL сразу будут правильные уровни (пауза). Подтяжки - на питании ведущего. Т.е. - предлагаете вместо паразитной запитки ведомого микроскопическими токами через подтяжки, запитать его полноценным паразитным током с открытых нижних ключей SCL/SDA мастера (и других ведомых)? Т.е. - не только ведомого паразитно запитать, но ещё и завалить обмен с другими ведомыми? В случае редких транзакций. "Отличное" решение! Для корректного отключения ведомого в случае ТС, можно использовать: либо аналоговые коммутаторы; либо гальванические изоляторы (как уже предлагалось выше); либо даже есть спец.микросхемы для этого (не помню конкретных наименований). Ну или (эконом-вариант): Не выключать ведомого, а уводить его в сон. По команде мастера например. Если такое возможно по условиям всей системы. С предварительным отключением ведомым своих SCL/SDA и прочей ненужной требухи. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Точка Опоры 37 Вторник в 09:10 Опубликовано Вторник в 09:10 · Жалоба ТС пишет, что есть один ведущий и один ведомый (физически отключаемый). Так-что - вполне реальная схема для соединения точка-точка. Для, разветвлённой сети - не подойдёт. Спасибо за уточнение. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Plain 212 Вторник в 11:04 Опубликовано Вторник в 11:04 · Жалоба 17 часов назад, Trashy_2 сказал: Городить на диодах/транзисторах? Да, пара транзисторов, которая вообще-то должна была быть встроенной. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
megajohn 7 Вторник в 11:30 Опубликовано Вторник в 11:30 · Жалоба 2 часа назад, jcxz сказал: либо даже есть спец.микросхемы для этого (не помню конкретных наименований TCA9517, вроде оно tca9517.pdf Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 179 Вторник в 14:24 Опубликовано Вторник в 14:24 · Жалоба 3 часа назад, Plain сказал: Да, пара транзисторов, которая вообще-то должна была быть встроенной. Вспомнилось, как запитывал I2C-шный датчик температуры через крохотные MOSFET-ы. Только вот не обратил внимания, что ток потребления в рабочем режиме у датчика какие-то микроамперы, поэтому токов утечки хватало для какой-никакой работы, транзисторы были лишними деталями, как оказалось. ИМХО, то же самое будет с аналоговыми коммутаторами. По мне, так правильно гальванический изолятор поставить, тот наверняка работает согласно закону природы. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Trashy_2 1 7 часов назад Опубликовано 7 часов назад · Жалоба Спасибо, перевариваю. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться