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.

Tiva C - Bulk device - Writing in the TX buffer

Hi this is my transmit function for my Bulk Device:

static unsigned long
Transmit_USB(USBbuffer Data,int size)
{
    unsigned long ulLoop, ulCount;
    unsigned long ulWriteIndex;
    tUSBRingBufObject sTxRing;

    //
    // Get the current buffer information to allow us to write directly to
    // the transmit buffer (we already have enough information from the
    // parameters to access the receive buffer directly).
    //
    USBBufferInfoGet(&g_sTxBuffer, &sTxRing);


    //
    // How many characters can we process this time round?
    //
    ulCount = size;

    //
    // Set up to process the characters by directly accessing the USB buffers.
    //
    ulWriteIndex = sTxRing.ulWriteIndex;
    for(ulLoop = 0 ; ulLoop < ulCount;ulLoop++ )
        {
        	 g_pucUSBTxBuffer[ulWriteIndex] = Data.data[ulLoop];
            ulWriteIndex = ulWriteIndex + 1;
            ulWriteIndex = (ulWriteIndex == BULK_BUFFER_SIZE) ? 0 : ulWriteIndex;
        }

    //
    // We've processed the data in place so now send the processed data
    // back to the host.
    //
    USBBufferDataWritten(&g_sTxBuffer,size);
    return(ulCount);
}

The bottleneck of my USB protocol is that as you can see , I write byte individually into the TX buffer.

Can we write block of byte instead of byte per byte into the buffer?