Как припаять usb вход к магнитоле: Как сделать и подключить USB к магнитоле своими руками » АвтоНоватор

Содержание

Магнитола без usb что делать. Как подключить USB к магнитоле: варианты и их эффективность.

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

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

Конечно, можно купить переходник и выложить за это не маленькие деньги, но можно подарить штатной акустической системе вторую жизнь, укомплектовав ее USB выходом самостоятельно, потратив на это только немного времени.

Первый способ

Для этой цели понадобится любой ненужный китайский MP-3 плеер, считывающий композиции с флешки и карт памяти, главное чтобы у него имелся разъем под наушники. Из него вам понадобится лишь аудио сигнал.


  • Разобрав магнитолу и сняв CD привод, плюсовой провод питания музыкального MP3 плеера припаивается к контакту старой системы, где после запуска находится напряжение. Подключив звук, берется провод и соединяется с выходом плеера и AUX входом магнитолы. После этого плата плеера монтируется в основание акустической системы, сняв привод — свободного места там хватает.
  • Главное, подсоединить все правильно, чтобы избежать короткого замыкания. Кнопки управления плеера выводятся к ненужным кнопкам управления CD привода. Собрав магнитолу можно наслаждаться музыкой с цифровых носителей, с флешки, для этого нужно лишь включить механизм AUX. Композиции при этом можно перелистывать кнопками.
  • Перед включением запуска музыки с флешки нужно убавить звук, это избавит от громкого сигнала когда входной сигнал достаточно сильный.

Второй способ


Также, для прослушивания флешки на вашем устройстве, можно выполнить при помощи переходника, который делается самостоятельно. Главное, чтобы на магнитоле имелся выход внешнего сигнала AUX. Для подключения понадобится штекер от простых наушников и несколько разъемов в виде тюльпана, провод четырех жильный, помещенный в медную оплетку. Важно, чтобы кабель от наушников был в рабочем состоянии, чтобы проверить его, можно использовать мультиметр.

  • У основного кабеля штекера, который находится около самого основания, снимается изоляция.
  • Проводники правых и левых каналов, имеющие алый и зеленый цвет, припаиваются к среднему выводу разъема тюльпан.
  • При завершении работы, контакт основного провода должен быть подсоединен к стальному основанию тюльпана, а другие — к центральным выводам тюльпана. В результате получится такой переходник, как на фото.
  • В разъем внешнего звукового сигнала магнитолы подключается переходник, куда подсоединяется любое считывающее устройство.
  • После включения запускается авто режим AUX и можно наслаждаться музыкой записанной на флешку.

AUX выход своими руками

Но что делать, если на вашей автомагнитоле не имеется AUX порт для подключения внешних источников музыки? Следует потратить немного времени и сделать все самостоятельно.

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


Первым делом нужно вытащить автомагнитолу. В основном она закрепляется на пластмассовые защелки, поэтому трудностей при ее снятии быть не должно. Далее откручиваются болтики на панели вентиляции, после чего сама панель приподнимается кверху, чтобы убрать все помехи. Все провода от наушников припаиваются к разъему тюльпан — общий к металлическому основанию, проводники к средним выводам.Далее припаянные провода вместе со штекером выводятся в салон, для удобного подключения считывающих устройств.

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


После этого можно включать любой трек. Заранее на автомагнитоле следует отрегулировать звук. При правильно проведенных работах в колонках автомобиля должна звучать музыка.

Акустическая система при этом будет играть роль усилителя.

В описанных способах по улучшению штатной магнитолы нет ничего трудного и сделать это самостоятельно под силу каждому.

Вконтакте

Музыкальная техника для автомобилей постоянно совершенствуется, становясь с каждым днем все более функциональной. Сегодня не обязательно приобретать множество дисков и постоянно следить за их состоянием. Теперь достаточно с собой носить компактную флешку с музыкой. Однако некоторые владельцы автомобилей сталкиваются с проблемой применения флеш-накопителя, а потому их интересует, как сделать USB-вход в автомагнитоле? О некоторых тонкостях мы расскажем в нашей статье.

Подготовка к работе

Перед тем, как приступать к действиям, следует продумать, во сколько это может вам обойтись. Если вы в этом деле любитель, не нужно даже начинать, чтобы не испортить магнитолу окончательно. Самым простым способом считается применение FM-модулятора. Данное устройство позволяет апгрейдить магнитолу быстро.

Сейчас реально приобрести любую удобную модель, поскольку большинство из них оборудованы разъемом под флешку. Помимо разъема для USB, имеются слоты SD и microSD. Так, через другой прибор можно будет прослушивать музыку со своей флешки. Конечно, этот вариант считается самым примитивным и не очень эстетичным, поэтому мы рассмотрим другой способ

Как подключить флешку к автомагнитоле если нет USB входа

С проблемой подключения флешки зачастую сталкиваются владельцы штатных магнитол старого образца, где для прослушивания любимой музыки приходится постоянно покупать новые CD-диски, которые и найти сейчас уже не так уж просто. Как подключить флешку к автомагнитоле если нет USB входа? Исправить положение можно несколькими методами.

Установка USB-адаптера

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

Преимущества:

  • Не требуется замена головного устройства автомобиля.
  • Не требует питания от прикуривателя.
  • Легко устанавливается.
  • Магнитола проигрывает песни в записанном формате, при этом качество не теряется из-за старого дискового лазера, передаче Bluetooth-адаптером или при помехах на радиоканалах.
  • Можно спрятать в панели автомобиля.
  • Легко скачивать и создавать плейлисты из музыкальных композиций.
  • Низкая стоимость.

Установка:

  1. Вытащить магнитолу из гнезда для того, чтобы получить доступ к проводам и разъемам.
  2. Провод из комплекции USB-адаптера вставить в соответствующий разъем на автомагнитоле (в некоторых случаях может потребоваться дополнительная установка переходника, который можно без труда найти на автомобильном рынке).
  3. К другому концу провода подключить сам USB-адаптер, с разъемом для флешки.
  4. По желанию можно провести адаптер до бардачка или вывести в другое место панели, чтобы он не мешал вождению.

 

Самой магнитоле дополнительная настройка не требуется, но так как принцип работы основан на эмуляции работы CD-диска, то для того, чтобы магнитола могла видеть и воспроизводить записи с флешки, следует создать на ней папки c названиями, соответствующими формату проигрывания магнитолы: «CD1», «CD2», «CD3» и т. д. Сохранять файлы следует в папку под названием «CD7». Без создания папок с данными названиями магнитола не сможет обнаружить необходимые файловые записи.

Установка премиум Bluetooth гарнитуры

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

Преимущества:

  • Возможность отвечать на телефонные звонки без нарушений ПДД.
  • Подключение к стандартному аудио выходу любой магнитолы.
  • Компактный дизайн, позволяющий закрепить устройство в любом удобном месте на панели автомобиля.
  • Легкое управление при помощи мобильного пульта, который может быть установлен рядом с водителем или прямо на руль управления автомобилем.
  • Компактный дисплей, отображающий контакты телефона при вызовах и транслирующий музыкальный трек.
  • Возможность переключать треки при помощи мобильного пульта.
  • Легкая установка.

Из минусов данного метода можно выделить только высокую стоимость аппаратуры. Но это оптимальное решение, если Bluetooth гарнитура необходима, а в автомобиле установлена штатная магнитола хорошего качества.

Установка FM-трансмиттера

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

