Strictly necessary cookies are on by default and cannot be turned off. Functional, Performance and Tracking/targeting/sharing cookies can be turned on below based on your preferences (this banner will remain available for you to accept cookies). You may change your cookie settings by deleting cookies from your browser. Then this banner will appear again. You can learn more details about cookies HERE.
Strictly necessary (always on)
Functional, Performance and Tracking/targeting/sharing (default off)
I am writing program on psoc3 microcontroller for USB communication. In this application i want to send maximum data from microcontroller to PC(VC++ program). I wrote program using one Bulk In endpoint and achieved speed of 0.25Mbps. I understand about usb that it sends 1 frame/msec. Each frame having 14-19 transactions(or packets). But one bulk in endpoint sends 64 bytes each time. I don't know how to increase no. of transactions per frame using bulk in endpoint and at the same time how to get entire frame with XferData using from CyUSBAPI in VC++. Can you help how to improve my throughput in full speed usb microcontroller with bulk inendpoints.
Speed can be increased by using the asynchronous calls begindataxfer / waitforxfer / finishdataxfer and implementing buffering on the device side. Increasing the number of endpoints may not help since the interface used is going to remain the same so the IN packets will go one after the other. If the device is not capable of filling data at that speed it is not going to be able to do it with 2 endpoints as well since you've to service both.