Hi,
I read in the Datasheet of the tm4c123 devices family, that you can set uDMA using USB channel. Can you use those channel to transfer data between the Tiva C and Host PC with the bulk device?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi,
I read in the Datasheet of the tm4c123 devices family, that you can set uDMA using USB channel. Can you use those channel to transfer data between the Tiva C and Host PC with the bulk device?
What do you mean by "CPU based access working first"? Currently, I got a bulk transfer protocol which is working, but I don't want to use my mcu to just transfer data to the HOST pc. It would be better that the mcu let the DMA handle the transfer with the pc in a ping-pong set up. I guess, I need to modify the bulk struct but more precisely "USBDBulkPacketWrite" so that it is the DMA that make the transfer?
Also, when I call the function "USBBufferDataWritten" how it links to "USBDBulkPacketWrite" which define as transfer function in the USBbuffer struct of the TXbuffer.
Hi,
I don't get all the link that are in the USB API. If I call USBBufferDataWritten then it call USBRingBufAdvanceWrite. But what enable the USB transfer, it is a lower layer that manage the transfer? Also, when I declare the bulk device struct in the bulk device exemple, in the USBbuffer struct, it write that it is "USBDBulkPacketWrite" that is assign to transfer. How it is link to the 2 other functions, I mentionned earlier.
Is there a mechanism that automatically send the data from the FIFO usb buffer to the host PC? Because FIFO buffer look like data queued to be send to the host PC?
and if the MCU is put into device mode, therefore it is the host PC that request transfer from the MCU? So, on the MCU's side you just have to manage to write data in the proper location?