Основным плюсом установки FM-трансмиттера является привлекательная цена, но качество звучания при проигрывании, может быть хуже изначально записанных треков. Обусловлено это характером трансляции. Переключать треки можно при помощи клавиш на самом устройстве. Также большинство моделей оснащены мобильными пультами управления. Помимо USB-порта, в комплекции большинства устройств входят также слоты под MicroSD карты. Устройство автоматически обнаруживает музыкальные файлы с носителей, пользователю остается только выбрать свободную волну и настроить магнитолу на указанную частоту на трансмиттере. К сожалению, работоспособность большинства устройств ограничена обработкой 32 Гб памяти флешки и 2000 наименований. Но все равно, этого вполне достаточно, чтобы музыкальное сопровождение в машине было разнообразным.

Как сделать USB-вход в автомагнитоле?

Музыкальная техника для автомобилей постоянно совершенствуется, становясь с каждым днем все более функциональной. Сегодня не обязательно приобретать множество дисков и постоянно следить за их состоянием. Теперь достаточно с собой носить компактную флешку с музыкой. Однако некоторые владельцы автомобилей сталкиваются с проблемой применения флеш-накопителя, а потому их интересует, как сделать USB-вход в автомагнитоле? О некоторых тонкостях мы расскажем в нашей статье.

Подготовка к работе

Перед тем, как приступать к действиям, следует продумать, во сколько это может вам обойтись. Если вы в этом деле любитель, не нужно даже начинать, чтобы не испортить магнитолу окончательно. Самым простым способом считается применение FM-модулятора. Данное устройство позволяет апгрейдить магнитолу быстро.

Сейчас реально приобрести любую удобную модель, поскольку большинство из них оборудованы разъемом под флешку. Помимо разъема для USB, имеются слоты SD и microSD. Так, через другой прибор можно будет прослушивать музыку со своей флешки. Конечно, этот вариант считается самым примитивным и не очень эстетичным, поэтому мы рассмотрим другой способ. Он предполагает применение паяльника.

Как правильно сделать USB-вход в своей автомагнитоле?

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

Далее выбрасывают и отпаивают лишние блоки: это считывающая головка, лентопротяжный механизм, электроника.

Чтобы установить USB в обычную магнитолу, необходимо уметь пространственно мыслить.

Для процесса пайки необходимо использовать провода экранированного типа. Они избавляют от лишних наводок. В имеющемся модуляторе, заряжающемся от автомобильного прикуривателя, в разъеме для питания скрывают микросхему стабилизатора. Данный «хвост» придется разобрать и достать плату.

Провод плейера отпаивается, а на его место крепят планку, а от нее кидают экранированные провода туда, где в магнитоле микросхема с местами в 12В.

Затем следует заклеить окно под кассетоприемник, чтобы не поломать конструкцию, вставив туда кассету. Ключевая работа на этом завершается. Остается лишь установить девайс в стандартный слот и слушать любимую музыку с USB-флешки. Видео для закрепления результата прилагается.

Ремонт USB порта | Каталог самоделок

Нередко из-за невнимательности и неосторожных движений мы ломаем флешку, вставленную в магнитолу, и вместе с ней сам usb-разъем. Ниже на фотке представлен такой уже неисправный разъем. С первого взгляда он вполне работоспособный и выглядит нормально, но при вставке флешки, разъем вместе с носителем начинает болтаться туда-сюда (вполне знакомая ситуация для многих).

Можно попытаться восстановить, то есть обратно припаять разъем на свое место, но от повторений поломок никто не застрахован. Поэтому было принято решение, вместо сломанного разъема впаять небольшой USB-шнур с «мамой» на конце.

Длину шнура можно выбрать любую.

Первым делом необходимо вытащить магнитолу. С задней стороны вывинтить болтики и с помощью «ковыряшки» разбираем панель магнитолы.

Не забудьте вытащить ролик громкости, иначе разобрать не получится.

Плата панели.

После снятия, начните демонтировать сам USB-разъем. Легко сделать это можно с помощью оловоотсоса и медной плетки.

Далее необходимо сообразить, откуда выводить usb-шнур. Почти в каждой автомагнитоле имеется разъем «AUX»

«AUX» – стандартный разъем на 3,5 мм., предназначенный для прослушивания музыки прямо с телефона или MP3-плеера. Для этого достаточно лишь подсоединить посредством специально шнура ваш гаджет к магнитоле.

Данный вход не используется почти у 99% автовладельцев. И поэтому можно его демонтировать.

Далее обрезанный конец кабеля просовываем через дырку, который предназначался для «AUX». При необходимости (если кабель толстый) можно горячим паяльником расширить его.

 

Далее  с обратной стороны запаиваем провода:

  • К – красный провод;
  • Б – белый провод;
  • З – зеленый провод;
  • Ч – черный провод.

Вид с обратной стороны.

Далее собираем панель в обратном порядке. Также в бывший вход «AUX» залейте немного эпоксидной смолы для нажедности.

Осталось только проверить магнитолу.

Удачи на дорогах.

Автор: Скрыльников Владимир.


 

Установить USB разъем в машину

До недавнего времени USB разъем в автомобиле считался чуть ли не роскошью. Отсутствует такой разъем и во многих современных моделях, не говоря уже про машины, выпущенные 10-15 лет назад. В этой статье я расскажу, как из 12 вольт бортовой сети получить 5 В для USB разъема.

Многие устанавливают себе в авто различные устройства с питанием от прикуривателя – видеорегистратор, GPS навигатор, а еще периодически нужно подключать зарядное для телефона. А т.к. гнездо прикуривателя одно, покупают разветвитель, но это не выход из положения, провода, тянущиеся через приборную панель мало того, что отвлекают и мешают, могут стать причиной ДТП.

Как правило все эти устройства рассчитаны на напряжение 5 В (стандартное напряжение интерфейса USB), а преобразователь из 12 в 5 вольт содержится в штекере каждого из этих устройств. Я предлагаю установить в машину один источник питания на 5 В и от него посредством USB, mini USB разъемов питать все необходимые устройства.

Обновление от 30.07.2015.
Информация из статьи актуальна и сейчас, но появилось альтернативное решение – готовые USB адаптеры с подключением к сети 12 В. Речь идет не о переходниках в прикуриватель, они были на рынке и в момент первой публикации, а про самостоятельные устройства-преобразователи.

USB адаптер с двумя разъемами и заглушкой

Устройство состоит из двух модулей. Корпус с наружной резьбой выполнен в виде патрона прикуривателя и в него вставляется переходник USB с двумя разъемами. Производитель заявляет следующие характеристики:

  • Входное напряжение: 12 – 24 В;
  • Выходное напряжение: 5 В;
  • Выходной ток: 3 А.

Купить на AliExpress

USB адаптер с двумя разъемами, заглушкой и подсветкой

В отличие от предыдущего варианта данное устройство имеет цельную конструкцию и подсветку c цветом на выбор: красный, зеленый, синий, оранжевый, белый.

Заявленные характеристики:

  • Входное напряжение: 12 – 32 В;
  • Выходное напряжение: 5 В;
  • Выходной ток: 1 А; 2,1 А.

Купить на AliExpress

USB адаптер с двумя разъемами, заглушкой и индикатором

Адаптер имеет съемный фланец с отверстиями под винты, что не добавляет ему эстетичности, но его можно установить и без фланца. Обратите внимание, что разъемы USB имеют разный выходной ток. Характеристики:

  • Входное напряжение: 12 – 24 В;
  • Выходное напряжение: 5 В;
  • Выходной ток: 1 А; 2,1 А.

Купить на AliExpress

