Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: ADF4118
Форум разработчиков электроники ELECTRONIX.ru > Аналоговая и цифровая техника, прикладная электроника > Вопросы аналоговой техники
ivainc1789
Имееется девайс:
1. Батарейный прибор, состоящий из нескольких модулей.
2. Каждый модуль имеет возможность отключения (микропроцессором).
3. Все модули сидят на шине I2C, шина подтянута к 5 вольт через резисторы 4к7.
4. В двух модулях применена ADF4118. Выводы Clock и Data соединены соответственно с SCL и SDA.

Проблема: если отключается питание модуля на ADF4118 шина подсаживается к GND до уровня 0.8 вольт, тем самым делая невозможным обмен данными между включенными модулями. При включенном питании на ADF4118 все нормально.

К сожалению, для меня такой факт оказался совершенно неожиданным при изготовлении прототипа и плата была разведена до осознания проблемы... Прибор батарейный и держать модульна ADF включенным только "ради норм работы шины" для других модулей естественно недопустимо. Вот думаю, как разрулить?
sensor_ua
Есть аппликейшн по согласованию 3.3 в 5В шины. Оно же спокойненько поможет при двух одинаковых питаниях и при этом когда одно выключается.
http://electronix.ru/forum/index.php?showtopic=24849#
Смотрите, чтобы body-диод анодом был установлен к отключаемой части
Alexandr
Прошу уточнить - Вы готовы вносить изменения в конструкцию или топология платы утверждена и теперь только остается заниматься навесным монтажом? В первом случае достаточно установить буфер, во втором микросхему придется подключать к шине через ключ на 2-х транзисторах.
ivainc1789
Цитата(Alexandr @ Sep 4 2007, 14:43) *
Прошу уточнить - Вы готовы вносить изменения в конструкцию или топология платы утверждена и теперь только остается заниматься навесным монтажом? В первом случае достаточно установить буфер, во втором микросхему придется подключать к шине через ключ на 2-х транзисторах.

Второй случай... Плата уже готова, долго думал как применить навес в существующей конструкции... Выходов было несколько, но выбрал пока самый радикальный: синтезаторы были подключены через свободные выходы HC595, который также сидел на шине. Решение конечно некрасивое, время программирования резко возрастает, но по-другому пока никак. Мне всегда казалось, что входы CLOCK и DATA синтезаторов достаточно высокоомны, чтобы быть подключенными к I2C. Интересно, как с этим у LMX23XX?
Сергей Борщ
Цитата(ivainc1789 @ Sep 5 2007, 13:00) *
Мне всегда казалось, что входы CLOCK и DATA синтезаторов достаточно высокоомны, чтобы быть подключенными к I2C. Интересно, как с этим у LMX23XX?
Высокоомность тут абсолютно не при чем. Все упирается во встроенные диоды от входов к питанию, которые защищают от тиристорного защелкивания. Вы можете посмотреть в любом даташите максимально допустимое напряжение на входе - если диоды есть, то оно обычно нормируется как Vdd+0.3в (или Vdd+0.6в). И выше вы не прыгните никак.
ivainc1789
Цитата(Сергей Борщ @ Sep 5 2007, 15:22) *
Высокоомность тут абсолютно не при чем. Все упирается во встроенные диоды от входов к питанию, которые защищают от тиристорного защелкивания. Вы можете посмотреть в любом даташите максимально допустимое напряжение на входе - если диоды есть, то оно обычно нормируется как Vdd+0.3в (или Vdd+0.6в). И выше вы не прыгните никак.

Да, действительно... Теперь это очевидно. И все же на будущее, если есть необходимость подклбючения пинов CLOCK и DATA скажем ТРЕХ PLL к I2C то как бы вы это организовали? ИМХО, придется каждую развязывать, огород городить...
rloc
Цитата(ivainc1789 @ Sep 6 2007, 13:25) *
Да, действительно... Теперь это очевидно. И все же на будущее, если есть необходимость подклбючения пинов CLOCK и DATA скажем ТРЕХ PLL к I2C то как бы вы это организовали? ИМХО, придется каждую развязывать, огород городить...


А что мешает последовательно резисторы поставить >1К на CLOCK, DATA, да и на LE на каждую микросхему в отдельности? Если не ошибаюсь они все на вход работают.
Alexandr
Цитата(rloc @ Sep 6 2007, 20:33) *
А что мешает последовательно резисторы поставить >1К на CLOCK, DATA, да и на LE на каждую микросхему в отдельности? Если не ошибаюсь они все на вход работают.

