The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Как правильно собрать программу для Debian (Raspbian"
Версия для распечатки Пред. тема | След. тема
Форум Программирование под UNIX
Исходное сообщение [ Отслеживать ]

. "Как правильно собрать программу для Debian (Raspbian" +/
Сообщение от pavlinux (ok), 04-Янв-14, 22:38 
>>> Т.е. в каждый вызов usb_control_msg() нужно передавать в качестве timeout не менее 20 мс?
>> Не-не-не, туда по стандарту - USB_CTRL_SET_TIMEOUT. Я имел ввиду после.
>> ret = usb_control_msg();
>> usleep(20);
>> if ( ret < 0 )
>>    ля-ля-ля ...error;
> Сделал:

Ага, оно самое.  

Там бы знаешь ещё что, - понять что за константы в функции usb_control_msg()

эта GET // from device
usb_control_msg(lvr_winusb, 0xA1, 0x01, 0x300, 0, (char *)USB_BUFI, 0x8, timeout);

эта SET // to device
usb_control_msg(lvr_winusb, 0x21, 0x09, 0x300, 0, (char *)USB_BUFO, 0x8, timeout);

Я так думаю, что:

0xA1 - (USB_TYPE_CLASS | USB_RECIP_INTERFACE | USB_DIR_IN) /* (0x01 << 5) | 0x01 | 0x80 */
0x21 - (USB_TYPE_CLASS | USB_RECIP_INTERFACE | USB_DIR_OUT) /* (0x01 << 5) | 0x01 | 0x00 */

0x01 - это по-моему запрос .... скорее всего CLEAR_FEATURE
0x09 - тута видимо SET_CONFIGURATION  

0x8 - это sizeof(USB_BUFI) и sizeof(USB_BUFO)  // размер буфера
0 - смещение он начала буфера.

0x300 - это типа сколько байт будет передано. Видимо афтор оригинала тоже где-то скопипастил код. :)


Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Как правильно собрать программу для Debian (Raspbian, DimNsk, 28-Дек-13, 23:35  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру