Comments 36
USB (Ю)
Зачем? Это же всего 3 буквы.
+13
Чтоб не переключать раскладку? ;)
+5
Приз в студию )
+3
Переключатель раскладки на CapsLock для этого весьма удобен. Даже очень. Но дело привычки.
0
Вообще то я привык работать с клавиатурой, на которой были клавиши РУС и ЛАТ — кто видел, тот поймет о чем речь.
0
15-ИЭ-0013?
0
Видел, но уже не щупал. На современных компах такой вариант тоже вполне можно сделать, если привычней: habrahabr.ru/post/156779
0
Очень интересный пост, спасибо.
Вопрос: где можно почитать о программной реализации Low-speed USB интерфейса на выводах общего назначения (GPIO)?
Как вы решили для себя вопрос Vendor ID и драйверов? Пишете драйвера под ОС сами? Что насчет Microsoft Driver Signing? Можно ли делать драйвера USB-устройств, используя UMDF, чтобы не нужно было платить за их испытания и сертификацию?
Вопрос: где можно почитать о программной реализации Low-speed USB интерфейса на выводах общего назначения (GPIO)?
Как вы решили для себя вопрос Vendor ID и драйверов? Пишете драйвера под ОС сами? Что насчет Microsoft Driver Signing? Можно ли делать драйвера USB-устройств, используя UMDF, чтобы не нужно было платить за их испытания и сертификацию?
0
Ну в первую очередь на Atmel у них там лежат AppNotes с исходниками. Есть перевод www.gaw.ru/html.cgi/txt/app/micros/avr/AVR309.htm
У Microchip тоже было и тоже в аппах, но мне AVR ближе.
Вообще очень увлекательное чтение исходников, после того, как я их понял, вопросов по USB стало намного меньше, так что программную реализацию можно рекомендовать просто для понимания работы интерфейса.
С VID и PID то же что и все — изготовитель STM номер с демо платы. Конечно же так нельзя а что делать?
Жду пока кто-нить начнет продавать ПЗУ с уникальными номерами, как сделали с MAC адресами.
У Microchip тоже было и тоже в аппах, но мне AVR ближе.
Вообще очень увлекательное чтение исходников, после того, как я их понял, вопросов по USB стало намного меньше, так что программную реализацию можно рекомендовать просто для понимания работы интерфейса.
С VID и PID то же что и все — изготовитель STM номер с демо платы. Конечно же так нельзя а что делать?
Жду пока кто-нить начнет продавать ПЗУ с уникальными номерами, как сделали с MAC адресами.
+1
А смотря какие девайсы. По сути, ты можешь брать любой VID, без покупки у USB-IF, можешь ещё какие допущения делать, но если ты начнешь продавать такие девайсы с наклейкой «USB бла бла», то можно отгрести по шапке. Ну и конфликты на твоей совести. По поводу дров: тут тоже от девайса зависит. Можешь делать стандартные классы: HID, UVC, UAC и т.д., тогда будут использоваться стандартные, либо вообще возиться с устройством при помощи libusb (на винде isochronous передачу не поддерживает), плюс девайсу можно, начиная с Win8 автоматом зарегистрировать WinUSB драйвер (нужен для libusb), либо устанавливать его из приложухи (курить в сторону zadig и libwdi).
Попробую спросить, если не забуду.
Выше уже написали про V-USB, добавлю сюда TinyUSB.
Кстати, если вдруг захочется USB 3.0, то можно поглядеть на Cypress EZ-FX3. Всем хорош, но дорогой, зараза.
Что насчет Microsoft Driver Signing? Можно ли делать драйвера USB-устройств, используя UMDF, чтобы не нужно было платить за их испытания и сертификацию?
Попробую спросить, если не забуду.
Вопрос: где можно почитать о программной реализации Low-speed USB интерфейса на выводах общего назначения (GPIO)?
Выше уже написали про V-USB, добавлю сюда TinyUSB.
Кстати, если вдруг захочется USB 3.0, то можно поглядеть на Cypress EZ-FX3. Всем хорош, но дорогой, зараза.
+1
По сути, ты можешь брать любой VID, без покупки у USB-IF
Я бы для коммерческих устройств так не делал. Как-то совсем несерьезно.
А вообще, интерфейс USB разрабатывался уже тогда, когда были микросхемы/контроллеры с достаточной памятью, чтобы разместить в ней 128-битное число (UUID). Да и сложность протокола предполагает, что на 155й рассыпухе USB-интерфейс не реализовать в разумных габаритах. Поэтому то, что они зарезервировали только 16 бит на VID — это намеренно с целью впоследствии получать деньги из воздуха за продажу VID.
Ну а так, спасибо за вашу информацию и рекоммендации. Должно пригодиться!
0
Я бы для коммерческих устройств так не делал. Как-то совсем несерьезно.
Если я правильно понял, то, у компании, на которую мы сейчас аутсорсим, до недавнего времени и был такой вот «блатной» VID. Официальный купили только недавно. Компания достаточно известная в определённой сфере. Но вообще — да, я с вами полностью согласен.
0
Одно но, покупая VID, вы так же обязуетесь выполнять определённые требования, что бы вы могли без зазрения совести ставить на девайсе USB-compatible. В частности, устройство должно соответствовать определённым требованиям. Компании, которая заплатила немалые деньги за VID, как-то стрёмно будет его потерять, если они не будут обеспечивать какой-то минимальный уровень соответствия своих девайсов требованиям. Подробности нужно гуглить, меня больше интересовали технические аспекты, но суть, примерно в этом.
0
Разумеется, стандарты надо соблюдать, и даже если я не хочу платить шальные деньги за сертификационные испытания — мне будет спокойнее, если мое устройство максимально соответствует стандарту. Иначе пойдут рекламации, возвраты, траты времени и средств на техподдержку. Или того хуже — судебные иски.
0
есть предопределенные VID и PID, за которые нет нужды платить. К ним точно относится HID, и вероятно какая то версия CDC.
Если вы делаете устройство для себя, то нет нужды лицензировать такой интерфейс. Это справедливо и для теста. Если же на продажу, то вопрос уже переползает в коммерческую сторону с вытекающим ответом.
Если вы делаете устройство для себя, то нет нужды лицензировать такой интерфейс. Это справедливо и для теста. Если же на продажу, то вопрос уже переползает в коммерческую сторону с вытекающим ответом.
+1
HID-классы и VID-PID не связаны. При одинаковых идентификаторах, HID может быть любым. Но готовьтесь к проблемам, с такими устройствами. Если классы разные, при одновременном подключении, работать будет только одно из них.
0
Тогда по вашему выражению получается так, что два устройства на одинаковом чипе от FTDI не должны функционировать вместе. В реальности очень даже работают. При этом пары совпадают. Есть еще уникальный идентификатор устройства, привязанный к конкретной шине USB.
0
Не мешайте тёплое с мягким: класс устройства — это всего лишь набор дескрипторов, обязательный из которых только один (если не ошибаюсь) — device descriptor, который, собственно, и содержит в себе 2 байта VID и 2 байта PID. Остальные дескрипторы определяют или стандартизированные классы, типа HID, CDC и иже с ними, и тогда с ними может работать какой-то стандартный драйвер (много вы на клаву ставите дров?), или какой-то свой кастом, для работы с которым нужен или свой драйвер или user-space утилита (libusb, но в винде нужен generic драйвер WinUSB, выше писал уже). Кроме того класс устройства определяет протокол общения с ним, который описан и стандартизирован (как и сами дескрипторы): www.usb.org/developers/docs/devclass_docs
По поводу бесплатных VID:PID — есть оные для прототипов. Ещё раньше практиковалось: компания покупает один или несколько VID и продаёт нуждающимся конкретные пары VID:PID, что выходило существенно дешевле и было выгодно для всякой мелкосерийки. Но USB-IF в какой-то момент начало с этим бороться. Подробностей не скажу. Можно попытаться нагуглить такое, может отголоски ещё существуют.
По поводу бесплатных VID:PID — есть оные для прототипов. Ещё раньше практиковалось: компания покупает один или несколько VID и продаёт нуждающимся конкретные пары VID:PID, что выходило существенно дешевле и было выгодно для всякой мелкосерийки. Но USB-IF в какой-то момент начало с этим бороться. Подробностей не скажу. Можно попытаться нагуглить такое, может отголоски ещё существуют.
+2
Ну и по поводу бесплатных VID:PID: www.opennet.ru/opennews/art.shtml?num=41978 либо делать так: bsvi.ru/pismo-v-usb-org (подтверждение через отрицание) :)
0
Никто не будет ставить полноценный USB в МК промназначения, там нужнее CAN.
0
Эт точно.
На Саяно-Шушенской ГЭС стояли датчики вибрации подключенные по USB.
Как известно ими не пользовались либо не обращали внимания. Видимо отваливались часто.
И что с этой ГЭС стало все знают.
В промконтроллерах строго либо RS485, либо CAN, либо последняя мода — EtherCAT
А выбирая контроллер с USB еще очень важно планировать заранее от чего он будет тактироваться.
Может оказаться, что одни скоростные интерфейсы (тот же Ethernet) по частотам не совместимы с частотами нужными для USB.
Лучше когда SoC имеет для USB свой отдельный генератор.
На Саяно-Шушенской ГЭС стояли датчики вибрации подключенные по USB.
Как известно ими не пользовались либо не обращали внимания. Видимо отваливались часто.
И что с этой ГЭС стало все знают.
В промконтроллерах строго либо RS485, либо CAN, либо последняя мода — EtherCAT
А выбирая контроллер с USB еще очень важно планировать заранее от чего он будет тактироваться.
Может оказаться, что одни скоростные интерфейсы (тот же Ethernet) по частотам не совместимы с частотами нужными для USB.
Лучше когда SoC имеет для USB свой отдельный генератор.
0
И что с этой ГЭС стало все знают.
Неужели это из-за датчиков? ;)
+3
Правильное замечание насчет тактирования, но во всех контроллерах с PHY USB, которые я видел, был дополнительный резонатор (на 25 МГц), поэтому я и решил, что это как бы безусловно есть.
0
По поводу ГЭС:
Нет плохих судов, нет плохих ветров, есть плохие капитаны.
Нет плохих судов, нет плохих ветров, есть плохие капитаны.
0
Судя по количеству аббревиатур, отсутствию «воды» в тексте и вообще предельно насыщенному изложению, автор явно начинал работать еще во времена i8051.
+2
И, в целом, это правильно. Не хватает, правда, пару примеров железяк, у которых есть USB, но есть узкие места в реализации…
Хотя, вспоминаю одну статью с цветомузыкой, где автор схему разбил на блоки функциональные, обозвал их аббревиатурами, и потом ими оперировал… но и это было в тему.
Хотя, вспоминаю одну статью с цветомузыкой, где автор схему разбил на блоки функциональные, обозвал их аббревиатурами, и потом ими оперировал… но и это было в тему.
0
Более того, автор начинал еще во времена i8048 (1816ВЕ48) и у меня в 4кбайт УФ ПЗУ жила телефонная станция.
Так что, когда я приобрел 1816ВЕ51 и к нему электрически!!! стираемое ППЗУ на 16 кбайт, то понял, что теперь то я смогу сделать все, что угодно. И многое делал, хотя и не все.
Кстати по поводу отсутствия «воды» — это действительно так или тонкий троллинг? Дело в том, что я пытаюсь писать лаконично, но все время что то постороннее врывается в текст. Это действительно не раздражает, мои легкие лирические отступления? Все-таки стиль типа «Он пошел, она сказал» мне кажется суховатым.
Раз уж зашел разговор о сжатости текста, позволю себе процитировать роман Хема в шесть слов
«Продается детская обувь, ни разу не надевалась» и что бы там не думали критики, это действительно роман.
Так что, когда я приобрел 1816ВЕ51 и к нему электрически!!! стираемое ППЗУ на 16 кбайт, то понял, что теперь то я смогу сделать все, что угодно. И многое делал, хотя и не все.
Кстати по поводу отсутствия «воды» — это действительно так или тонкий троллинг? Дело в том, что я пытаюсь писать лаконично, но все время что то постороннее врывается в текст. Это действительно не раздражает, мои легкие лирические отступления? Все-таки стиль типа «Он пошел, она сказал» мне кажется суховатым.
Раз уж зашел разговор о сжатости текста, позволю себе процитировать роман Хема в шесть слов
«Продается детская обувь, ни разу не надевалась» и что бы там не думали критики, это действительно роман.
+1
Сокращения правда лишнее… Читать немного напрягает. Очущение, как будто читаешь документацию советского периода. Автозамена есть во всех нормальных wordprocessor'ах. Лирические отступления нужны, чай не документацию и не дожностную инструкцию пишите…
Вместо сокращений я бы привёл английское название терминов, чтобы потом, читая даташиты, понимать о чем речь… Ну и кратенький обзор МК c которыми работали (их явно больше чем два) был бы не лишний.
А так, да… Очень полезная статья. Такое в мануалах не вычитаешь…
Вместо сокращений я бы привёл английское название терминов, чтобы потом, читая даташиты, понимать о чем речь… Ну и кратенький обзор МК c которыми работали (их явно больше чем два) был бы не лишний.
А так, да… Очень полезная статья. Такое в мануалах не вычитаешь…
0
А по мне еще надо разбавить какими-нибудь картинками по теме, между абзацами. Для придания популяризационности статье.
0
Sign up to leave a comment.
В этом МК есть USB?