USB адаптер прямоугольной формы с двумя разъемами, заглушкой и подсветкой

Конструктивно адаптер отличается от своих круглых собратьев тем самым усложняя монтаж. Но внешне имеет приятный вид и должен хорошо вписаться в интерьер автомобиля. Технические параметры:

  • Входное напряжение: 12 – 24 В;
  • Выходное напряжение: 5 В;
  • Выходной ток: 3,1 А.

Купить на AliExpress

Вот такие сейчас доступны USB адаптеры. Их легко установить. Подключить можно в цепь питания прикуривателя и, пожалуйста, имеем полноценный USB разъем в машине. Но есть небольшой нюанс – данные адаптеры не имеют отдельного (кабельного) выхода на 5 В. Это важно для постоянно установленных устройств, например, видеорегистратора. Таким образом старая часть статьи еще не утратила своей актуальности. Читаем!

Моделисты для питания авиа-, авто-, судомоделей используют UBEC. Что это такое?
UBEC Universal battery elimination circuit – это импульсное устройство бортового питания, на выходе которого 5 или 6 В.

Выбор пал на TURNIGY 3A UBEC с помехоподавлением. Покупал на HobbyKing. Также доступен на Паркфлаере.

Преобразователь TURNIGY 3A UBEC имеет тепловую защиту. Экранированный корпус служит для подавления помех. Обладает высоким КПД – 92%, минимальная разница между входным и выходным напряжениями всего 1,22 В.

Сердцем данного преобразователя является чип MP1593DN, даташит можно скачать в конце статьи.

Технические характеристики преобразователя TURNIGY 3A UBEC:

  • Входное напряжение: 5,5 – 23 В;
  • Выходное напряжение: 5 В или 6 В, устанавливается переключателем;
  • Выходной ток: 3 А;
  • Размеры (ДхШхВ): 51х16,6х8,5 мм;
  • Вес: 11,5 г.

Вот таким я его получил (пакетик уже вскрыл, не удержался):

В комплекте – инструкция и, собственно, сам UBEC. Для сравнения положил рядом USB флешку:

Перемычка уже была установлена на 5 В, на плате есть маркировка как переключить выходное напряжения на 5 или 6 В. Напомню, что нам нужно 5В! На следующих двух фотографиях видно эту маркировку. А также что скрывается под экраном. Спасибо за эти фотографии Кириллу Родионову с паркфлаер, не пришлось разбирать свой преобразователь.

Для дополнительной защиты, если вдруг преобразователь выйдет из строя, чтобы на выходе не оказалось 12 В, установил стабилитрон 1N4734 (даташит в конце статьи): напряжение стабилизации 5,6 В; мощность рассеяния 1 Вт, ток стабилизации 45 мА. Вот такой набор был куплен на ebay:

Стабилитрон включается в схему параллельно выходу, катодом к плюсу «+». Катод на стабилитроне отмечен черной полоской:

Припаиваем стабилитрон, красный провод «+», к нему полоской. Дополнительно я припаял короткие проводники сечением 0,5 мм2, от них потом легче будет разводить схему. Предварительно одел кусочки термоусаживаемой трубки:

После усадки феном отдельных кусочков и общей трубки, одетой на стабилитрон:

Так как мне нужно питание для видеорегистратора и для зарядного устройства телефона, то необходимы два разъема – штекер mini USB и гнездо USB.

На ebay нашел замечательный переходник – USB A Female to Mini USB B 5Pin Male left angle adapter. С одной стороны у него угловой разъем mini USB, а с другой гнездо USB:

Со слезами на глазах разрезал его пополам:

Из-за освещения фотографии сделаны на разных столах.

Красный провод плюс «+», а черный минус «-». На всякий случай, проверил согласно цоколевки разъема:

Взял провод с учетом прокладки его за декоративными элементами салона. Для разъема mini USB длина провода больше, т.к. видеорегистратор установлен в верхней части лобового стекла. Для стандартного USB провод короче, выведу его куда-нибудь на приборную панель, пока еще точно не решил.

Соединил провода, промаркировал, чтобы не запутаться. Аналогично одел термоусадочную трубку на каждый проводник и поверх одну общую:

Получились вот такие два кабеля:

Спаял, собрал все вместе, соблюдая полярность. Вот так выглядит окончательный вариант монтажного комплекта:

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

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

Если для вас эта проблема не актуальна, подключайте UBEC в цепь прикуривателя. Иначе подключайте в цепь, не зависящую от замка зажигания, а чтобы сохранить функцию включения/выключения видеорегистратора задействуйте дополнительно реле:

На схеме показано автомобильное реле в общем случае, но оно может быть без гасящего диода и без нормально замкнутого контакта 87а.

Подведем итог. Преобразователь напряжения TURNIGY 3A UBEC идеально подходит для организации USB разъемов в машине. Выполнен он качественно, соответствует заявленным характеристикам при доступной цене.

Данный преобразователь обеспечивает 3 А на выходе, что теоретически позволяет подключить к нему до шести устройств. Согласно спецификации на USB интерфейс, максимальный ток, потребляемый устройством должен быть не более 0,5 А, для USB 3.0 не более 0,9 А.

Пользователь Bim_Sony провел целый ряд испытаний преобразователя TURNIGY 3A UBEC.

Список файлов

1n4734.pdf

Описание (datasheet) стабилитрона 1N4734

  • Загрузок: 282
  • Размер: 253 Kb

mp1593dn.pdf

Описание (datasheet) DC/DC преобразователя MP1593DN

  • Загрузок: 317
  • Размер: 512 Kb

5 способов исправить неисправное USB-устройство или порт в Linux

Вы подключили USB-накопитель, клавиатуру или мышь к своему компьютеру с Linux. Но ничего не происходит.

В чем дело? Почему ваш компьютер с Linux не обнаруживает устройство? Это Linux, или ваше USB-устройство перестало работать?

USB не работает в Ubuntu?

Дисковые накопители, устройства чтения карт, телефоны, медиаплееры и периферийные устройства мультимедиа… все они полезны, но если есть проблема с USB-портом или драйверами вашей системы, они не будут работать. Это может быть особенно неприятно, если вы используете клавиатуру Bluetooth (вот почему вам не следует) или мышь (с USB-ключом), поскольку это означает поиск проводных альтернатив USB.

Однако это может быть не тот порт, который не работает. Возможно, используемое USB-устройство неисправно и не может быть обнаружено.

Решение проблем с USB может быть непростым делом, но возможно диагностировать неисправность и внести необходимые исправления.

Чтобы исправить проблемы с USB в Linux, необходимо выполнить пять шагов:

  1. Подтвердите, что USB-порт обнаружен
  2. Произвести необходимый ремонт порта.
  3. Починить или отремонтировать USB-устройства
  4. Перезагрузите операционную систему Linux.
  5. Подтвердите наличие драйверов устройств

Давайте рассмотрим каждый из них по очереди и узнаем, как бороться с хитрыми USB-устройствами в Linux.

1. Обнаруживает ли ваше устройство Linux?

Первое, что нужно проверить, вставив USB-устройство в компьютер с Linux, — это обнаружено ли оно. Обнаружение USB-устройства обычно не такое словесное или слышимое, как в Windows или macOS, а это означает, что часто вам нужно проверять, было ли устройство обнаружено операционной системой.

К счастью, это просто.

Сначала отключите запрошенное USB-устройство. Затем откройте окно терминала и введите команду «list USB»:

  LSUSB  

Запишите результаты, затем подключите USB-устройство и снова запустите lsusb.

На этот раз вы должны увидеть в списке дополнительное устройство с идентификатором шины, идентификатором устройства, идентификатором USB и описанием.Если вы не можете определить, что это за дополнительное устройство (у вас может быть внутреннее USB-устройство, например, Ethernet), попробуйте другую команду.

  dmesg | grep -i USB  

Команда dmesg выведет список подключенных USB-устройств в вашей системе.Он также будет включать оборудование, отличное от USB, и, к сожалению, предлагает огромное количество информации. Чтобы противостоять этому, вы можете попробовать

  dmesg | менее  

Наконец, вы можете просто положиться на более удобный

  usb-устройства  

Это похоже на нечто среднее между командами dmesg и lsusb, перечисляющее подключенное USB-оборудование с достаточной информацией для их идентификации.

Итак, здесь перечислены подключенные USB-устройства? Если нет, то, возможно, порт поврежден или есть проблема с устройством.Точно так же устройство может быть несовместимо с Linux.

2.Как проверить свой USB-порт

Если USB-устройство не отображается, это может быть связано с проблемой с USB-портом.

Лучший способ быстро это проверить — просто использовать другой порт USB на том же компьютере.Если теперь USB-оборудование обнаружено, значит, у вас проблема с другим USB-портом.

Если другой порт USB недоступен, вам необходимо попробовать USB-устройство на другом ПК или ноутбуке.Однако это может быть не идеально, поскольку в качестве альтернативы у вас может быть только компьютер с Windows или macOS. Поскольку некоторые USB-устройства нельзя использовать в Linux, будет сложно определить, является ли это USB-устройством или USB-портом, который вызывает у вас проблемы.

Для достижения наилучших результатов при поиске и устранении неисправностей USB-устройств по возможности используйте Linux-совместимое оборудование.Нет времени устанавливать Linux на другой компьютер? Вместо этого рассмотрите возможность подтверждения состояния вашего USB-оборудования с помощью недорогой Raspberry Pi Zero.

3.Ремонт сломанного USB-оборудования

Если ваше USB-оборудование неисправно, у вас есть два варианта: исправить или вернуть.

Исправление обычно включает проверку USB-порта, а также устройства, которое в настоящее время не работает.Исправления почти всегда связаны с кабелем USB и портом на вашем компьютере. Однако USB-кабели обычно можно заменить, а порты — отремонтировать.

Физическая проверка USB-оборудования — хорошая идея.Кабели должны быть прочными, без разрывов; заглушки должны быть прочными, с прочно прикрепленной металлической секцией.

Между тем, USB-порты следует проверять, выключив компьютер и отключив его от электросети.Убедитесь, что порты надежно закреплены; шаткие порты USB указывают на износ оборудования.

Если порт USB отключается, его можно припаять на место.Конечно, вы уже должны знать, как паять; никогда не пытайтесь сделать самодельные работы без предварительного опыта.

Кроме того, проверьте, нет ли пыли и грязи в ваших USB-портах, особенно на задней панели компьютера, где регулярно собирается пыль.Пыль — враг ПК, поэтому для повышения производительности стоит хранить систему в защищенной от пыли среде. Поскольку пыль может попадать на ваш компьютер через USB-разъемы, не торопитесь, чтобы содержать эти порты в чистоте. Используйте баллончик со сжатым воздухом для рассеивания пыли и грязи.

Можете ли вы вернуть свое USB-устройство? Если новый, то наверное.Проблема в том, что, если он явно не обозначен как работающий под Linux, продавец вряд ли примет возврат. Возможно, вам придется быть немного избирательным в отношении фактов, которыми вы делитесь с ними …

4.Перезапуск Linux для исправления USB-порта

В некоторых случаях — например, если вы используете ноутбук — проблемы с питанием могут влиять на его способность обнаруживать USB-устройства.Параметр автозапуска предназначен для снижения энергопотребления ноутбуков с Linux, но может оказаться контрпродуктивным.

Так что ты можешь сделать?

Сначала проверьте, не вызывает ли проблема автоподдержка.Вы можете сделать это, перезагрузив компьютер; если устройство USB работает, значит, на этот порт USB подается питание.

Следующий шаг — убедиться, что это больше не повторится.Следующие приемы командной строки предназначены для Ubuntu 18.10, поэтому проверьте правильность процедуры в предпочитаемом вами дистрибутиве Linux.

Откройте окно терминала и введите:

  cat / sys / module / usbcore / parameters / autosuspend  

Это должно вернуть значение 2 , что означает, что автозапуск включен.Вы можете исправить это, отредактировав файл grub. Войти:

  Судо нано / и т. Д. / По умолчанию / grub  

Здесь ищите

  GRUB_CMDLINE_LINUX_DEFAULT = "тихий всплеск"  

Измените это на

  GRUB_CMDLINE_LINUX_DEFAULT = "тихий всплеск usbcore.autosuspend = -1 " 

Нажмите Ctrl + X , чтобы сохранить файл, и выйдите.Затем обновите grub:

  обновление sudo-grub  

Когда это завершится, перезапустите Ubuntu.

После перезагрузки войдите в свою учетную запись и снова введите команду cat:

  cat / sys / module / usbcore / parameters / autosuspend  

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

5.Проверка драйверов USB-устройств в Linux

Когда-то USB-устройства не часто работали в Linux.Только устройства, произведенные OEM-производителями, заинтересованными в Linux (возможно, они использовали его для разработки), будут предлагать драйвер для Linux.

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

Если драйвер недоступен, вы, вероятно, сможете найти его, связавшись с производителем USB-устройства.

Устранение неполадок USB в Linux: исправлено!

Благодаря встроенным драйверам и широкой поддержке многих типов USB-устройств вы легко сможете диагностировать проблемы с USB-оборудованием вашего компьютера.

Хотя сломанное оборудование может нуждаться в ремонте или замене, также доступны программные исправления.

Если вы недавно перешли с Windows, проблемы с USB в Linux могут стать проблемой.К счастью, эти проблемы обычно легко решаются, что упрощает переход на Linux!

10 популярных приложений для Android, которые НЕ следует устанавливать

В наши дни приложение существует буквально для всего.Хотите ли вы часами играть в игры, смотреть, как человек на другом конце света транслирует местную спортивную игру или организовывать все аспекты …

Об авторе Кристиан Коули (Опубликовано 1412 статей)

Заместитель редактора по безопасности, Linux, DIY, программированию и техническим вопросам.Он также выпускает The Really Useful Podcast и имеет большой опыт в поддержке настольных компьютеров и программного обеспечения. Автор статьи в журнале Linux Format, Кристиан — мастер Raspberry Pi, любитель Lego и фанат ретро-игр.

Ещё от Christian Cawley
Подпишитесь на нашу рассылку новостей

Подпишитесь на нашу рассылку, чтобы получать технические советы, обзоры, бесплатные электронные книги и эксклюзивные предложения!

Еще один шаг…!

Подтвердите свой адрес электронной почты в только что отправленном вам электронном письме.

Безопасно ли паять модуль MRF24J40MD при помощи парофазной пайки?

Переключить навигацию

  • Инструменты разработки
    • Какие инструменты мне нужны?
    • Программные инструменты
      • Начни здесь
      • MPLAB® X IDE
        • Начни здесь
        • Установка
        • Введение в среду разработки MPLAB X
        • Переход на MPLAB X IDE
          • Переход с MPLAB IDE v8
          • Переход с Atmel Studio
        • Конфигурация
        • Плагины
        • Пользовательский интерфейс
        • Проектов
        • Файлы
        • Редактор
          • Редактор
          • Интерфейс и ярлыки
          • Основные задачи
          • Внешний вид
          • Динамическая обратная связь
          • Навигация
          • Поиск, замена и рефакторинг
          • Инструменты повышения производительности
            • Инструменты повышения производительности
            • Автоматическое форматирование кода
            • Список задач
            • Сравнение файлов (diff)
            • Создать документацию
        • Управление окнами
        • Сочетания клавиш
        • Отладка
        • Контроль версий
        • Автоматика
          • Язык управления стимулами (SCL)
          • Отладчик командной строки
          • (MDB)
          • IDE Scripting с Groovy
        • Устранение неполадок
        • Работа вне MPLAB X IDE
        • Другие ресурсы
      • Улучшенная версия MPLAB Xpress
      • MPLAB Xpress
      • MPLAB IPE
      • Программирование на C
      • Компиляторы MPLAB® XC
        • Начни здесь
        • Компилятор MPLAB® XC8
        • Компилятор MPLAB XC16
        • Компилятор MPLAB XC32
        • Компилятор MPLAB XC32 ++
        • Охват кода
        • MPLAB
      • Компилятор IAR C / C ++
      • Конфигуратор кода MPLAB (MCC)
      • MPLAB Harmony версии 2
      • MPLAB Harmony версии 3
      • Atmel® Studio IDE
      • Atmel START (ASF4)
      • Advanced Software Framework v3 (ASF3)
        • Начни здесь
        • ASF3 Учебники
          • ASF Audio Sine Tone Учебное пособие
          • Интерфейсный ЖК-дисплей
          • с SAM L22 MCU Учебное пособие
      • Блоки устройств MPLAB® для Simulink®
      • Утилиты
      • Инструменты проектирования
      • FPGA
      • Аналоговый симулятор MPLAB® Mindi ™
    • Аппаратные средства
      • Начни здесь
      • Сравнение аппаратных средств
      • Средства отладки и память устройства
      • Исполнительный отладчик
      • Демо-платы и стартовые наборы
      • Внутрисхемный эмулятор MPLAB® REAL ICE ™
      • Эмулятор
      • SAM-ICE JTAG
      • Внутрисхемный эмулятор
      • Atmel® ICE
      • Power Debugger
      • Внутрисхемный отладчик MPLAB® ICD 3
      • MPLAB® ICD 4 внутрисхемный отладчик
      • PICkit ™ 3 Внутрисхемный отладчик
      • Внутрисхемный отладчик MPLAB® PICkit ™ 4
      • MPLAB® Snap
      • MPLAB PM3 Универсальный программатор устройств
      • Принадлежности
        • Заголовки эмуляции и пакеты расширения эмуляции
        • Пакеты расширения процессора
        • и отладочные заголовки
          • Начни здесь
          • Обзор
          • PEP и отладочных заголовков
          • Требуемый список заголовков отладки
            • Таблица требуемых отладочных заголовков
            • AC162050, AC162058
            • AC162052, AC162055, AC162056, AC162057
            • AC162053, AC162054
            • AC162059, AC162070, AC162096
            • AC162060
            • AC162061
            • AC162066
            • AC162083
            • AC244023, AC244024
            • AC244028
            • AC244045
            • AC244051, AC244052, AC244061
            • AC244062
          • Дополнительный список заголовков отладки
            • Дополнительный список заголовков отладки — устройства PIC12 / 16
            • Необязательный список заголовков отладки — устройства PIC18
            • Дополнительный список заголовков отладки — Устройства PIC24
          • Целевые следы заголовка отладки
          • Подключения заголовка отладки
      • SEGGER J-Link
      • Решения для сетевых инструментов
      • K2L
      • Рекомендации по проектированию средств разработки

USB Made Simple — Часть 4


Управление устройством

Прежде чем мы углубимся в детали, нам нужно посмотреть, как хост распознает и устанавливает устройство когда вы его подключаете.Нам нужно сделать это в общих чертах без увязнуть в деталях.

При подключении USB-устройства в, хост становится осведомленным (из-за подтягивающего резистора на одном линия передачи данных), что устройство подключено.

Хост сейчас сигнализирует Сброс USB на устройство, чтобы оно запустилось в известном состояние в конце сброса.В этом состоянии устройство отвечает на адрес по умолчанию 0. Пока устройство не будет перезагружено, хост предотвращает отправку данных из порта в нисходящий поток. Это будет сбрасывать только одно устройство за раз, поэтому нет опасности для двух устройств отвечает на адрес 0.

Хост теперь отправит запрос к конечной точке 0 адреса устройства 0, чтобы узнать его максимум размер пакета.Это можно обнаружить с помощью Get Descriptor (Device). команда. Это тот запрос, на который устройство должно ответить даже по адресу 0.

Обычно (т.е. с Windows) хост снова перезагрузит устройство. Затем он отправляет запрос Set Address с уникальным адресом устройства по адресу 0. После завершения запроса устройство принимает новый адрес. (И на этом этапе хост теперь может сбросить другие недавно подключенные устройства.)

Обычно хост Теперь начните проверять устройство на столько деталей, сколько он чувствует потребности. Здесь задействованы следующие запросы:

  • Получить дескриптор устройства
  • Получить конфигурацию Дескриптор
  • Получить дескриптор строки

На данный момент устройство находится в адресуемом, но ненастроенном состоянии, и ему разрешено только отвечать на стандартные запросы.

Как только хозяин это почувствует имеет достаточно четкое представление о том, что это за устройство, он загрузит подходящий драйвер устройства.

Драйвер устройства будет затем выберите конфигурацию для устройства, отправив Set Configuration запрос к устройству.

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

Теперь мы видим, что там представляет собой набор запросов, на которые устройство должно отвечать и которые необходимо посмотрите подробные средства, с помощью которых передаются запросы.

Мы видели в предыдущей главе данные передаются в 4 различных типах передачи:

  • Передача управления
  • Прерывание передачи
  • Массовые переводы
  • Изохронные передачи

Единственный вид передачи Перед настройкой устройства доступна передача управления.Единственная доступная конечная точка — это двунаправленная конечная точка. 0.

Конфигурации, интерфейсы, и конечные точки.

Устройство содержит количество дескрипторов (как показано справа), которые помогают определить на что способно устройство.Мы рассмотрим эти дескрипторы дальше по странице. На данный момент нам нужно понять, что конфигурации, интерфейсы и конечные точки и как они подходят все вместе.

А устройство может иметь более одной конфигурации , но только по одному, и для изменения конфигурации все устройство будет должны перестать функционировать. Могут использоваться разные конфигурации, например, чтобы указать различные текущие требования, так как текущие required определяется в дескрипторе конфигурации.

Однако это не часто иметь более одной конфигурации. Стандартные драйверы Windows будут всегда выбирайте первую конфигурацию, чтобы не было много смысла.

Устройство может иметь один или несколько интерфейсов. Каждый интерфейс может иметь несколько конечных точек и представляет собой функциональную единицу, принадлежащую к определенному классу.

Каждая конечная точка источник или приемник данных.

Например, телефон VOIP может иметь один интерфейс аудио класса с двумя конечными точками для передачи аудио в каждом направлении, а также интерфейс HID с одним прерыванием IN конечная точка, для встроенной клавиатуры.

Также возможно есть альтернативные версии интерфейса, и это более распространено чем несколько конфигураций. В примере с VOIP-телефоном звук интерфейс класса может предложить альтернативу с другим звуком показатель.Можно переключить интерфейс на альтернативный, пока устройство остается настроенным.


