Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Согласование логических уровней
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > Схемотехника
electronics
Помогите с расчетом преобразователя уровней на полевом транзисторе.

Нажмите для просмотра прикрепленного файла
Plain
Тут нечего считать. Просто выбрать транзистор по сопротивлению при 3,3 В на затворе, с запасом.

А резисторы здесь вообще лишние, или могут быть любыми, допустимыми для выходов по сумме нагрузки.
alexvu
Еще вопрос скорости, должна заряжаться емкость входа + провода через резистор (R1?) за нужное время.

+ не перепутайте вход и выход. (вход должен быть в точке 2, а выход 1).
electronics
Вот нашел:
Требование к характеристикам транзистора:
Тип: -----------------------------------N-канальный МОП-транзистор с режимом обогащения
Пороговое напряжение затвора:-----Vgs(th) не менее 0.1В, не более 2В
Сопротивление открытого канала:--Rds(on) не более 100 Ом при токе стока Id= 3 мА, Vgs= 2.5В
Входная емкость:----------------------Ciss не более 100 пФ при Vds= 1В, Vgs = 0В
Время переключения:-----------------ton toff не более 50 нс
Допустимый ток стока:---------------Id 10 мА или более
Выбрал транзистор BSS138.
Номиналы подтягивающих резисторов зависят от наихудших уровней напряжения питания и логических уровней, протяженности линии связи, а также от требований к времени нарастания/спада сигнала.
Выбрал резисторы номиналом 10кОм.
Цитата(alexvu @ Apr 27 2012, 00:00) *
не перепутайте вход и выход. (вход должен быть в точке 2, а выход 1).

Схема работает в обоих направлениях.
Первая ситуация – 2 передает сигнал, 1 принимает.
Когда на выходе 2 установлена логическая единица, транзистор закрыт, и вход 1 с помощью резистора R1 подтянут к плюсу питания. Когда на выходе 2 установлен логический ноль, транзистор открыт, и вход 1 посажен на ноль.
Вторая ситуация – 1 передает сигнал, 2 принимает.
Когда на выходе 1 установлена логическая единица, транзистор закрыт, и вход 2 с помощью резистора R2 подтянут к плюсу питания. Когда на выходе 1 установлен логический ноль, через встроенный в полевой транзистор диод начинает течь ток и потенциал истока становится меньше потенциала затвора. Транзистор открывается, и вход 2 оказывается посажен на ноль питания.
Рассмотренные ситуации свидетельствуют, что логические уровни передаются в обоих направлениях.
Вопрос только будет ли схема работать если я вместо 3,3В подам 5В???

Может кто-нибудь посоветует, другой способ согласования логических уровней???
Plain
SN74LVC1T45.
electronics
Цитата(Plain @ Apr 27 2012, 13:21) *

Работает в обоих направления???
Plain
Да. Направления переключаются ногой. Оба напряжения питания сторон могут быть произвольно любыми.

Если нужна в точности такая же схема, как первоначальная, т.е. с подтяжкой резисторами, то вот:

TXS0101.

Она же, но с нормальными каскадами:

TXB0101.
electronics
Цитата(Plain @ Apr 27 2012, 13:30) *
Если нужна в точности такая же схема, как первоначальная, т.е. с подтяжкой резисторами, то вот:

TXS0101.

Она же, но с нормальными каскадами:

TXB0101.

Мне не подходит (Питание порта А = 1,65 - 3,6В). Преобразователь делаю для программатора (напряжение питания программатора 5В), чтобы можно было программировать микроконтроллеры с напряжением питания от 3,3 до 5В.
ILYAUL
Цитата(electronics @ Apr 26 2012, 12:32) *
Помогите с расчетом преобразователя уровней на полевом транзисторе.

Нажмите для просмотра прикрепленного файла

Всё думалось , где-то я уже это видел - дежавю просто какое-то.Вот вспомнилось -THE I2C-BUS SPECIFICATION PHILIPS
НЕХ
подходящий транзистор - FDV301N
http://www.fairchildsemi.com/ds/FD%2FFDV301N.pdf
Plain
Цитата(electronics @ Apr 27 2012, 14:08) *
Мне не подходит (Питание порта А = 1,65 - 3,6В).

Нет, однозначно всё в точности подходит, порт "А" полностью соответствует Вашему порту "2" из первого сообщения темы.
electronics
Цитата(ILYAUL @ Apr 27 2012, 15:16) *
Всё думалось , где-то я уже это видел - дежавю просто какое-то.Вот вспомнилось -THE I2C-BUS SPECIFICATION PHILIPS

