extern "C" int8_t CDC_Itf_Receive(uint8_t* Buf, uint32_t* Len)
{
int i = *Len;
while (i)
{
usb_rx_queue->SendFromISR(Buf, &pxHigherPriorityTaskWoken);
Buf++;
i--;
}
USBD_CDC_ReceivePacket(&USBD_Device);
return (USBD_OK);
}
ZXh0ZXJuICJDIiBpbnQ4X3QgQ0RDX0l0Zl9SZWNlaXZlKHVpbnQ4X3QqIEJ1ZiwgdWludDMyX3QqIExlbikKewoJaW50IGkgPSAqTGVuOwoJd2hpbGUgKGkpCgl7CgkJdXNiX3J4X3F1ZXVlLT5TZW5kRnJvbUlTUihCdWYsICZweEhpZ2hlclByaW9yaXR5VGFza1dva2VuKTsKCQlCdWYrKzsKCQlpLS07Cgl9CgoJVVNCRF9DRENfUmVjZWl2ZVBhY2tldCgmVVNCRF9EZXZpY2UpOwoKCXJldHVybiAoVVNCRF9PSyk7Cn0=