Использовать уведомление конечной точки (на основе interrput) usb cdc acm
Каждый USB CDC ACM имеет три конечные точки: 1. уведомлять 2. ввод данных. 3. данные OUT. Можем ли мы использовать конечную точку уведомления для нашего приложения?
1 ответ
В протоколе USB любой обмен данными инициируется хостом, устройство может отвечать только на запросы. даже если устройство ожидает прерывания, оно должно ждать, пока хост не отправит запрос прерывания конечной точке. Вы можете запросить, если уведомить конечную точку с передачей прерывания
http://www.beyondlogic.org/usbnutshell/usb4.shtml
в libusb
это функция
int libusb_interrupt_transfer (struct libusb_device_handle *dev_handle, unsigned char endpoint, unsigned char *data, int length, int *transferred, unsigned int timeout)