Hi Kamran,
Have you verified the ADC conversion time and the ISR duration? Have you checked the duration of the USB transmission function? On some USB tasks, the interrupts are disabled, and during such time, the ADC interrupts will not be serviced. So, you could try implementing DMA transfers for moving the ADC results to a memory buffer at the same time that the USB is transferring the data to the PC.
Hope this will be useful for you.
Best regards!
/Carlos
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------