Например TDA7294

Форум РадиоКот • Просмотр темы - Не получается разобраться с usb
Форум РадиоКот
Здесь можно немножко помяукать :)



Текущее время: Сб дек 05, 2020 13:56:30

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 28 ]  1,  
Автор Сообщение
Не в сети
 Заголовок сообщения: Не получается разобраться с usb
СообщениеДобавлено: Вт окт 01, 2019 14:32:39 
Родился

Зарегистрирован: Вт дек 26, 2017 15:43:12
Сообщений: 4
Рейтинг сообщения: 0
Здравствуйте, хочу разобраться с usb. Для примера решил сделать custom hid устройство. Так вот написал самодельный драйвер на CMSIS. Устройство определяется в системе правильно. Но передача данных не работает. По сообщениям в анализаторе судя по всему драйверу не нравятся string дескрипторы. Почему не знаю. Если сгенерировать код в кубе то же самое. В чем может быть проблема? Если есть рабочий пример на f429zit скиньте пожалуйста.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Не получается разобраться с usb
СообщениеДобавлено: Сб окт 05, 2019 11:07:47 
Собутыльник Кота
Аватар пользователя

Карма: 25
Рейтинг сообщений: 641
Зарегистрирован: Сб май 14, 2011 21:16:04
Сообщений: 2637
Откуда: г. Чайковский
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
https://radiokot.ru/forum/viewtopic.php ... 0%BA%D0%B0

_________________
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.


Вернуться наверх
 
JLCPCB, всего $2 за прототип печатной платы! Цвет - любой!

Отличное качество, подтвержденное более чем 600,000 пользователей! Более 10,000 заказов в день.

Зарегистрируйтесь и получите два купона по 5$ каждый:https://jlcpcb.com/quote

Не в сети
 Заголовок сообщения: Re: Не получается разобраться с usb
СообщениеДобавлено: Сб окт 05, 2019 11:18:24 
Опытный кот

Карма: -3
Рейтинг сообщений: 24
Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 735
Рейтинг сообщения: 0
А строковые дескрипторы правильно передаются? Если дескриптор длинней 63 символов, его надо в несколько заходов отправлять. Я когда HID делал, намучился, сделал так. Потом начал лепить CDC ACM, пришлось подобным же образом реализовать функцию отправки остальных дескрипторов (т.к. дескриптор устройства вылез за пределы 63 байт, чего в эмуляции PL2303 не было).

P.S. От custom HID никакой пользы нет! Делайте CDC!!!

_________________
Я на гитхабе, в ЖЖ


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Шестое юбилейное мероприятие в процессе
Не в сети
 Заголовок сообщения: Re: Не получается разобраться с usb
СообщениеДобавлено: Сб окт 05, 2019 12:03:17 
Друг Кота
Аватар пользователя

Карма: 3
Рейтинг сообщений: 120
Зарегистрирован: Пн окт 11, 2010 19:00:08
Сообщений: 3051
Рейтинг сообщения: 0
Eddy_Em писал(а):
От custom HID никакой пользы нет!
В винде HID позволяет ставить дрова автоматически и подключаться к устройству без прав администратора.


Вернуться наверх
 
Вебинар «Практическое использование TrustZone в STM32L5»(10.12.2020)

Приглашаем на вебинар, посвященный экосистеме безопасности и возможностях, которые появились у разработчиков благодаря новой технологии TrustZone в микроконтроллерах STM32L5. Программа рассчитана на технических специалистов и тех, кто уже знаком с основами защиты ПО в STM32.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Не получается разобраться с usb
СообщениеДобавлено: Сб окт 05, 2019 12:04:54 
Собутыльник Кота
Аватар пользователя

Карма: 25
Рейтинг сообщений: 641
Зарегистрирован: Сб май 14, 2011 21:16:04
Сообщений: 2637
Откуда: г. Чайковский
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
А мне нравится HID. Ни драйверов специальных, не надо приложению говорить на каком порту девайс висит. Сложнее обмен только делать. Свое надо городить.

_________________
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.


Вернуться наверх
 
SiC MOSFET = высокий КПД источника питания