Т.к. Data действительно только на вход работает, то можно поставить сопротивление побольше - 47к допустим. А можно попробовать рвать не только питание, но и землю. Подключать через ключи. Но вообще-то это серьезная недоработка производителя.
ivainc1789
Цитата(rloc @ Sep 6 2007, 20:33) *
А что мешает последовательно резисторы поставить >1К на CLOCK, DATA, да и на LE на каждую микросхему в отдельности? Если не ошибаюсь они все на вход работают.

Так посчитайте исходя из моих постов выше - шина сажается до 0.8 вольт при пуллапах 4.7 килоом на шине. Тут надоставить резюки до 6 кОм, чтобы не сажать шину... А если несколько таких ADF на шине??? Резисторы придется еще увеличить!!! ИМХО, все это плохо для помехоустойчивости, хотя защелочный вывод все равно отдельно подключается...
Alexandr
Цитата(ivainc1789 @ Sep 8 2007, 03:05) *
Так посчитайте исходя из моих постов выше - шина сажается до 0.8 вольт при пуллапах 4.7 килоом на шине. Тут надоставить резюки до 6 кОм, чтобы не сажать шину... А если несколько таких ADF на шине??? Резисторы придется еще увеличить!!!

Ничего не понял. Прошу объяснить откуда взялась цифра 6к. И почему ее нельзя увеличить?
rloc
Цитата(ivainc1789 @ Sep 8 2007, 03:05) *
Так посчитайте исходя из моих постов выше - шина сажается до 0.8 вольт при пуллапах 4.7 килоом на шине. Тут надоставить резюки до 6 кОм, чтобы не сажать шину... А если несколько таких ADF на шине??? Резисторы придется еще увеличить!!! ИМХО, все это плохо для помехоустойчивости, хотя защелочный вывод все равно отдельно подключается...

Согласен с предыдущим автором, не понятно почему "до", скорее "от". На помехоустойчивость это никак не повлияет, если резисторы ставить рядом со входами ADF и можно брать достаточно большие значения, главное чтобы они не сильно заваливали фронты сигналов вместе со входной емкостью. На "защелочный" вход тоже желательно резистор повесить, иначе через сигнал управления и входные диоды будет подаваться питание на отключенную микросхему.
Сергей Борщ
Цитата(ivainc1789 @ Sep 6 2007, 12:25) *
подклбючения пинов CLOCK и DATA скажем ТРЕХ PLL к I2C то как бы вы это организовали?
Буфер с тремя состояниями на все управляющие сигналы. На его вход разрешения выхода подать питание отключаемых микросхем. Если шина двунаправленная, то в качестве буфера использовал бы аналоговый ключ 74HC405x или 74HC4066. Во избежание утечек выходы буфера с отключаемой стороны притянул бы к земле резисторами ~100К.
ivainc1789
Проблема-то оказалось в том, что модуль отключается/включается с выхода HC595 !!! Поэтому, если вывод питания соед с землей в откл состоянии ДЕЙСТВИТЕЛЬНО открываются диоды к питанию на входах CLOCK и DATA.

Поэтому ИМХО наиболее очевидное решение - просто сделать ПОЛНОЦЕННЫЙ КЛЮЧ по питанию, чтобы РАЗРЫВАЛ цепь питания при отключении модуля.

Хотя теперь сильно возрастает емкость/утечки шины - ведь в отключенном модуле через диоды входов оказывается подключен блокировочный кондер на выводах питания ADF и мы продолжим его "питать" через шину! Может спасет режим пониж потр ADF, но...

Оказалось все серьезно... cranky.gif Пожалуй, ставить буферы действительно необходимо....
Сергей Борщ
Цитата(ivainc1789 @ Sep 11 2007, 11:37) *
Поэтому ИМХО наиболее очевидное решение - просто сделать ПОЛНОЦЕННЫЙ КЛЮЧ по питанию, чтобы РАЗРЫВАЛ цепь питания при отключении модуля.
Достаточно просто рвать CLOCK и DATA. sensor_ua предлагал вам простое решение - по одному полевику на каждую линию.
Alexandr
Цитата(ivainc1789 @ Sep 11 2007, 12:37) *
Проблема-то оказалось в том, что модуль отключается/включается с выхода HC595 !!!

Вот она ключевая фраза. Теперь все понятно. Оказывается - это недосмотр при проектировании и производитель микросхемы здесь не виноват. Ну чтож, советы по решению проблемы даны, тему закрываю.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.