USBD_BulkRxAsync
Description
Receives data on bulk OUT endpoint asynchronously.
Files
usbd_core.h/usbd_core.c
Prototype
void USBD_BulkRxAsync (CPU_INT08U dev_nbr, CPU_INT08U ep_addr, void *p_buf, CPU_INT32U buf_len, USBD_ASYNC_FNCT async_fnct, void *p_async_arg, USBD_ERR *p_err);
Arguments
dev_nbr
Device number.
ep_addr
Endpoint address.
p_buf
Pointer to destination buffer to receive data
buf_len
Number of octets to receive.
async_fnct
Function that will be invoked upon completion of receive operation
p_async_arg
Pointer to argument that will be passed as parameter of async_fnct
.
p_err
Pointer to variable that will receive the return error code from this function.
USBD_ERR_NONE
USBD_ERR_DEV_INVALID_NBR
USBD_ERR_DEV_INVALID_STATE
USBD_ERR_EP_INVALID_ADDR
USBD_ERR_EP_INVALID_STATE
USBD_ERR_EP_INVALID_TYPE
USBD_ERR_OS_TIMEOUT
USBD_ERR_OS_ABORT
USBD_ERR_OS_FAIL
Returned Value
None.
Callers
Classes.
Notes / Warnings
- The callback specified by
async_fnct
has the following prototype.
void USBD_AsyncFnct (CPU_INT08U dev_nbr, CPU_INT08U ep_addr, void *p_buf, CPU_INT32U buf_len, CPU_INT32U xfer_len, void *p_arg, USBD_ERR err);
Argument(s):
dev_nbr
Device number.
ep_addr
Endpoint address.
p_buf
Pointer to destination buffer to receive data.
buf_len
Buffer length.
xfer_len
Number of byte received.
p_arg
Pointer to function argument.
err
Error status.
USBD_ERR_NONE
USBD_ERR_EP_ABORT