650 В карбид-кремниевые (SiC) MOSFET компании Wolfspeed имеют самый низкий в отрасли показатель сопротивления открытого канала и наименьшую его зависимость от температуры, что дает им преимущество не только перед обычными кремниевыми (Si) 650 В MOSFET, но и перед нитрид-галлиевыми транзисторами.

Читать статью>>
Не в сети
 Заголовок сообщения: Re: Не получается разобраться с usb
СообщениеДобавлено: Сб окт 05, 2019 12:14:37 
Друг Кота
Аватар пользователя

Карма: 3
Рейтинг сообщений: 120
Зарегистрирован: Пн окт 11, 2010 19:00:08
Сообщений: 3051
Рейтинг сообщения: 0
Z_h_e писал(а):
Сложнее обмен только делать. Свое надо городить.
Через COM порт не нужно придумывать (или использовать готовый) протокол обмена.
С USB проще в том что пакеты делятся на 64 байта и в большинстве случаев данные в них помещаются, т. е. не нужно как с COM портом искать начало и конец посылки.


Вернуться наверх
 


Не в сети
 Заголовок сообщения: Re: Не получается разобраться с usb
СообщениеДобавлено: Сб окт 05, 2019 12:22:47 
Собутыльник Кота
Аватар пользователя

Карма: 25
Рейтинг сообщений: 641
Зарегистрирован: Сб май 14, 2011 21:16:04
Сообщений: 2637
Откуда: г. Чайковский
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Мурик, я так и написал, что с HIDoм надо свое городить, то есть в отличии от CDC.

_________________
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.


Вернуться наверх
 


Не в сети
 Заголовок сообщения: Re: Не получается разобраться с usb
СообщениеДобавлено: Сб окт 05, 2019 13:10:13 
Друг Кота
Аватар пользователя

Карма: 3
Рейтинг сообщений: 120
Зарегистрирован: Пн окт 11, 2010 19:00:08
Сообщений: 3051
Рейтинг сообщения: 0
С COM портом разве не нужно? Как без протокола обмена понять где какие данные?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Не получается разобраться с usb
СообщениеДобавлено: Сб окт 05, 2019 13:16:32 
Собутыльник Кота
Аватар пользователя

Карма: 25
Рейтинг сообщений: 641
Зарегистрирован: Сб май 14, 2011 21:16:04
Сообщений: 2637
Откуда: г. Чайковский
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Разные уровни протокола нужны будут. Тот уровень что для HID, для COM будет прозрачен. Со стороны компа.

_________________
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Не получается разобраться с usb
СообщениеДобавлено: Вт окт 08, 2019 19:03:51 
Опытный кот

Карма: -3
Рейтинг сообщений: 24
Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 735
Рейтинг сообщения: 0
А мне нравится HID. Ни драйверов специальных, не надо приложению говорить на каком порту девайс висит. Сложнее обмен только делать. Свое надо городить.

Для работы с HID на стадии отладки ПО невозможно просто взять, и сделать
Код:
еchо "команды" > /dev/ttyUSBx

Это очень удобно с текстовым командным протоколом. Кроме того, у CDC и скорость значительно выше, чем у HID! А если нет полномочий суперпользователя, а очень хочется, можно и в юзерспейсе сделать посредника... В случае с HID всегда нужно сначала набросать какой-то костяк, прежде чем станет возможным с девайсом работать (разве что девайс - эмуляция клавы-мыши-джойстика). Поэтому лично я считаю, что HID на МК нужен лишь для эмуляции названных устройств. У меня старая версия велохронометра так и работала - эмулировала клавиатуру. Но было неудобно работать: приходилось вручную время вбивать с одного устройства в другое. Поэтому переделал на CDC.

_________________
Я на гитхабе, в ЖЖ


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Не получается разобраться с usb
СообщениеДобавлено: Вт окт 08, 2019 19:29:27 
Друг Кота
Аватар пользователя

Карма: 3
Рейтинг сообщений: 120
Зарегистрирован: Пн окт 11, 2010 19:00:08
Сообщений: 3051
Рейтинг сообщения: 0
Eddy_Em писал(а):
Для работы с HID на стадии отладки ПО невозможно просто взять, и сделать
Вы не умеете писать проги для компа производящие обмен по USB?