Да схема идеально подходит для применения в шинных системах 1-Wire, I2C. Подойдет ли она мне???

Цитата(Plain @ Apr 27 2012, 15:24) *
Нет, однозначно всё в точности подходит, порт "А" полностью соответствует Вашему порту "2" из первого сообщения темы.

Да некорректно нарисовал, напряжение порта 2 может быть от 3 до 5В.

Цитата(НЕХ @ Apr 27 2012, 15:18) *
подходящий транзистор - FDV301N
http://www.fairchildsemi.com/ds/FD%2FFDV301N.pdf

Спасибо.
ILYAUL
Цитата(electronics @ Apr 27 2012, 15:37) *
Да схема идеально подходит для применения в шинных системах 1-Wire, I2C. Подойдет ли она мне???
Спасибо.

THE I2C-BUS SPECIFICATION - это pdf файл я его где-то его выкладывал на форуме. Посмотрите поиском - там всё найдёте и расчёт резисторов
electronics
Цитата(ILYAUL @ Apr 27 2012, 16:04) *
THE I2C-BUS SPECIFICATION - это pdf файл я его где-то его выкладывал на форуме. Посмотрите поиском - там всё найдёте и расчёт резисторов

Спасибо, файл нашел.
DL36
Цитата(electronics @ Apr 27 2012, 14:37) *
Да схема идеально подходит для применения в шинных системах 1-Wire, I2C. Подойдет ли она мне???
Я применял эту схему в первом варианте клона ICD2 Пики программировались без особых проблем, с отладкой танцевать приходилось но проблема была не в согласовании.
Нажмите для просмотра прикрепленного файла
electronics
Цитата(DL36 @ Apr 29 2012, 17:56) *
Я применял эту схему в первом варианте клона ICD2 Пики программировались без особых проблем, с отладкой танцевать приходилось но проблема была не в согласовании.
Нажмите для просмотра прикрепленного файла

Значит и мне должна подойти. Как транзисторы рассчитывали???
XVR
У схемы есть 3 особенности:
1) Напряжение порта 1 должно быть не меньше, чем порта 2
2) Схема создает дополнительную нагрузку (по 0) на оба порта в виде параллельно соединенных R1 и R2
3) Переход обоих портов из 0 в 1 обеспечивается только pull-up резисторами (R1 и R2). Могут быть проблемы с фронтами при больших частотах
В остальном вполне нормальная схема
electronics
Цитата(XVR @ May 3 2012, 12:15) *
У схемы есть 3 особенности:
1) Напряжение порта 1 должно быть не меньше, чем порта 2
2) Схема создает дополнительную нагрузку (по 0) на оба порта в виде параллельно соединенных R1 и R2
3) Переход обоих портов из 0 в 1 обеспечивается только pull-up резисторами (R1 и R2). Могут быть проблемы с фронтами при больших частотах
В остальном вполне нормальная схема

Как думаете будет ли схема работать в программаторе, скорость 115200 бит/с.
XVR
Цитата(electronics @ May 3 2012, 17:50) *
Как думаете будет ли схема работать в программаторе, скорость 115200 бит/с.
Зависит от схемы програматора (и того, что програмируется)

electronics
Цитата(XVR @ May 3 2012, 18:44) *
Зависит от схемы програматора (и того, что програмируется)

програматор который от Petka (STK500), хочу программировать микроконтроллеры Avr с питанием от 3.3 до 5 вольт.
XVR
Цитата(electronics @ May 3 2012, 20:45) *
програматор который от Petka (STK500),
Это мне ничего не говорит, нужна схема
Цитата
хочу программировать микроконтроллеры Avr с питанием от 3.3 до 5 вольт.
Опять же, если брать 'голый' МК, то это одно дело, а если он (МК) будет программироваться в составе устройства, то нужно смотреть на схему устройства
SavageForest
Если еще не поздно, то посмотрите в сторону 74HC244. Он используется в некоторых JTAGах и их китайских клонах для АТМЕЛовских МК и в USB-Blaster для ПЛИС. Выход контроллера 3,3 или 5В, а выход МС задается U питания самой МС.
даже при питании в 6В (максимальное) входной порог лог.1 составляет 3,2 В, т.обр. можно хоть до 6В линию сделать при выходе МК в 3,3В.
Grishanenko
Подскажите, у TSX0104 будет существенное преимущество перед транзисторным вариантом из первого сообщения?
Требуется для согласования программатора (3.3В) и EMMC (1.8 В)
Vasily_
Цитата(Grishanenko @ Jan 29 2016, 10:58) *
Подскажите, у TSX0104 будет существенное преимущество перед транзисторным вариантом из первого сообщения?


