Как стать автором
Обновить
2727.88
RUVDS.com
VDS/VPS-хостинг. Скидка 15% по коду HABR15

Всё про USB-C: введение для электронщиков

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров26K
Автор оригинала: Arya Voronova

Прошло уже почти пять лет, как во всевозможных устройствах начали появляться порты USB-C. Это стандарт, за рамки которого могут выходить многие производители и электронщики. Поначалу существовало много путаницы относительно того, что он в себе несёт, и всяческие отклонения со стороны производителей некоторых людей отталкивали. Однако теперь USB-C уже прочно вошёл в нашу жизнь, и я хочу показать вам, как именно этот стандарт используется, чего могут ожидать от него пользователи, а что он способен предложить электронщикам.

Прим. пер.: Это первая часть серии про USB-C, посвящённая всестороннему анализу этой технологии. Остальные доступны здесь:

  1. Введение для электронщиков < — Вы здесь
  2. Типы кабелей
  3. Механика разъёмов
  4. Переходники вне стандарта
  5. Резисторы и E-Marker
  6. Обеспечение питания
  7. Высокоскоростные интерфейсы
  8. Ноутбук Framework
  9. Паяльник Pinecil
  10. Грехи производителей
  11. Взаимодействие через низкоуровневый протокол PD
  12. Ответ через протокол PD

Современные устройства имеют ряд типичных потребностей – им необходим вход или выход для питания (иногда и то, и другое), зачастую USB 2 и возможность высокоскоростной передачи данных вроде видеовхода/выхода или USB 3. USB-C представляет собой интерфейс, нацеленный на реализацию всех этих потребностей. При этом вышеперечисленные возможности являются необязательными, что одновременно можно считать и плюсом, и минусом. Однако вы можете быстро научиться понимать, на что способно устройство, исходя из одного его внешнего вида. Ну а на случай сомнений я подскажу вам, как его можно проверить.

▍ Возможности коммуникации, конфигурация и подвохи


Как известно, штекер USB-C можно разворачивать, подключая в двух разных положениях, что стало значительным улучшением в сравнении с USB-B. Чтобы такое стало возможным, в штекере присутствует канал конфигурации CC – одножильная линия, которая подключается к одному из двух контактов CC в штекере и является необходимой для работы USB-C. В простых случаях USB-C вроде «получения USB 2.0 и 5 В на порту» достаточно следовать простому принципу – установить pulldown-резистор 5,1 кОм на каждом контакте CC. Таким образом вы получите порт, способный работать со всеми подходящими устройствами.


Естественно, в USB-C есть поддержка выше 5 В и USB 2.0. Из этого порта можно получить широкий спектр напряжений, что довольно удобно для зарядки таких устройств, как ноутбуки. Он может предоставить нам возможности USB 3, DisplayPort и Thunderbolt. К большинству ноутбуков через этот порт можно подключать док-станцию, которая по полной задействует все преимущества USB-C, позволяя выводить сигнал на дисплей с высоким разрешением, использовать множество USB-портов и заряжать различные устройства – всё с помощью одного кабеля. Как же это работает?

В случаях, когда требуется напряжение выше 5 В (USB-PD) или скорость соединения выше USB 2 и 3 (переменные режимы), эти возможности можно активировать через ту же линию CC. Это одна жила, обеспечивающая двухстороннюю коммуникацию, что делает её полудуплексным каналом. По факту это протокол вроде Ethernet с фиксированной скоростью 300 Кбит/с. Существует множество микросхем, понимающих этот протокол и способных реализовать ряд определённых возможностей. При этом некоторые чипы и периферия микроконтроллеров позволяют сообщать с помощью этого протокола что угодно.

▍ Великие возможности


В портах USB-C есть контакты для четырёх высокоскоростных дифференциальных пар, то есть всего таких контактов восемь. Во многих простых устройствах с USB-C они отключены, но потенциал этих портов огромен. Во-первых, обычно, если такой порт присутствует в ноутбуке, то вы можете получить через него скорости USB 3.1 или 3.2. Порт USB 3, как правило, задействует две дифференциальные пары из четырёх, но некоторые устройства поддерживают комбинацию 2x2, что удваивает количество пар и скорость передачи. При этом всё чаще порты USB-C можно задействовать в качестве DisplayPort – используя два или четыре канала, вы можете подключать дисплеи с довольно высоким разрешением.

Ещё у нас есть Thunderbolt, полупроприетарная технология, в которой также используются высокоскоростные пары разъёма USB-C. Она может служить в качестве USB 3, DisplayPort и даже PCIe, хотя сама ничем из этого не является. С помощью Thunderbolt можно получить прокачанную док-станцию с расширенными возможностями DisplayPort, более скоростными портами и даже возможностью подключения внешнего GPU. Думаю, вы не удивитесь, что это редчайшая и самая дорогостоящая опция из всех перечисленных.