Eddy_Em писал(а):
Это очень удобно с текстовым командным протоколом.
В большинстве случаев обмен компа с МК бинарный, т. к. перевод в текст это лишняя трата ресурсов.

Eddy_Em писал(а):
А если нет полномочий суперпользователя
Ставьте винду. В ней работа с HID не требует прав админа. С COM портом тоже. Для того и другого есть API.
А в линуксе есть API для HID или только через libusb?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Не получается разобраться с usb
СообщениеДобавлено: Вт окт 08, 2019 19:34:51 
Опытный кот

Карма: -3
Рейтинг сообщений: 24
Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 735
Рейтинг сообщения: 0
Мурик писал(а):
Вы не умеете писать проги для компа производящие обмен по USB?

Умею, но зачем мне лишние трудности на стадии отладки протокола и алгоритмов работы устройства? Я просто открываю терминал и работаю. А некоторые железяки у меня вообще так и запускаются из баш-скриптов: в порт пишутся команды и читаются оттуда обычными командами еchо и read.
Мурик писал(а):
В большинстве случаев обмен компа с МК бинарный, т. к. перевод в текст это лишняя трата ресурсов.

Бинарный протокол нужен лишь если требуется гнать большие массивы данных. В остальных случаях сериализация удобней!
Мурик писал(а):
Ставьте винду.

Зачем людям советовать есть фекалии?
Мурик писал(а):
А в линуксе есть API для HID или только через libusb?

Два варианта: либо написать свой модуль ядра и работать через open/read/write/close и сисвызовы с устройством, либо в пространстве пользователя через libusb.
Да, с custom HID я связывался только один раз. И то - по нужде: нужно было для фотометра применить готовые турели. А производители, сволочи, никакого SDK в комплекте не давали. И протокол зажопили. Пришлось искать комп с мастдайкой и при помощи wireshark'а реверсить протокол. Получилось вот это.

_________________
Я на гитхабе, в ЖЖ


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Не получается разобраться с usb
СообщениеДобавлено: Вт окт 08, 2019 19:42:22 
Друг Кота
Аватар пользователя

Карма: 3
Рейтинг сообщений: 120
Зарегистрирован: Пн окт 11, 2010 19:00:08
Сообщений: 3051
Рейтинг сообщения: -1
Eddy_Em писал(а):
Бинарный протокол нужен лишь если требуется гнать большие массивы данных. В остальных случаях сериализация удобней!
Знаете как осуществляется сериализация бинарных данных? Берется структура и заполняется данными, включая ИД команды размером и контрольной суммой и отправляется. При приеме данные помещаются в структуру и считываются из нее.

Eddy_Em писал(а):
Два варианта: либо написать свой модуль ядра и работать через open/read/write/close и сисвызовы с устройством, либо в пространстве пользователя через libusb.
Тогда понятно почему вы не понимаете преимуществ HID. В винде есть API позволяющее получить доступ к устройству без разработки и установки драйверов и прав администратора.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Не получается разобраться с usb
СообщениеДобавлено: Вт окт 08, 2019 19:45:29 
Опытный кот

Карма: -3
Рейтинг сообщений: 24
Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 735
Рейтинг сообщения: 0
Мурик, можно подумать, для функционала libusb нужны права суперпользователя...
Те же яйца!
Только удобней намного. В мастдайке вообще разработка железа - как выдирание гланд у себя самого при помощи раскаленного лома через задницу!

_________________
Я на гитхабе, в ЖЖ


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Не получается разобраться с usb
СообщениеДобавлено: Ср окт 09, 2019 07:01:53 
Это не хвост, это антенна
Аватар пользователя

Карма: 10
Рейтинг сообщений: 226
Зарегистрирован: Вт май 01, 2018 19:44:47
Сообщений: 1421
Рейтинг сообщения: -1
Eddy_Em, уж кто бы говорил :)
Самому патчить st-flash уж очень неохота!
Иногда задаёшься вопросом, а красноглазики вообще работать между патченьем и пересборкой всего софта успевают?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Не получается разобраться с usb
СообщениеДобавлено: Ср окт 09, 2019 07:04:29 
Опытный кот

Карма: -3
Рейтинг сообщений: 24
Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 735
Рейтинг сообщения: 0
А я постоянно задаюсь вопросом: как геймеры успевают работать? Им же постоянно нужно сражаться с мышкой!
В операционных системах же все просто: нужен тебе софт, которого нет — напиши его сам. А вот пользователям игровых приставок, которые ничего не умеют, кроме как мышеблудием заниматься, приходится платить за ПО... Да еще и, бедняги, мучаются в совершенно неюзабельном интерфейсе. Но терпят — зонд не жмет!

_________________
Я на гитхабе, в ЖЖ


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Не получается разобраться с usb
СообщениеДобавлено: Ср окт 09, 2019 07:31:33 
Это не хвост, это антенна
Аватар пользователя

Карма: 10
Рейтинг сообщений: 226
Зарегистрирован: Вт май 01, 2018 19:44:47
Сообщений: 1421
Рейтинг сообщения: 0
У тебя мусофобия? Хочешь об этом поговорить? :) Давно ты видел компьютер без мышки или тачпада?
Изображение

Написать самому софт под win Ктулху не разрешает?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Не получается разобраться с usb
СообщениеДобавлено: Ср окт 09, 2019 07:52:31 
Опытный кот

Карма: -3
Рейтинг сообщений: 24
Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 735
Рейтинг сообщения: 0
Ну вот, одни работают подходящими и эффективными инструментами, а другие демагогию о "мусофобии" разводят. И ничего полезного не делают, только руками водят. Руководители, блин!
P.S. Советую сравнить время, затраченное на написание софта для работы с железом под линукс и под игровые приставки. Разница во времени будет поразительная: то, что в линуксе делается за день, в прошивке потребует неделю корпеть над кодом! я уж не говорю об элементарных удобствах: отсутствие полноценной командной строки в прошивке делает ее абсолютно неюзабельной. Но крысолюбам это, похоже, нравится! Видимо, иметь переменную PATH длиной в несколько страниц — круто!

_________________
Я на гитхабе, в ЖЖ


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Не получается разобраться с usb
СообщениеДобавлено: Ср окт 09, 2019 07:55:13 
Друг Кота
Аватар пользователя

Карма: 110
Рейтинг сообщений: 1963
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 15743
Откуда: Московская область
Рейтинг сообщения: 0
Я просто открываю терминал и работаю.

Проблема только в том, что в РЕАЛЬНЫХ устройствах созданных как товар софт предназначен для юзера, а не для разработчика. Мало того, этот юзер сам определяет с какой ОС ему требуется работать. И в 99,99% случаев это Винда.
Подключение CDC в винде не обеспечивает автоматического коннекта типа воткнул и забыл. А юзерам именно так и надо. Они вообще ничего не понимают в ОС и программировании. Им нужен функционал купленного девайса. ФУНКЦИОНАЛ, а не внутренние фичи встроенной системы.
Мы уже давно отказались от CDC в пользу кастомного HID. Исключительно удобно. Скорости 64 кбайт/с хватает с большим запасом. Кстати, я так понимаю, что даже при изохронном USB с сотнями мегабайт в секунду трафика USB устройства делают как составные и коннект обеспечивается кастомным HID.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Не получается разобраться с usb
СообщениеДобавлено: Ср окт 09, 2019 11:26:22 
Опытный кот

Карма: -3
Рейтинг сообщений: 24
Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 735
Рейтинг сообщения: 0
Да плевать мне на вантузоидов! Пусть себе мучаются, как хотят! Если им хочется работать - пускай ставят операционную систему, а не геймерскую прошивку...
Насчет же оконечного управления устройствами, я последнее время делаю веб-морды: очень удобно! Можно даже с какого-нибудь ондроедофона выйти, авторизоваться и поуправлять железякой.
Учитывая то, что апач или хотя бы nginx на любой машине всегда есть, никаких сложностей с веб-мордой нет. В исключительных случаях можно вебсокет-сервер запустить из-под пользователя с доступом к 80-му порту и без вебсервера выдавать нужные веб-странички, картинки и жабоскрипт юзеру.

_________________
Я на гитхабе, в ЖЖ


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 28 ]  1,  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 12


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y