Преимущество однозначно будет. Схема из первого сообщения очень медленная.
Grishanenko
Заказал TXS0104, дождался, развел и вытравил платку, отпаял EMMC, припаял ее проводками и... и ничего.
Пару минут стандартный картридер мигает светодиодом, потом в системе появляется новый диск, но при любых действиях с ним снова моргания пару минут и ошибка.
Долго гуглил, думал что неправильно подпаялся к EMMC, потом игрался с питанием, пробовал другой картридер, добавлял конденсаторы - ничего.
Решил подключить EMMC напрямую к ридеру, т.е. на вход TXS0104 - все аналогично. А вот когда отключил входы TXS0104 - флешка увиделась.
Подумал что криво развел земли. Начал резать дорожки, бросать пермычки, цеплять конденсаторы, но подключение любого из входов прерывает обмен с EMMC.
Отключил от TXS0104 землю - все равно она мешает. Отключил Vcca (низковольтную входную часть 1.8В) - EMMC снова определяется.
В итогде, получается такая картина: EMMC подключена к картридеру (3 сигнала - DAT Clk Cmd) напрямую, параллельно входы TXS0104. Ее выходы висят в воздухе. Низковольтное питание Vcca и вывод OE висят в воздухе. Подключаю картридер - сразу определяется, через flashnul делаю дамп - все отлично. Если подаю по-горячему питание на Vcca - обмен продолжается, отключаю Vcca, подаю питание на OE - процесс идет. Если подаю питание сразу на Vcca и OE - процесс останавливается.
Как это можно объяснить?
Сама TXS0104 живая. Если замыкаю вход или выход на землю, то на противоположном выходе или входе при этом тоже появляется ноль.
Onkel
Цитата(electronics @ Apr 27 2012, 14:37) *
Да схема идеально подходит для применения в шинных системах 1-Wire, I2C. Подойдет ли она мне???

Спасибо.

у меня на 400 кГц 5/3,3 В работает, в stk500 максимуму 465 кГц - наверное будет работать.
Но я как лентяй не сам паял, а купил готовые

Сергей
Grishanenko
Сам спросил - сам отвечу. Похоже что не хватает быстродействия.
Оказалось что TXS0104 и TXS0108 отличаются не только числом выводов.
Для 0104 заявлено:
Max Data Rates
24 Mbps (Push Pull)
2 Mbps (Open Drain)
Далее в таблицах фигурируют те же числа.
0108 быстрее:
Maximum Data Rates
110 Mbps (Push Pull)
1.2 Mbps (Open Drain)
Странно, но в таблицах значения 60 Mbps и 2 Mbps. Получается что как минимум в 2.5 раза быстрее, если не в 4.5.
Заказал 0108. Приедет - проверю.
Jenya7
74HC259.
убиваем двух кроликов. и расширитель порта и комутатор уровней.
LAS9891
Подключаю ПЛИС с уровнем выходов 3,3 В (LVTTL) к микросхеме с питанием 5 В. Подключить нужно 9 выводов. Выводы микросхемы указаны в таблице:




Какой преобразователь уровней возможно использовать? 74HC244? 74HC259? TXS0104? TXS0108 или какой то другой? Нужна ли мне характеристика for Open-Drain and Push-Pull Applications в выбранном преобразователе?
Aner
Загляните сюда:
http://we.easyelectronics.ru/Shematech/sog...-ustroystv.html
XVR
74HCT244 и 74HC244
74HCT244 подключается к 5В питания и выходам ПЛИС (7-9)
74HC244 к 3.3 питания и входам ПЛИС (1-6). Между входами 74HC244 и выходами 5В микросхемы нужны резисторы

Но тактовую частоту до 50MHz они не потянут.

TXS0108 тоже подойдет (наверное), но по тактовой впритык.

По времянкам подойдут 74AHC244 и 74AHCT244.

А возможно вообще никаких преобразователей не понядобится, смотря что стоит на 5В стороне и есть ли защитные диоды на стороне ПЛИС (резисторы на входы ПЛИС в этом случае понядобятся)

А вообще лучше смотреть нормальные level translators
Raven
Цитата(LAS9891 @ Oct 5 2016, 13:57) *
Подключаю ПЛИС с уровнем выходов 3,3 В (LVTTL) к микросхеме с питанием 5 В. Подключить нужно 9 выводов. Выводы микросхемы указаны в таблице:
...
Какой преобразователь уровней возможно использовать? 74HC244? 74HC259? TXS0104? TXS0108 или какой то другой? Нужна ли мне характеристика for Open-Drain and Push-Pull Applications в выбранном преобразователе?