Учитывая описанные возможности получения высокой скорости и напряжения, объединение всего этого в одном разъёме имеет сильные плюсы. Ваша зарядка USB-C для ноутбука также способна при необходимости заряжать телефон, а благодаря агрессивной стандартизации теперь среди зарядных устройств остаётся всё меньше проприетарных решений.


Если у вас есть док-станция Nintendo Switch с USB-C, то теоретически при условии возможности механического подключения она должна подходить и к ноутбуку, а док-станции для ноутбуков будут работать с вашей Steam Deck. Док-станции становятся всё более разумным решением – с ними вы для всего используете один кабель, и работают они с большинством устройств USB-C.

С каждым годом возможности USB-C продолжают расширяться. К примеру, в 2021 году разработчики этого стандарта заявили о внедрении EPR — это говорит об увеличении поддержки до 240 Вт при 48 В @ 5 A, что превосходит SPR, при котором порт USB-C не способен обеспечить более 100 Вт при 20 В @ 5 A. По сути, это устраняет необходимость использовать для ноутбуков переходники на круглые разъёмы из-за ограниченности USB-C поддержкой всего 100 Вт – больше не нужны все эти «универсальные» блоки питания с кучей переходников.

На горизонте маячит появление стандарта USB 4, который будет аналогичен Thunderbolt, но не во всём — только пока не ясно в лучшую или худшую сторону. Как бы то ни было, вскоре в компьютерах начнут появляться порты USB 4 и, надеюсь, настанет день, когда каждый ноутбук, включая самые дешёвые, будет оснащён высокоскоростным интерфейсом.

Если говорить в целом, то впереди у USB-C виднеется яркое будущее. Благодаря всему тому опыту, который индустрия десятилетиями накапливала путём разработки всевозможных портов, кабелей и стандартов, он во многих аспектах был спроектирован достаточно грамотно и имеет потенциал для дальнейших доработок.

Естественно, USB-C также породил собой новое поле для проб и ошибок.

▍ Памятная история провалов


Страшные истории про USB-C звучат повсюду – думаю, каждый, кто использовал такие разъёмы, может рассказать о случаях, когда этот стандарт его подвёл. У USB-C больше положительных сторон, чем проблемных, но я твёрдо верю в необходимость помнить все связанные с ним провалы, чтобы можно было на них учиться и находить способы их избегать.

Не все составляющие стандарта USB-C хорошо продуманы. Первой на ум приходит проблема кабелей и портов. Используя порт USB-C, вы не можете на взгляд определить, какие именно возможности он поддерживает. То же касается кабелей. Ситуация тут довольно аховая – для тех, кто ещё толком не разобрался, использование USB-C в некоторых случаях может быть сопряжено с догадками и упованием на успешный результат. Существуют руководства о том, как различать кабели, и в других статьях серии я об этом буду говорить. С учётом всего этого, производителям для начала следует внедрить отчётливую систему маркировки изделий.

В реализации стандарт USB-C довольно сложен, так как подразумевает использование множества конечных автоматов и несёт в себе немало тонкостей. При этом сама спецификация стандарта печально известна своей громоздкостью: описание разъёмов и кабелей занимает 350 страниц, а в документе, посвящённом протоколу USB-PD, их вообще 600+.

Многие производители трудятся над совершенствованием своей продукции долгие годы, но в ней по-прежнему встречаются весьма странные пограничные случаи. Ноутбуки, работающие только с определёнными зарядными устройствами и наоборот; док-станции, которые дружат только с определёнными ноутбуками или с определённой зарядкой; кабели, работающие лишь в одной ориентации; или устройства, ведущие себя по-разному в зависимости от стороны подключения штекера. Мистики тут предостаточно.


Помимо этого, есть бесчисленное множество вариантов неправильного использования технологии USB-C, и некоторые производители в этом особенно преуспевают. Стандарт не виноват в том, что другие реализуют его ошибочно – при определении сложного стандарта вы можете реализовать лишь ограниченное число видов защиты. Однако перед нами остаётся целая новая категория проблем, которые нужно иметь в виду. Некоторые грехи USB-C сложно простить и необходимо заострять на них внимание, а некоторые являются менее очевидными – многие мы разберём в остальных публикациях серии.

▍ Широкое поле для экспериментов


