Anonymous
Not applicable
Nov 12, 2009
08:06 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Nov 12, 2009
08:06 AM
Hi!
I am using a CY7C68001 that i access from a FPGA.
I use the standard endpont settings as below:
EP2 Bulk OUT, 512 bytes/packet, 2x buffered
EP4 Bulk OUT, 512 bytes/packet, 2x buffered
EP6 Bulk IN, 512 bytes/packet, 2x buffered
EP8 Bulk IN, 512 bytes/packet, 2x buffered
I have managed to write down the descriptor to the chip and it does also enumerates
when the USB connector is connected to my PC.
I have managed to send data from my FPGA via the cypress chip using Endpoint 6.
I receive the data in my PC in my own VB program that uses the CyUSB driver.
Now, my problem is that i just does not understand how to receive data in the FPGA
when data is sent in the opposite direction (PC->FPGA) using Endpoint 2.
My questions are:
Q1
I send smaller batches of data than the buffer size of 512 bytes.
I plan to use the empty flag to check if there is any data in the endpoint buffer.
How do i know how many data bytes to read from the buffer?
Or must i alwayas read all 512 bytes and then myself figure out how much useful data i received?
Q2
When i have read data from the Endpoint buffer, how do i tell the cypress chip that i am ready
with the endpoint buffer and it can be used for the next batch of data?
Any help would be helpful.
BR Paul
I am using a CY7C68001 that i access from a FPGA.
I use the standard endpont settings as below:
EP2 Bulk OUT, 512 bytes/packet, 2x buffered
EP4 Bulk OUT, 512 bytes/packet, 2x buffered
EP6 Bulk IN, 512 bytes/packet, 2x buffered
EP8 Bulk IN, 512 bytes/packet, 2x buffered
I have managed to write down the descriptor to the chip and it does also enumerates
when the USB connector is connected to my PC.
I have managed to send data from my FPGA via the cypress chip using Endpoint 6.
I receive the data in my PC in my own VB program that uses the CyUSB driver.
Now, my problem is that i just does not understand how to receive data in the FPGA
when data is sent in the opposite direction (PC->FPGA) using Endpoint 2.
My questions are:
Q1
I send smaller batches of data than the buffer size of 512 bytes.
I plan to use the empty flag to check if there is any data in the endpoint buffer.
How do i know how many data bytes to read from the buffer?
Or must i alwayas read all 512 bytes and then myself figure out how much useful data i received?
Q2
When i have read data from the Endpoint buffer, how do i tell the cypress chip that i am ready
with the endpoint buffer and it can be used for the next batch of data?
Any help would be helpful.
BR Paul
0 Replies