Если из перечисленных, то TXS0108. Критичные по частоте сигналы обязательно должны иметь источником Push-pull выходной каскад (какую характеристику смотреть, думаю, понятно). В первую очередь я имею в виду CLK. SPI, наколько я помню, тоже дружит с push-pull выходами (это не I2C).

Update:
А вообще, для преобразования 3.3В - 5В и push-pull драйверов подойдет и филипсовская схема из первого поста в теме. Только подходящий MOSFET и pull-up'ы подобрать надо (да и не все они и нужны, кстати). Были такие микросхемки - PI3C3125, PI5C3384 и т.п. фирмы Pericom Semiconductor, так вот они оченно хорошо использовались для адаптации 3.3В PCI чипов для подключения в 5В слоты (когда такие еще в заводе были). А принцип их работы - очень близок к этой схеме.
LAS9891
Цитата(Aner @ Oct 5 2016, 14:18) *


Как раз после этой статьи я и заморочился выбором преобразователя уровней.
LAS9891
Цитата(XVR @ Oct 5 2016, 14:33) *
А вообще лучше смотреть нормальные level translators

Попробовал выбрать из нормальных. Выбирал по количеству согласуемых выводов:
http://www.nxp.com/products/discretes-and-...mp;tab=Products
Нашел 2 варианта:
74LVC(H)8T245
74LVC4245A

Микросхемы работают в двух направлениях, но перед выводом данных необходимо каждый раз выбирать режим работы преобразователя (в какую сторону идут данные определяет управляющий вывод), что мне кажется не очень удобным. Хотелось бы одной микросхемой убить двух зайцев за раз.
Я впервые столкнулся с выбором подобных преобразователей. Думал придется выбрать 2 преобразователя с меньшим количеством согласуемых выводов и один раз определить направление их работы, а линии на которые не хватит выводов согласовать делителем например.

Искал на 6 линий (бит) - оказалось только преобразователи HIGH-to-LOW level shifter (74HC4050/49), т.е. из 5 В в 3,3 В пошло бы, но мне надо наоборот.

Искал на 4 линий (бит) - не подходят по напряжению:

На частоты даже не смотрел. Не получается найти из нормальных. Может я ищу не правильно?
Raven
А чем вам PI5C3384 (10 линий) или TXS0108 (8 линий) не угодили? И то, и другое заказываемо. А в Москве наверняка можно и пару готовых оценочных модулей прямо со склада забрать, чтобы промоделировать ситуацию "в натуре". Что, кстати, настоятельно рекомендую (натурное моделирование).
Andrew Su
Добрый день.
IDTQS3L384PA
Опыт применения положительный.
XVR
Цитата(LAS9891 @ Oct 6 2016, 09:06) *
Нашел 2 варианта:
74LVC(H)8T245
74LVC4245A

Микросхемы работают в двух направлениях, но перед выводом данных необходимо каждый раз выбирать режим работы преобразователя (в какую сторону идут данные определяет управляющий вывод), что мне кажется не очень удобным.
Не надо выбирать каждый раз. Сажайте вывод Dir на землю и используйте их как транслятор в одну сторону. Вам таких понадобится 2 штуки.

Цитата
Хотелось бы одной микросхемой убить двух зайцев за раз.
Не получится. У вас 2 набора сигналов, в одну и другую сторону. Эти м/сх не умеют предавать некоторые сигналы в одну сторону, а некоторые в другую.

Цитата
Я впервые столкнулся с выбором подобных преобразователей. Думал придется выбрать 2 преобразователя с меньшим количеством согласуемых выводов и один раз определить направление их работы, а линии на которые не хватит выводов согласовать делителем например.
Угу

Цитата
Искал на 6 линий (бит) -
Искал на 4 линий (бит) -
Не получается найти из нормальных. Может я ищу не правильно?
Есть на 2 бита 74LVC(H)2T45

Или берите true двунаправленный - TXS0108 (возможно линию CLK придется чем нибудь более быстым согласовывать)

С IDTQS3L384PA и PI5C3384 будьте осторожнее - у них хорошо обстоит дело с перепадами 1->0 и очень плохо с 0->1 (т.к. в этом случае этот перепад на выходе должен обеспечить подтягивающий резистор, а на 50MHz с этим будут проблемы)
У TXS0108 есть встроенные схемы, которые сильно ускоряют процессы переходов 1<->0

LAS9891
Цитата(XVR @ Oct 7 2016, 13:09) *
Есть на 2 бита 74LVC(H)2T45
Или берите true двунаправленный - TXS0108 (возможно линию CLK придется чем нибудь более быстым согласовывать)