Это важно помнить – USB-C со временем будет становиться всё более согласованным. При этом в нём также будет проявляться всё больше возможностей для личных экспериментов. Всё благодаря постепенному накоплению знаний и появлению новых аппаратных решений. Помимо этого, экосистемы USB-C в наших домах с каждым днём лишь разрастаются. Сегодня, если вы что-либо проектируете, то обязательно нужно учитывать использование этой технологии.

Давайте обобщим, что вам потребуется для добавления порта USB-C, который позволит вашему устройству получать 5 В при 3 А и передавать данные со скоростью USB 2.0 в обоих положениях штекера.

Symbol: USB_C_Receptacle_USB2.0; footprint: USB_C_Receptacle_HRO_TYPE-C-31-M-12

Вот и всё. В сравнении с MicroUSB потребуется лишь два дополнительных резистора, и контакты в этом случае паять проще. Подключите резисторы, как показано на схеме. Не объединяйте контакты CC, как это сделали в Raspberry Pi 4, и не исключайте никакой из резисторов. Если их не установить, ведущий порт Type-C не подаст вашему устройству 5 В – во многих дешёвых продуктах так и бывает. Без резисторов 5,1 кОм питание девайс не получит, и потребуется использовать кабель USB-A – USB-C. Если исключить из схемы лишь один резистор – порт будет работать только в одном положении подключения штекера – такое тоже встречается в некоторых дешёвых устройствах.

Любой девайс, которому нужно получить 5 В, так или иначе имеет эти резисторы – будь то на плате или внутри микросхемы USB-C. Для простой задачи обеспечить 5 В и USB 2.0 можно просто взять резисторы 5,1 кОм, 1%. Однако также можно запараллелить два резистора на 10 кОм, и такой вариант вполне сработает. Лично я просто заказала кучу резисторов на 5,1 кОм, и они мне очень пригодились. Если у вас есть порт, в котором разработчики забыли добавить эти резисторы, можете заказать гибкие промежуточные печатные платы, которые позволят без проблем впаять их.

На выбор существует множество различных разъёмов USB-C. Наиболее востребованными являются 16-контактные, но также есть куча совместимых по выводам моделей. К тому же паять их вручную довольно легко, особенно при наличии оплётки для выпайки на случай ошибок. Обязательно убедитесь, что не взяли разъём без контактов СС. В противном случае вы не сможете подключить pulldown-резисторы, и подобные разъёмы заработают с портами Type-C только при использовании кабеля USB-A – USB-C, что окажется серьёзным ограничением.

Естественно, потенциал USB-C выходит далеко за обеспечение 5 В @ 3 А и USB 2.0, и в других статьях серии я покажу, как можно задействовать все его возможности. Однако для вас важно запомнить эту формулу, поскольку чаще всего вам потребуется именно она. К тому же, отталкиваясь от неё, будет проще понять и остальные. При этом вы можете использовать контакты SBU для вывода отладочных подключений вроде UART, так как SBU используется только в DisplayPort. Однако могут быть сложности с поиском плат штекеров, в которых выводы SBU представлены в удобном для ручной пайки виде. И если вы однажды окажетесь в высшей лиге специалистов по портам USB-C, то также сможете реализовывать отладку совместимым со стандартом способом.

▍ Следовать правилам не всегда обязательно


И даже полное соответствие стандарту не гарантирует 100% безопасности

Для электронщика согласованность со стандартом USB-C – это палка о двух концах. Отклоняясь от стандарта, вы можете убить ноутбук, а можете и добиться серьёзных преимуществ без каких-либо опасностей или недостатков. Некоторые сценарии выходят за рамки допустимых не потому, что являются реально опасными, а ввиду того, что могут вызвать путаницу у типичного пользователя или не обеспечить идеальную функциональность. При этом во многих случаях худшим следствием отклонения от стандартов станет то, что кто-нибудь в интернете разозлится на вас из-за какой-то мелочи.

В других статьях серии будут затронуты моменты, которые по праву считаются недопустимыми и должны всегда избегаться. Я также покажу, как можно мягко (или грубо) нарушать стандарты, указав случаи, когда это может принести пользу, а когда может казаться, что их можно нарушить, но на деле этого делать никак не стоит. Вот вам рекомендация – когда вы слышите, что планируемое вами решение нарушает стандарты USB-C, очень важно разобраться, о каких именно последствиях идёт речь конкретно в вашем случае.

Давайте изучать, распространять и нарушать стандарт USB-C вместе! До встречи в других статьях!

Играй в наш скролл-шутер прямо в Telegram и получай призы! 🕹️🎁
Теги:
Хабы:
Всего голосов 53: ↑53 и ↓0+53
Комментарии17

Публикации

Информация

Сайт
ruvds.com
Дата регистрации
Дата основания
Численность
11–30 человек
Местоположение
Россия
Представитель
ruvds