Пакет SETUP

Стандартные запросы все передаются с использованием передачи управления в конечную точку 0.Помнить что передача управления начинается с транзакции SETUP, которая передает 8 байт. Эти 8 байтов определяют запрос от хоста.

Структура bmRequestType позволяет легко использовать его для включения, когда ваша прошивка пытается интерпретировать запрос на настройку. По сути, когда приходит НАСТРОЙКА, вам нужно перейти к обработчику для конкретного запроса, поэтому например биты 6: 5 позволяют различать обязательный стандарт команды из любого класса или команды поставщика, которые вы, возможно, реализовали для вашего конкретного устройства.

Включение бита 7 позволяет вы должны обрабатывать запросы направления IN и OUT в разных областях кода.

Смещение

Поле

Размер

Значение

Описание

0

bmRequestType

1

Растровое изображение

D7 Направление данных
0 — Хост-устройство
1 — Устройство-хост
D6: 5 Тип
0 = Стандартный
1 = Класс
2 = Поставщик
3 = Зарезервировано
D4: 0 Получатель
0 = Устройство
1 = Интерфейс
2 = Конечная точка
3 = Другое
4-31 = Зарезервировано

1

b Запрос

1

Значение

Особый Запрос

2

w Значение

2

Значение

Использование варьируется по запросу

4

Индекс

2

Индекс или смещение

Использование варьируется по запросу

6

ширина

2

Граф

Номер байтов для передачи, если есть этап данных

Значение восьмерки байтов данных транзакции SETUP, которые разделены на пять именованные поля.

Вот таблица, содержит все стандартные запросы, которые может отправлять хост. Первое 5 столбцов — это поля транзакции SETUP по порядку, а последний столбец описывает любые сопутствующие данные этапа данных, которые будут иметь длина мм, длина мм.

bmRequestType

b Запрос

w Значение

Индекс

ширина

Данные

00000000b
00000001b
00000010b

CLEAR_FEATURE
(1)

Особенность Селектор

Ноль
Интерфейс
Конечная точка

Ноль

Нет

10000000b

GET_CONFIGURATION
(8)

Ноль

Ноль

Один

Конфигурация Стоимость

10000000b

GET_DESCRIPTOR
(6)

Дескриптор Тип (H) и индекс дескриптора (L)

Ноль или идентификатор языка

Дескриптор Длина

Дескриптор

10000001b

GET_INTERFACE
(10)

Ноль

Интерфейс

Один

Альтернативный Интерфейс

10000000b
10000001b
10000010b

GET_STATUS
(0)

Ноль

Ноль
Интерфейс
Конечная точка

Два

Устройство, Статус интерфейса или конечной точки

00000000b

УСТАНОВИТЬ АДРЕС
(5)

Устройство Адрес

Ноль

Ноль

Нет

00000000b

НАБОР_КОНФИГУРАЦИЯ
(9)

Конфигурация Стоимость

Ноль

Ноль

Нет

00000000b

SET_DESCRIPTOR
(7)

Дескриптор Тип (H) и индекс дескриптора (L)

Ноль или идентификатор языка

Дескриптор Длина

Дескриптор

00000000b
00000001b
00000010b

SET_FEATURE
(3)

Особенность Селектор

Ноль
Интерфейс
Конечная точка

Ноль

Нет

00000001b

SET_INTERFACE
(11)

Альтернативный Настройка

Интерфейс

Ноль

Нет

10000010b

SYNCH_FRAME
(12)

Ноль

Конечная точка

Два

Рама Число

GET_DESCRIPTOR

Вероятно, что это запрос (с типом дескриптора, установленным на Device ) будет первое, что будет получено после сброса USB.Хозяину нужны чтобы узнать максимальную длину пакета, используемого контрольной конечной точкой и эта информация доступна в 8-м байте дескриптора устройства.

Обычно, когда хост Windows, устройство получит запрос с требуемым length wLength установлен на 64. Затем хост вводит 1 пакет, а затем снова перезагрузите устройство. Независимо от значения максимального пакета length, хост теперь имеет значение 8-го байта и знает, что размер пакета предназначен для всех будущих передач управления.

Второй сброс наверно чтобы гарантировать, что устройство не запутается после того, как разрешено завершить передачу всех 18 байт устройства дескриптор.

Дескриптор Типы

Значение

Комментарии

Устройство

1

Конфигурация

2

Запрос для этого также возвращает дескрипторы OTG, интерфейса и конечной точки

Строка

3

Квалифицированный по индексу, чтобы указать, какая строка требуется

Интерфейс

4

Нет прямой доступ

Конечная точка

5

Нет прямой доступ

Устройство Квалификация

6

Только

для высокоскоростных устройств

Другое Конфигурация скорости

7

Только

для высокоскоростных устройств

Интерфейс Мощность

8

Устарело

На ходу (OTG)

9

Нет прямой доступ

Стол использования wValues ​​в запросах Get Descriptor для выбора необходимого дескриптор.
Дескриптор устройства

Этот дескриптор будет скорее всего, будет первым, который получит хост. Мы должны указать из некоторых важных функций.

bLength и bDescriptorType

Начало всех дескрипторов с одним байтом, определяющим длину дескриптора, и это всегда следует один байт, определяющий тип дескриптора.

разъем USB

Единственная действующая версия номера: 0x0100 (USB1.0), 0x0110 (USB1.1) и 0x0200 (USB2.0). Если вы разрабатываете новое устройство, оно должно обозначаться как USB2.0, потому что это текущая спецификация.

bDeviceClass, bDeviceSubClass и bDeviceProtocol

Эта тройка ценностей используется для описания класса устройства различными способами, как определено в различных документах спецификации классов от USB-IF.

idVendor, idProduct и bcdDevice

Комбинация idVendor и idProduct (также известный как VID и PID) должен быть уникальным для Устройство. Это означает, что используемый вами VID должен быть выпущен USB-IF, который вы имеете право использовать. Вы можете купить VID из USB-IF, или вы можете получить право на использовать VID от другого производителя вместе с конкретным PID которые они вам выдали.Если вы используете комбинацию VID / PID который уже используется, то у вас, вероятно, возникнут серьезные проблемы с вашим продуктом в поле.

Смещение

Поле

Размер

Значение

Описание

0

b Длина

1

Номер

Размер этого дескриптора в байтах

1

bDescriptorType

1

Константа

УСТРОЙСТВО тип дескриптора (= 1)

2

бит USB

2

BCD

USB Номер выпуска спецификации

4

bDeviceClass

1

Класс

Класс код, присвоенный USB-IF
00ч означает, что каждый интерфейс определяет свой собственный класс
FFh означает определяемый поставщиком класс
Любая другое значение должно быть кодом класса

5

bDeviceSubClass

1

Подкласс

Подкласс Код, присвоенный USB-IF

6

bDeviceProtocol

1

Протокол

Протокол Код, присвоенный USB-IF

7

bMaxPacketSize0

1

Номер

Макс размер пакета для конечной точки 0.
Должно быть 8, 16, 32 или 64

8

idVendor

2

ID

Продавец ID — необходимо получить из USB-IF

10

id товара

2

ID

Товар ID — присвоено производителем

12

bcd Устройство

2

BCD

Устройство номер выпуска в десятичном двоичном коде

14

iManufacturer

1

Индекс

Индекс строкового дескриптора, описывающего производителя — устанавливается в 0, если без строки

15

iProduct

1

Индекс

Индекс строкового дескриптора, описывающего продукт — устанавливается в 0, если нет строки

