- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am trying to test the slave Asynchronous fifo GPIF. The control pins were fixed as following:
SLCS set to 0 (0V)
SLWR set to 0
SLRD set to 1
PKEND set to 1
ADRESS set 00
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Lehua Chen,
Have you tried debugging using UART to see what exactly is firmware is doing.
Also if you have a CATC/USB analyzer at your end, it is better to check the traffic on the USB bus to get a better idea on what exactly is happening. These things may help to identify the root cause of the problem.
Regards,
sai krishna.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Meanwhile, I would recommend you to create a tech support case (MyAccount --> MyCases) regarding this.
One of our engineer will replicate this scenario and help you to come out of this issue.
Regards,
sai krishna.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi, sai krishna, Thank you for your reply.
I still did not find the solution. I create a 'Mycase' today. Meanwhile, I am debugging it with UART.
Thanks again,
Lehua Chen
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I debugged the Asynchronous FIFO GPIF with UART. The hardware setting was as before.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Lehua Chen,
Below are my answers to your questions.
If you look at the SlaveFifoAsync example source code, DMA buffer for USB to FX3 is configured for 2*1024 Bytes in case of super speed. That is the reason why you are able to do two BULK OUT transfers. If you change the
dmaCfg.count = CY_FX_SLFIFO_DMA_BUF_COUNT; to
dmaCfg.count = 16;
then you can do 16 BULK OUT transfers.
On the other hand if you look at the USBBulkSourceSink example, we are discarding the buffer as soon as we get some data from USB. CyU3PDmaChannelDiscardBuffer is called when there is CY_U3P_DMA_CB_PROD_EVENT. In this case you continuously send the data. But in SlaveFifoAsync example we are not doing this. So number of BULK OUT transfers are limited to dmaCfg.count.
Coming to your next question, regarding BULK IN, again we can correlate both these examples - SlaveFifoAsync and USBBulkSourceSink. In case of SlaveFifoAsync example we are committing the data only when there is a CY_U3P_DMA_CB_PROD_EVENT. That is when GPIF fills the DMA buffer.
Regards,
sai krishna.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi, sai krishna,
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Are you using the same GPIF II descriptors that comes with SlaveFifoAsync or have you done any changes.
Regards,
sai kirshna.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Yes, I did not change the GPIF II descriptor.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Is it possible that SLWR can not be set to constant value (0)? Is it necessary to supply pulse for the SLWR pin for writting?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Oh. It is really necessary to supply the SLWR with pulses!!!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Actually, We don't need to change anything in the streamer application.
Streamer can be used with any application that can continuously stream data.
Are you sure that you are getting data continuously into PIB (GPIF) sockets. Are you able to read data continuously using Control Center.
Regards,
sai krishna.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello, sai krishna,
Thanks,
Lehua Chen
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content