How to receive residual data in FX3 cyusb3014? | Cypress Semiconductor
How to receive residual data in FX3 cyusb3014?
Hi, dear friends,
I met a problem in FX3 to receive residual data in FX3:in order to achieve high speed, I set a large transfer data length for XferData() function, such as 1024*1024, but at the end of the data transfer, there will be a little amount of data smaller than 1024*1024.So when XferData() time out,I can't receive the data tail .
In addition,I want to know how many bytes in the endpoint buffer before XferData ? so I can set Xferdata second parameter with this.
here is part of my code:
BYTE * pContext=NULL;
long nBulkLen = 1024*1024;
pContext=pBulkEpIn->BeginDataXfer(pBulkBuf, nBulkLen, &oRdOvLap);
bool recvRet = pBulkEpIn->FinishDataXfer(pBulkBuf, nBulkLen, &oRdOvLap, pContext);
//bool recvRet = pBulkEpIn->XferData(pBulkBuf,nBulkLen);
TRACE("the actual receive length = %d ,recvRet = %d\n",nBulkLen,recvRet);
Does anybody know how to solve this problem?Thank you very much and best wishes.