2024-12-01 10:04 PM - last edited on 2024-12-01 11:58 PM by SofLit
We are trying to send serial data from an ST microcontroller to a PC using CDC_Transmit_FS.
We can send data less than 16Kbyte (4096 * 4byte) without any problem, but when we try to send larger size, sometimes we get USBD_STATUS_CANCELED (confirmed by Wireshark + USBpcap).
Could you please tell us why the above behavior occurs?
2024-12-06 02:05 AM
I did not suggest any dynamic priority changes. In my projects, for starting USB In transfers I always use a software-generated interrupt of the same priority as USB hw one. Anyway, to interact with this interrupt, the interface routine called from lower priority must disable all ints for 2 lines of C code.