Решил остановиться на этих вариантах. TXS0108 будет согласовывать все входы микросхемы, а выходы будут согласовывать две 74LVC(H)2T45. Если вдруг TXS0108 не справится с линией CLK 50 МГц, попробую состыковать эту линию через 74LVC(H)2T45. Как думаете справится 74LVC(H)2T45?

Или еще вариант использовать ADG3308 и ADG3304.
AlexRayne
Цитата(Andrew Su @ Oct 6 2016, 13:59) *
Добрый день.
IDTQS3L384PA
Опыт применения положительный.

поиск выдает на них Product Diskontinue Notice
LAS9891
Цитата(LAS9891 @ Oct 11 2016, 14:01) *
Или еще вариант использовать ADG3308 и ADG3304.


Начитался страшилок про ADG3308 и ADG3304. Теперь боюсь их использовать. Хотя было бы удобно использовать TXS0108E на входы микросхемы и ADG3304 на выходы.
XVR
Цитата(LAS9891 @ Oct 11 2016, 14:01) *
Решил остановиться на этих вариантах. TXS0108 будет согласовывать все входы микросхемы, а выходы будут согласовывать две 74LVC(H)2T45. Если вдруг TXS0108 не справится с линией CLK 50 МГц, попробую состыковать эту линию через 74LVC(H)2T45. Как думаете справится 74LVC(H)2T45?
Справится. Ставьте 74LVC(H)2T45 (или вообще 74LVC(H)1T45 ) на CLK 50MHz, а на все остальные ноги одну TXS0108 (насколько я понял там частоты на порядок ниже)

Raven
Цитата(XVR @ Oct 7 2016, 13:09) *
С IDTQS3L384PA и PI5C3384 будьте осторожнее - у них хорошо обстоит дело с перепадами 1->0 и очень плохо с 0->1 (т.к. в этом случае этот перепад на выходе должен обеспечить подтягивающий резистор, а на 50MHz с этим будут проблемы)


Вопрос насчет PI5C3384. При каком преобразовании (какие напряжения по обе стороны?) за ними был замечен подобный грешок? Исходя из их принципа работы при преобразовании 3.3V <=> 5V ничего ухудшится не должно. Просто потому, что LVTTL и TTL имеют одинаковые уровни 1 и 0, а перепад от 0 до 3.3В MOSFET будет отрабатывать в линейном режиме, просто транслируя в домен 5В изменение напряжения в 3.3В-домене. На этапе от 3.3В вверх до 5В - там да, будет работать подтягивающий резистор, но эта часть нас уже не волнует, т.к. все важное для логики уже произошло.

Вот если дело касается преобразования с несовместимыми напрямую уровнями логики - тогда да, переходы 0->1 будут страдать.
XVR
Цитата(Raven @ Oct 12 2016, 19:00) *
Просто потому, что LVTTL и TTL имеют одинаковые уровни 1 и 0, а перепад от 0 до 3.3В MOSFET будет отрабатывать в линейном режиме, просто транслируя в домен 5В изменение напряжения в 3.3В-домене.
Не до 3.3В. У MOSFET'а есть ненулевой Vgt, так что он закроется раньше.

Цитата
Вот если дело касается преобразования с несовместимыми напрямую уровнями логики - тогда да, переходы 0->1 будут страдать.
ТС не уточнил какие уровни в 5В домене, увы sad.gif
LAS9891
Цитата(XVR @ Oct 12 2016, 14:12) *
Справится. Ставьте 74LVC(H)2T45 (или вообще 74LVC(H)1T45 ) на CLK 50MHz, а на все остальные ноги одну TXS0108 (насколько я понял там частоты на порядок ниже)


Ну хорошо. Попробую сделать на 74LVC(H)1T45 и TXS0108.
Raven
Цитата(XVR @ Oct 12 2016, 19:07) *
ТС не уточнил какие уровни в 5В домене, увы sad.gif

Сейчас еще раз взглянул на первый пост LAS9891. Из таблицы вроде как следует, что задано преобразование LVTTL <=> 5V CMOS (надо ли там реально именно CMOS - это еще вопрос, но ТЗ именно таково). Так что классическим преобразователем на MOSFET'е таки не обойтись (в качестве альтернативы 74LVC(H)1T45), и сделанный выбор (74LVC(H)1T45 и TXS0108) - остается в силе.
LAS9891
Цитата(XVR @ Oct 12 2016, 19:07) *
ТС не уточнил какие уровни в 5В домене, увы sad.gif


я и сам рад был бы узнать sad.gif.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.