16

iSerialNumber

1

Индекс

Индекс строкового дескриптора, описывающего серийный номер устройства — установить в 0, если нет строки

17

b Число конфигураций

1

Номер

Номер возможных конфигураций

Устройство Дескриптор
SET_ADDRESS

После того, как хост определил максимальный размер пакета для конечной точки 0, он может начать нормальная связь с устройством.Как уже упоминалось выше, там может быть второй сброс с хоста. Хосту теперь нужно выдать запрос SET_ADDRESS к устройству, чтобы каждое устройство на bus имеет уникальный адрес для ответа.

SET_ADDRESS — простой, запрос внешнего направления в передаче управления без стадии данных. Единственная полезная информация, содержащаяся в пакете SETUP, — это необходимая адрес.

При реализации этого запроса в прошивке, следует отметить следующее. Все остальные запросы должны быть выполнены до того, как этап статуса будет завершен. Но в в случае SET_ADDRESS, вы не должны изменять адрес устройства, пока после стадии статуса. Статусный этап не удастся если устройство по-прежнему не отвечает на адрес 0, пока принимает место.Затем устройству дается 2 мс, чтобы подготовиться к ответу на новый адрес.

Когда запросы действительны?

Устройство может находиться в одном из трех состояний, которые определяют, запрос действителен на данный момент.

Штаты являются:

По умолчанию

После сбросить, но до получения Set Address.

В Состояние по умолчанию, единственные допустимые запросы: Get Descriptor, и установите адрес.

Адрес

После устройству был назначен адрес через Set Address.

Теперь устройство должно распознавать следующие дополнительные запросы:

  • Набор Конфигурация
  • Получить Конфигурация
  • комплект Функция
  • Прозрачный Функция
  • Получить Статус
  • комплект Дескриптор (необязательно)
Сконфигурировано

После хост отправил Set Configuration с ненулевым значением, для выбора конфигурации.Теперь устройство готово к работе.

В Сконфигурированное состояние, только Set Address не является допустимым запросом. Еще три запроса ограничены состоянием «Настроено». только:

  • Получить Интерфейс
  • комплект Интерфейс
  • синхронизация Рама
Примечание что это был лишь краткий обзор.Спецификация дает более подробная информация, с которой следует ознакомиться при внедрении USB-устройство.

Сбор другой информации Команды

Хост, скорее всего, начните использовать упомянутый выше запрос GET_DESCRIPTOR, чтобы получить другая информация, описывающая устройство.Основная часть этой информации — дескриптор конфигурации.

Фактический дескриптор который выбирается запросом GET_DESCRIPTOR, определяется старшим байтом слова wValue в данных SETUP.

Так просьба мы называем здесь «Получить дескриптор (конфигурацию)» — это просто Получить запрос дескриптора со старшим байтом wValue установлен на 2.

Получить дескриптор (конфигурация)

Дескриптор Get (конфигурация) требует специального объяснения, потому что запрос не дает возвращается только дескриптор конфигурации, но также некоторые или все из ряда других дескрипторов:

  • Дескриптор интерфейса
  • Дескриптор конечной точки
  • Дескриптор OTG
  • Дескрипторы класса
  • Дескрипторы, зависящие от поставщика

A Получить дескриптор конфигурации получает дескрипторы только для одной конфигурации в зависимости от индекс дескриптора в wValue пакета SETUP.Большинство устройств иметь только одну конфигурацию, потому что встроенные драйверы Windows всегда выберите первую конфигурацию.

Диаграмма напротив показывает типичный набор извлекаемых дескрипторов. Это начинается с дескриптор конфигурации, а вертикальное положение показывает правильная последовательность, с интерфейсами, которые обрабатываются по очереди, за каждой следуют собственные конечные точки.

Позиция класса дескрипторы определены в соответствующей спецификации класса, и конечно, позиции дескриптора поставщиков будут зависеть от поставщика обеспокоен.

Позиция дескриптора OTG не определен, но обычно появляется сразу после конфигурации дескриптор.

Дескриптор конфигурации

Дескриптор конфигурации формат показан справа.

Значение wTotalLegth важно, потому что он сообщает хосту, сколько байтов содержится в этом дескрипторе и во всех последующих дескрипторах.

bNumInterfaces описывает сколько интерфейсов поддерживает эта конфигурация.

Смещение

Поле

Размер

Значение

Описание

0

b Длина

1

Номер

Размер этого дескриптора в байтах

1

bDescriptorType

1

Константа

КОНФИГУРАЦИЯ тип дескриптора (= 2)

2

w Общая длина

2

Номер

Всего количество байтов в этом дескрипторе и во всех следующих дескрипторах.

4

b Количество интерфейсов

1

Номер

Номер интерфейсов, поддерживаемых данной конфигурацией

5

bConfigurationValue

1

Номер

Стоимость используется программой Set Configuration для выбора этой конфигурации

6

iConfiguration

1

Индекс

Индекс строкового дескриптора, описывающего конфигурацию — устанавливается в 0, если без строки

7

bmA Атрибуты

1

Растровое изображение

D7: Должен быть установлен на 1
D6: Автономный
D5: Удаленное пробуждение
D4…D0: Установить на 0

8

bMaxPower

1

мА

Максимум ток, потребляемый устройством в этой конфигурации.В единицах 2 мА. Итак, 50 означает 100 мА.

Конфигурация Дескриптор
Дескриптор интерфейса

Дескриптор интерфейса формат показан справа.

bAlternateНастройка какое-то объяснение. У интерфейса может быть несколько вариантов, и эти варианты можно переключать, в то время как другие интерфейсы все еще в эксплуатации.

Для первого (и по умолчанию) альтернативный параметр bAlternateSetting всегда равен 0.

Иметь второй интерфейс вариант, за дескриптором интерфейса по умолчанию будет следовать его дескрипторы конечных точек, за которыми будет следовать альтернативный дескриптор интерфейса, а затем его дескрипторов конечной точки .

bInterfaceClass, bInterfaceSubClass и bInterfaceProtocol

Определив класс, подкласс и протокол в интерфейсе, возможно наличие интерфейсов с разными классами в одном устройстве.Это называется Составной прибор .

Смещение

Поле

Размер

Значение

Описание

0

b Длина

1

Номер

Размер этого дескриптора в байтах

1

bDescriptorType

1

Константа

ИНТЕРФЕЙС тип дескриптора (= 4)

2

b Номер интерфейса

1

Номер

Номер идентификация этого интерфейса.Отсчитываемое от нуля значение.

3

bAlternateSetting

1

Номер

Стоимость используется для выбора этой альтернативной настройки для этого интерфейса.

4

bNumEndpoints

1

Номер

Номер конечных точек, используемых этим интерфейсом.Не включает контроль конечная точка 0.

5

b Интерфейс Класс

1

Класс

Класс код, присвоенный USB-IF
00ч зарезервированное значение
FFh означает определяемый поставщиком класс
Любая другое значение должно быть кодом класса

6

b Интерфейс Подкласс

1

Подкласс

Подкласс Код, присвоенный USB-IF

7

b Протокол интерфейса

1

Протокол

Протокол Код, присвоенный USB-IF

8

iInterface

1

Индекс

Индекс строкового дескриптора, описывающего интерфейс — установить в 0, если нет строки
Интерфейс Дескриптор
Дескриптор конечной точки

Дескриптор конечной точки формат показан справа.

Смещение

Поле

Размер

Значение

Описание

0

b Длина

1

Номер

Размер этого дескриптора в байтах

1

bDescriptorType

