Решил я еще в прошлом году "унифицировать" USB, чтобы проще было, если вдруг надумаю какое-то "эдакое" устройство сделать.
Выкладываю на гитхаб помаленьку (HID, CDC и эмуляция PL2303). Пока только на F103. Если сегодня допишу составное устройство (7 USB-CDC в одном флаконе), то как-нибудь опробую всю четверку на F072 и F303
(
Read more... )
Comments 9
Reply
И после каждого lsusb вылезает в dmesg: "clear tt 2 (81b0) error -32". Уж ХЗ, что я там "наоптимизировал", но как-то оно через задницу в итоге получилось. "Неоптимизированный" вариант лучше работал.
Reply
Надо искать, что у меня за косяк такой: ведь не должно оно ничего пропускать, USB_EPnR_STAT_RX я выставляю лишь по окончании функции, а __disable_irq(), который выполняю в суперлупе один раз в миллисекунду для отправки очередного содержимого кольцевого отладочного буфера в UART, навряд ли поспособствовал бы этому (т.к. в этом случае за очень небольшое время - пока копируется кусок в буфер передачи и запускается DMA, должно больше одного запроса прийти).
Reply
Reply
А он не может по таймауту отваливаться?
Например если ждём слишком мало?
Reply
Reply
Хм... интересно.
Reply
Leave a comment