реклама на сайте
подробности

 
 
 
Closed TopicStart new topic
> ADF4118, небольшая неожиданность
ivainc1789
сообщение Aug 24 2007, 22:16
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 175
Регистрация: 5-01-05
Пользователь №: 1 807



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

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

К сожалению, для меня такой факт оказался совершенно неожиданным при изготовлении прототипа и плата была разведена до осознания проблемы... Прибор батарейный и держать модульна ADF включенным только "ради норм работы шины" для других модулей естественно недопустимо. Вот думаю, как разрулить?
Go to the top of the page
 
+Quote Post
sensor_ua
сообщение Aug 25 2007, 07:27
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 266
Регистрация: 22-04-05
Из: Киев
Пользователь №: 4 387



Есть аппликейшн по согласованию 3.3 в 5В шины. Оно же спокойненько поможет при двух одинаковых питаниях и при этом когда одно выключается.
http://electronix.ru/forum/index.php?showtopic=24849#
Смотрите, чтобы body-диод анодом был установлен к отключаемой части


--------------------
aka Vit
Go to the top of the page
 
+Quote Post
Alexandr
сообщение Sep 4 2007, 10:43
Сообщение #3


Знающий
****

Группа: Модераторы
Сообщений: 804
Регистрация: 1-12-04
Пользователь №: 1 283



Прошу уточнить - Вы готовы вносить изменения в конструкцию или топология платы утверждена и теперь только остается заниматься навесным монтажом? В первом случае достаточно установить буфер, во втором микросхему придется подключать к шине через ключ на 2-х транзисторах.


--------------------
Иван Сусанин - первый полупроводник
Go to the top of the page
 
+Quote Post
ivainc1789
сообщение Sep 5 2007, 10:00
Сообщение #4


Профессионал
*****

Группа: Свой
Сообщений: 1 175
Регистрация: 5-01-05
Пользователь №: 1 807



Цитата(Alexandr @ Sep 4 2007, 14:43) *
Прошу уточнить - Вы готовы вносить изменения в конструкцию или топология платы утверждена и теперь только остается заниматься навесным монтажом? В первом случае достаточно установить буфер, во втором микросхему придется подключать к шине через ключ на 2-х транзисторах.

Второй случай... Плата уже готова, долго думал как применить навес в существующей конструкции... Выходов было несколько, но выбрал пока самый радикальный: синтезаторы были подключены через свободные выходы HC595, который также сидел на шине. Решение конечно некрасивое, время программирования резко возрастает, но по-другому пока никак. Мне всегда казалось, что входы CLOCK и DATA синтезаторов достаточно высокоомны, чтобы быть подключенными к I2C. Интересно, как с этим у LMX23XX?
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Sep 5 2007, 11:22
Сообщение #5


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



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


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
ivainc1789
сообщение Sep 6 2007, 09:25
Сообщение #6


Профессионал
*****

Группа: Свой
Сообщений: 1 175
Регистрация: 5-01-05
Пользователь №: 1 807



Цитата(Сергей Борщ @ Sep 5 2007, 15:22) *
Высокоомность тут абсолютно не при чем. Все упирается во встроенные диоды от входов к питанию, которые защищают от тиристорного защелкивания. Вы можете посмотреть в любом даташите максимально допустимое напряжение на входе - если диоды есть, то оно обычно нормируется как Vdd+0.3в (или Vdd+0.6в). И выше вы не прыгните никак.

Да, действительно... Теперь это очевидно. И все же на будущее, если есть необходимость подклбючения пинов CLOCK и DATA скажем ТРЕХ PLL к I2C то как бы вы это организовали? ИМХО, придется каждую развязывать, огород городить...
Go to the top of the page
 
+Quote Post
rloc
сообщение Sep 6 2007, 16:33
Сообщение #7


Узкополосный широкополосник
******

Группа: Свой
Сообщений: 2 316
Регистрация: 13-12-04
Из: Moscow
Пользователь №: 1 462



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


А что мешает последовательно резисторы поставить >1К на CLOCK, DATA, да и на LE на каждую микросхему в отдельности? Если не ошибаюсь они все на вход работают.
Go to the top of the page
 
+Quote Post
Alexandr
сообщение Sep 7 2007, 08:20
Сообщение #8


Знающий
****

Группа: Модераторы
Сообщений: 804
Регистрация: 1-12-04
Пользователь №: 1 283



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

Т.к. Data действительно только на вход работает, то можно поставить сопротивление побольше - 47к допустим. А можно попробовать рвать не только питание, но и землю. Подключать через ключи. Но вообще-то это серьезная недоработка производителя.


--------------------
Иван Сусанин - первый полупроводник
Go to the top of the page
 
+Quote Post
ivainc1789
сообщение Sep 7 2007, 23:05
Сообщение #9


Профессионал
*****

Группа: Свой
Сообщений: 1 175
Регистрация: 5-01-05
Пользователь №: 1 807



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

Так посчитайте исходя из моих постов выше - шина сажается до 0.8 вольт при пуллапах 4.7 килоом на шине. Тут надоставить резюки до 6 кОм, чтобы не сажать шину... А если несколько таких ADF на шине??? Резисторы придется еще увеличить!!! ИМХО, все это плохо для помехоустойчивости, хотя защелочный вывод все равно отдельно подключается...
Go to the top of the page
 
+Quote Post
Alexandr
сообщение Sep 10 2007, 07:29
Сообщение #10


Знающий
****

Группа: Модераторы
Сообщений: 804
Регистрация: 1-12-04
Пользователь №: 1 283



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

Ничего не понял. Прошу объяснить откуда взялась цифра 6к. И почему ее нельзя увеличить?


--------------------
Иван Сусанин - первый полупроводник
Go to the top of the page
 
+Quote Post
rloc
сообщение Sep 10 2007, 19:57
Сообщение #11


Узкополосный широкополосник
******

Группа: Свой
Сообщений: 2 316
Регистрация: 13-12-04
Из: Moscow
Пользователь №: 1 462



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

Согласен с предыдущим автором, не понятно почему "до", скорее "от". На помехоустойчивость это никак не повлияет, если резисторы ставить рядом со входами ADF и можно брать достаточно большие значения, главное чтобы они не сильно заваливали фронты сигналов вместе со входной емкостью. На "защелочный" вход тоже желательно резистор повесить, иначе через сигнал управления и входные диоды будет подаваться питание на отключенную микросхему.
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Sep 11 2007, 07:07
Сообщение #12


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



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


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
ivainc1789
сообщение Sep 11 2007, 08:37
Сообщение #13


Профессионал
*****

Группа: Свой
Сообщений: 1 175
Регистрация: 5-01-05
Пользователь №: 1 807



Проблема-то оказалось в том, что модуль отключается/включается с выхода HC595 !!! Поэтому, если вывод питания соед с землей в откл состоянии ДЕЙСТВИТЕЛЬНО открываются диоды к питанию на входах CLOCK и DATA.

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

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

Оказалось все серьезно... cranky.gif Пожалуй, ставить буферы действительно необходимо....
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Sep 11 2007, 09:22
Сообщение #14


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



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


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
Alexandr
сообщение Sep 12 2007, 07:24
Сообщение #15


Знающий
****

Группа: Модераторы
Сообщений: 804
Регистрация: 1-12-04
Пользователь №: 1 283



Цитата(ivainc1789 @ Sep 11 2007, 12:37) *
Проблема-то оказалось в том, что модуль отключается/включается с выхода HC595 !!!

Вот она ключевая фраза. Теперь все понятно. Оказывается - это недосмотр при проектировании и производитель микросхемы здесь не виноват. Ну чтож, советы по решению проблемы даны, тему закрываю.


--------------------
Иван Сусанин - первый полупроводник
Go to the top of the page
 
+Quote Post

Closed TopicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd June 2025 - 14:22
Рейтинг@Mail.ru


Страница сгенерированна за 0.01513 секунд с 7
ELECTRONIX ©2004-2016