1

Константа

КОНЕЧНАЯ ТОЧКА тип дескриптора (= 5)

2

bEndpointAddress

1

Конечная точка

Адрес этой конечной точки в устройстве.

D7: направление
0 = ВЫХ, 1 = ВХОД

D6-D4: Установить на 0

D3-D0: Номер конечной точки

3

bmA Атрибуты

1

Растровое изображение

D1: 0 Тип передачи
00 = Контроль
01 = Изохронный
10 = Навалом
11 = Прерывание
The следующее относится только к изохронным конечным точкам.Другой набор до 0.
D3: 2 Тип синхронизации
00 = Нет синхронизации
01 = Асинхронный
10 = Адаптивный
11 = синхронный
D5: 4 Тип использования
00 = Конечная точка данных
01 = конечная точка обратной связи
10 = Неявная обратная связь Конечная точка данных
11 = Зарезервировано
D7: 6 Зарезервировано
Набор на номер 0

4

wMaxPacketSize

2

Номер

Максимум размер пакета, который эта конечная точка может отправлять или получать, когда эта конфигурация выбрано

6

b Интервал

1

Номер

Интервал для опроса конечной точки для передачи данных.Выражено в кадрах (мс) для низкой / полной скорости или микрофреймы (125us) для высокой скорости.
Конечная точка Дескриптор
Получить дескриптор (строка)

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

  • Строка производителя
  • Строка продукта
  • Строка серийного номера

Эти строки необязательны.Если не поддерживается, соответствующий индекс в дескрипторе устройства будет 0. В противном случае хост может использовать указанный индекс в Get Запрос дескриптора (строка) для получения дескриптора.

Получить дескриптор (строка), с индексом дескриптора 0 в младшем байте wValue, используется для получения дескриптора специального строкового языка. Это содержит серию спецификаторов языка размером 2 байта.Теоретически, если язык по вашему выбору поддерживается в этом списке, вы можете использовать индекс к этому идентификатору языка для доступа к строковым дескрипторам на этом языке указав это в wIndex запроса Get Descriptor (String). На практике с Windows у вас будут трудности, если вы сделаете не гарантируйте, что первым выбранным языком является английский (США).

Смещение

Поле

Размер

Значение

Описание

0

b Длина

1

Номер

Размер этого дескриптора в байтах

1

bDescriptorType

1

Константа

СТРОКА тип дескриптора (= 3)

2

WLANGID [0]

2

Номер

LANGID Код 0

2 + х * 2

WLANGID [x]

2

Номер

LANGID Код x

Строка Нулевой дескриптор
(указывает поддерживаемые строковые языки)

Смещение

Поле

Размер

Значение

Описание

0

b Длина

1

Номер

Размер этого дескриптора в байтах

1

bDescriptorType

1

Константа

СТРОКА тип дескриптора (= 3)

2

bString

2

Номер

UNICODE закодированная строка

Строка Дескриптор

НАБОР_КОНФИГУРАЦИЯ

Когда хост получил вся необходимая информация загружает драйвер для устройства на основе комбинации VID / PID в дескрипторе устройства или на стандартный класс, определенный там или в дескрипторе интерфейса.

Также водитель может спросить для той же или другой информации с помощью запросов Get Descriptor.

В конце концов решит на настройте устройство с помощью запроса SET_CONFIGURATION. Обычно (при наличии одной конфигурации) Set Configuration В запросе wValue будет установлено значение 1, что выберет первую конфигурацию.

Установить конфигурацию можно также может использоваться с параметром wValue, равным 0, для деконфигурирования устройства.

Настроенное устройство

После того, как устройство настроен, разрешено отвечать на другой перевод типы, чем контрольные передачи.

Как мы видели, остальные типы переводов —

  • Прерывание передачи
  • Массовые переводы
  • Изохронный Трансферы

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

Это все эти дополнительные переводы, которые выполняют функции, которые устройство было разработано для.

GET_CONFIGURATION

Этот запрос соответствует Установите конфигурацию и просто позволяет хосту определять, какой конфигурация, которую он установил ранее.

НАБОР_ФУНКЦИЯ
ОЧИСТКА_ФУНКЦИЯ

Эта пара запросов используется для управления небольшим количеством функций включения-выключения на устройстве, интерфейс или конечная точка.

Устройство имеет 5 возможных функции, конечная точка имеет один, а интерфейс фактически не имеет совсем.

Затененные черты Показанные в таблице относятся только к устройствам OTG.

ENDPOINT_HALT

Настройка этой функции заставит конечную точку ОСТАНОВИТЬ любые транзакции IN или OUT.

DEVICE_REMOTE_WAKEUP

Настройка этой функции позволяет устройству, которое затем приостановлено, использовать сигнализацию возобновить чтобы привлечь внимание хозяина.

Особенность Селектор

Получатель

Значение

ENDPOINT_HALT

Конечная точка

0

DEVICE_REMOTE_WAKEUP

Устройство

1

РЕЖИМ ТЕСТА

Устройство

2

B_HNP_ENABLE

Устройство

3

A_HNP_SUPPORT

Устройство

4

A_ALT_HNP_SUPPORT

Устройство

5

Стол wValues, используемых в запросах Set Feature и Clear Feature.
GET_STATUS

Этот запрос используется для получения битов состояния от устройства, интерфейса или конечной точки. В каждом случае запрос выбирает 16 бит (2 байта). Таблицы для справа показаны биты состояния, которые реализованы в настоящее время.

Обратите внимание, что удаленное пробуждение И биты состояния останова могут управляться хостом с помощью Set.Очистить Запросы функций, но бит автономного питания контролируется только Устройство.

Статус Бит Назначение Комментарий

D0

Самостоятельная Работает

комплект на 1 устройством при автономном питании

D1

Пульт Пробуждение

комплект на 1, если устройство было включено для удаленного пробуждения.

D2 — D15

зарезервировано

Должен установить на 0
Устройство Биты состояния
Статус Бит Назначение Комментарий

D0 — D15

зарезервировано

Должен установить на 0
Интерфейс Биты состояния
Статус Бит Назначение Комментарий

D0

Остановка

комплект в 1, когда конечная точка остановлена ​​

D1 — D15

зарезервировано

Должен установить на 0
Конечная точка Биты состояния
SET_INTERFACE
GET_INTERFACE

После того, как устройство настроенный хост может использовать Set Interface для выбора альтернативы интерфейс к определенному интерфейсу по умолчанию.Он может использовать Get Интерфейс для определения альтернативы интерфейса, установленной ранее для конкретного интерфейса.

SYNCH_FRAME

Используется с некоторыми изохронная передача, при которой размер передачи зависит от кадра. См. Более подробную информацию в спецификации USB 2.0.

SET_DESCRIPTOR

Это стандартный запрос не является обязательным и используется не часто. Это позволяет хосту указать новый набор значений для данного дескриптора. Трудно себе представить когда это может быть полезно.

Сводка

Мы рассмотрели набор стандартных запросов, которые устройство должно поддерживать, чтобы стать работоспособным.

Скоро …

Далее рассмотрим полный перебор и начало работы конкретного устройства.

Вперед

Авторские права © 2006-2008 ООО «МКП Электроникс»

РЕКЛАМА

Мастер пакетов Анализаторы и генераторы шин USB от MQP Electronics
  • Радикально сократить время разработки
  • Интуитивно понятный графический интерфейс
  • Подробный информация о времени
  • Полный анализ всех стандартных событий
  • Результаты можно распечатать
  • Дополнительно модули анализа классов
.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *