Какой преобразователь напряжения сигнала выбрать? Разберёмся в этом вопросе и протестируем некоторые преобразователи в этой статье.
Введение
У всех у нас на слуху есть классический ряд напряжений: 3.3 Вольта, 5.0 Вольт, 12.0 Вольт. Можно долго рассуждать о том, откуда он появился, но факт в том, что для него в электронике нет никакого единого стандарта.
Поэтому, каждый производитель микросхем и чипов фантазирует по-своему. Чаще всего это некоторый диапазон, зависящий от ограничений чипа. А на платах напряжение выбирается из традиционных, в соображениях совместимости друг с другом.
Какие могут быть ограничения? Для примера взглянем на STM32F100RC. Там питание влияет на тактовую частоту и периферию. В данном случае Range — режимы внутреннего LDO-регулятора, который питает ядро ARM, от которых зависит ток потребления.
То же и у AVR, например у 328-меги. Но тут не диапазоны, а некоторая зависимость.
Если говорить про аналоговые датчики, то они обычно питаются широким диапазоном напряжений, вплоть до 15 Вольт. Цифровые датчики наоборот, имеют маленький диапазон, порядка 1.7-3.3 Вольт. Например:
Можно заметить, что кроме напряжения VDD есть и VDDIO. Соответственно основной домен, питающий все внутренние компоненты, и логический, который задаёт потенциал на интерфейсах чипа. Питание логики и микроконтроллера удобно объединить на этапе проектирования. А если нет такой возможности? Например, если это не удовлетворяет требованиям, а также в задачах прототипирования. Приходится применять преобразование логики.
Подбор
Чтобы выбрать подходящий преобразователь, нужно понять, что с чем согласовывать и нужно обратиться к даташитам на выбранные компоненты.
- Понижение напряжения
- Ничего не использовать, если host-напряжение ниже 5В, а пин target-a толерантен (устойчив) к 5 вольтам.
- Делитель напряжения, если напряжение выше, или пин не толерантен.
- Повышение напряжения
- Ничего, если по даташиту напряжение host-а входит в диапазон воспринимаемых target-ом. Обычно это 0.7 * VDD.
- Транзисторы, если частота довольно низкая.
- Двунаправленное применение
- Схема с двунаправленным мосфетом.
- Open Drain (I2C и т.д.)
- OD имеет свои особенности.
Во всех этих вариантах можно применить специализированные микросхемы.
Простейшие преобразователи
Делитель напряжения
Самый простой способ в мире, соединение двух резисторов. Чаще применяется в аналоговой электронике, чем в цифровой. Формула является следствием закона Ома.
\mathbf{Vin = Vout\,\frac{R_2}{R_1+R_2}}
Комплементарная пара
Схема содержит 2 транзистора одной модели, но разной структуры. Стандартное применение — управление более мощными транзисторами, управление полумостом. Такая топология используется в GPIO-пинах STM32.
Затворы/базы транзисторов могут быть соединены. Но если мосфет имеет достаточно большую ёмкость затвора, то применяют комплементарный ШИМ-сигнал, который формирует сам МК или драйвер. Этот сигнал должен иметь некоторую задержку, отмеченную на иллюстрации красным цветом, которая необходима для того, чтобы мосфеты успели переключиться, иначе через них побежит сквозной ток (VCC-GND), иными словами, кратковременное короткое замыкание, которое может вызвать как нагрев, просадку питания, так и сквозной пробой транзисторов.
Транзистор с подтяжкой
Является чистейшим воплощением режима open-drain.
Двунаправленный мосфет
Довольно популярная схема, в которой используются электрические свойства мосфета. Подключение является двунаправленным, то есть его можно использовать, например, для шины I2C.
Встречный двунаправленный мосфет
Прошлый вариант, дополненный встречным мосфетом. Обеспечивает дополнительную изоляцию выходов.
Оптопара
Чаще используется для гальванической развязки, чем для преобразования логики, но такое применение возможно.
Микросхемы преобразователей
Лидер среди производителей подобных микросхем — Texas Instruments. Существует “гайд к покупке” — документ, с помощью которого можно подобрать необходимый преобразователь. Согласно ему, существует такой ряд микросхем:
Список серий микросхем и их ключевых особенностей
- Управляемые вручную — направление по пину DIR
- SN74AXC — 0.65–3.6В, до 380 МГц, бывают двух-составные
- SN74AVC — 1.2–3.6В, до 500 МГц
- SN74LVC — 1.65–5.5В, до 420 МГц
- Автоматические двунаправленные — направление выбирается автоматически
- LSF — 0.8–5.5В, до 200 МГц, поддержка OD
- TXB — 0.9–5.5В, до 100 МГц
- TXS — 1.65–5.5В, до 110 МГц в PP, до 2 МГц в OD
- Однонаправленные
- 2N7001T — 1.65–3.6В, до 100 МГц
- SN74AVC — 0.9–3.6В, до 380 МГц
- SN74AUP1T — 2.3–3.6В, до 500 МГц, сверх-низкое потребление
- SN74LV1T — 1.8–5.5В, до 100 МГц
Режим Open Drain
OD — специальный режим работы GPIO-пинов. Рассмотрим его на примере I/O-порта STM32. (AN4899)
Нас интересует Output buffer. В обычном применении выход работает в режиме Push-Pull (тяни-толкай). Это значит, что 2 транзистора подключают выход либо к +, либо к – питания логики.
Open drain — дословно: открытый сток. В этом режиме отключается верхнее плечо выходного буфера (отмечено стрелочкой), остаётся только пустой сток нижнего транзистора. Теперь, для формирования положительного потенциала на ноге, нужно добавить подтягивающий резистор.
По схеме видно, что когда ключ открыт, через него потечёт ток на GND, на линии образуется потенциал 0 вольт. Когда ключ закрыт, на линии образуется потенциал подтяжки.
Этот режим всегда используется для шины I2C, да и для всех других полудуплексных шин.
Во-первых, согласуется логика устройств.
Во-вторых, так как оба устройства дёргают шину, если в режиме Push-Pull на них окажется разный потенциал, то оба порта выгорят.
Внимание!!!
Убедитесь, что компоненты способны выдержать более высокое напряжение, чем их питание. Для STM32 такие пины обозначены FT, для остальных устройств – обратитесь к даташитам.
Тестирование
Характеристики тестовой установки:
- Комплементарная пара AO3400A и AO3401A.
- Одиночный мосфет 2N7002. Схема “мосфет с подтяжкой”.
- Noname-модуль “JY-MCU”. Схема “двунаправленный мосфет” на BSS138.
- Noname-модуль “AC-LLC8-V2”. Схема “встречный двунаправленный мосфет” на BSS138.
- Оптопара 6N138M с транзисторным выходом.
- Преобразователь TXS0108E.
- Преобразователь TXB0104.
- Логический транслятор SN74LVC1T45DBVR.
- Генератор — отладочная плата Nucleo на STM32G474RE.
- Индикация и управление — дисплей BTT Mini 12864.
- Измеритель — осциллограф Rigol DS1054Z (до 50 МГц).
Микроконтроллер серии G4 был взят как самый быстрый (170 МГц) из всех доступных на руках. С его помощью будем генерировать прямоугольный сигнал частотой 1 КГц….10 МГц.
Для каждого способа измеряются 3 параметра:
- Частота
- Амплитуда (Vpp)
- Завал фронтов
Из них можно найти порог преобразования (Vin >= Vout), а также порог эффективности (Vin <= Vout*0.7).
Комплементарная пара
Осцилограмма
В моём варианте затворы транзисторов были объединены. Сигнал подавался одинаковый, без задержек (dead-time). Поэтому через мосфеты протекал паразитный сквозной ток, который не только вызывал нагрев, но и мог повлиять на результаты измерений.
f [КГц] | Vpp [В] | Завал фронтов |
---|---|---|
1 | 4,92 | НЕТ |
5 | 4,89 | НЕТ |
10 | 4,79 | НЕТ |
50 | 4,72 | Перед |
100 | 4,44 | Оба |
200 | 4,10 | Оба |
500 | 3,59 | Синус |
Эффективность | до 500 КГц |
Предел | до 600 КГц |
Мосфет с подтяжкой
Осцилограмма
Этот способ совершенно не оправдал надежд, потому как сразу показал результат ниже 4 вольт. Возможно дело в характеристиках мосфета, в величине подтяжки.
f [КГц] | Vpp [В] | Завал фронтов |
---|---|---|
1 | 3,43 | НЕТ |
10 | 3,39 | Перед |
40 | 3,34 | Перед |
100 | 3,21 | Оба |
300 | 2,93 | Оба |
Эффективность | до 10 КГц |
Предел | до 10 КГц |
Двунаправленный мосфет
Осцилограмма
Наиболее популярный в среде Arduino-сообщества на самом деле показал свою несостоятельность.
f [КГц] | Vpp [В] | Завал фронтов |
---|---|---|
1 | 4,73 | НЕТ |
10 | 4,70 | НЕТ |
50 | 4,67 | Перед |
100 | 4,54 | Перед |
200 | 4,19 | Перед |
500 | 3,64 | Перед |
800 | 3,31 | Перед |
Эффективность | до 500 КГц |
Предел | до 700 КГц |
Встречный двунаправленный мосфет
Осцилограмма
Выходит, что второй, встречный мосфет, накладывает существенные ограничения на выходной сигнал.
f [КГц] | Vpp [В] | Завал фронтов |
---|---|---|
1 | 4,99 | НЕТ |
10 | 4,98 | НЕТ |
80 | 4,65 | Перед |
160 | 4,67 | Перед |
250 | 3,57 | Перед |
500 | 3,19 | Перед |
Эффективность | до 250 КГц |
Предел | до 500 КГц |
Оптопара
Осцилограмма
В обычных ситуациях этот способ не применим. Очень уж на малой частоте спадает амплитуда. Тест проводился в режимах включения как прямого сигнала, так и инверсного. Использовать можно только в низкочастотном ШИМ (до 10 КГц)
f [КГц] | Vpp [В] | Завал фронтов |
---|---|---|
1 | 4,87 | НЕТ |
10 (инв) | 4,16 | Перед |
50 (инв) | 3,27 | Перед |
10 (пр) | 4,23 | Перед |
40 (пр) | 2,99 | Перед |
Эффективность | до 10 КГц |
Предел | до 10 КГц |
Микросхема серии TXS
Осцилограмма
Несмотря на заявленные 60 МГц, микросхема не смогла показать эффективность на частотах выше 2 МГц. А также только у этой микросхемы на малых частотах создавался некоторый “дребезг”, как по выходу, так и по входу. Его видно на второй осцилограмме. Тем не менее, микросхемы этой серии уже подходят для использования с адресными светодиодами (WS2812).
f [КГц] | Vpp [В] | Завал фронтов |
---|---|---|
1 | 4,97 | НЕТ |
30 | 4,94 | НЕТ |
80 | 4,92 | НЕТ |
250 | 4,83 | Перед |
500 | 4,70 | Перед |
800 | 4,33 | Оба |
1500 | 4,07 | Оба |
2000 | 3,92 | Оба |
4000 | 3,28 | Синус |
Эффективность | до 3 МГц |
Предел | до 4 МГц |
Микросхема серии TXB
Осцилограмма
В отличие от “собрата” серии TXS, микросхема показала худший результат, хоть и заявленная пропускная частота выше: 100 МГц. Данный способ уже не подходит для
f [КГц] | Vpp [В] | Завал фронтов |
---|---|---|
1 | 5,04 | НЕТ |
10 | 5,06 | НЕТ |
50 | 5,02 | Зад |
100 | 4,97 | Оба |
200 | 4,88 | Оба |
500 | 3,95 | Оба |
800 | 3,16 | Оба |
Эффективность | до 600 КГц |
Предел | до 700 КГц |
Микросхема серии 74LVC
Осцилограмма
Микросхема-фаворит теста. Максимально заявленная частота – 420 МГц. На всех исследуемых частотах показала превосходный результат. Дальнейшее снижение амплитуды обусловлено, вероятно, потерей формы оригинального сигнала.
f [КГц] | Vpp [В] | Завал фронтов |
---|---|---|
1 | 5,04 | НЕТ |
10 | 5,07 | НЕТ |
100 | 5,05 | НЕТ |
250 | 5,04 | НЕТ |
500 | 5,04 | НЕТ |
800 | 5,07 | НЕТ |
1000 | 5,07 | НЕТ |
2000 | 4,83 | НЕТ |
Эффективность | от 4 до 420 МГц |
Предел | от 4 до 420 МГц |
Вывод
В ходе тестирования выяснилось, что все те способы, тепло воспринимаемые в сообществе, не применимы в реальности. Заметно, что амплитуда сигнала от простых транзисторов снижается уже на 50 КГц, тогда как специализированные микросхемы способны поддерживать требуемые уровень и форму сигнала на частотах свыше 1 МГц.
Итог:
- GPIO
- Любой подходящий способ
- I2C и подобные
- Open Drain с подтяжкой до требуемого напряжения
- Двунаправленный мосфет (до 400 КГц)
- Микросхемы TI серии TXS
- SPI, USART и подобные
- Микросхемы TI серии TXB
- WS281x и др.
- Open Drain с подтяжкой до 5В
- Микросхемы TI серии TXS, SN74LVC
Ссылки
- http://we.easyelectronics.ru/Shematech/soglasovanie-logicheskih-urovney-5v-i-33v-ustroystv.html
- http://www.gaw.ru/html.cgi/txt/publ/powersuply/converter_levels.htm
- http://wiki.amperka.ru/схемотехника:делитель-напряжения
- https://www.onsemi.com/pdf/datasheet/bss138-d.pdf
- https://www.onsemi.com/pdf/datasheet/hcpl2731m-d.pdf
- https://www.ti.com/lit/ds/symlink/txs0108e.pdf
- https://www.ti.com/lit/ds/symlink/txb0104.pdf
- https://www.ti.com/lit/ds/symlink/sn74lvc1t45.pdf
- https://www.ti.com/lit/sg/slyy165a/slyy165a.pdf