nRF5 SDK v13.0.0
Modules | Data Structures | Macros | Typedefs | Enumerations | Functions

nRF52840 only: Module with types, definitions, and API used by USB Audio class. More...

Modules

 USB Audio descriptors
 nRF52840 only: Descriptors used in the USB Audio class.
 
 USB AUDIO class configuration
 
 USB Audio internals
 nRF52840 only: USB Audio class internals.
 
 USB Audio types
 nRF52840 only: Type definitions for the USB Audio class.
 

Data Structures

struct  app_usbd_audio_t
 Audio class instance type. More...
 

Macros

#define APP_USBD_AUDIO_GLOBAL_DEF(instance_name,interfaces_configs,user_ev_handler,raw_descriptors)
 Global definition of app_usbd_audio_t class instance. More...
 

Typedefs

typedef enum
app_usbd_audio_user_event_e 
app_usbd_audio_user_event_t
 Events passed to user event handler. More...
 

Enumerations

enum  app_usbd_audio_user_event_e {
  APP_USBD_AUDIO_USER_EVT_CLASS_REQ,
  APP_USBD_AUDIO_USER_EVT_RX_DONE,
  APP_USBD_AUDIO_USER_EVT_TX_DONE
}
 Events passed to user event handler. More...
 

Functions

static app_usbd_class_inst_t
const * 
app_usbd_audio_class_inst_get (app_usbd_audio_t const *p_audio)
 
static app_usbd_audio_req_tapp_usbd_audio_class_request_get (app_usbd_audio_t const *p_audio)
 Helper function to get audio specific request from audio class. More...
 
static app_usbd_audio_t const * app_usbd_audio_class_get (app_usbd_class_inst_t const *p_inst)
 Helper function to get audio from base class instance. More...
 
void app_usbd_audio_class_tx_buf_set (app_usbd_class_inst_t const *p_inst, const void *p_buff, size_t size)
 Set transmit buffer. More...
 
void app_usbd_audio_class_rx_buf_set (app_usbd_class_inst_t const *p_inst, void *p_buff, size_t size)
 Set receive buffer. More...
 

Detailed Description

nRF52840 only: Module with types, definitions, and API used by USB Audio class.

Reference specifications:

Macro Definition Documentation

#define APP_USBD_AUDIO_GLOBAL_DEF (   instance_name,
  interfaces_configs,
  user_ev_handler,
  raw_descriptors 
)
Value:
interfaces_configs, \
user_ev_handler, \
raw_descriptors)

Global definition of app_usbd_audio_t class instance.

Parameters
instance_nameName of global instance
interfaces_configsInterfaces configurations
user_ev_handlerUser event handler (optional)
raw_descriptorsRaw descriptor table
Note
This macro is just simplified version of APP_USBD_AUDIO_GLOBAL_DEF_INTERNAL

Typedef Documentation

Events passed to user event handler.

Note
Example prototype of user event handler:
void audio_user_ev_handler(app_usbd_class_inst_t const * p_inst,

Enumeration Type Documentation

Events passed to user event handler.

Note
Example prototype of user event handler:
void audio_user_ev_handler(app_usbd_class_inst_t const * p_inst,
Enumerator
APP_USBD_AUDIO_USER_EVT_CLASS_REQ 

User event CLASS_REQ

APP_USBD_AUDIO_USER_EVT_RX_DONE 

User event RX_DONE

APP_USBD_AUDIO_USER_EVT_TX_DONE 

User event TX_DONE

Function Documentation

static app_usbd_audio_t const* app_usbd_audio_class_get ( app_usbd_class_inst_t const *  p_inst)
inlinestatic

Helper function to get audio from base class instance.

Parameters
[in]p_instBase class instance
Returns
Audio class handle
static app_usbd_class_inst_t const* app_usbd_audio_class_inst_get ( app_usbd_audio_t const *  p_audio)
inlinestatic

@brief Helper function to get class instance from Audio class

Parameters
[in]p_audioAudio class instance (declared by APP_USBD_AUDIO_GLOBAL_DEF)
Returns
Base class instance
static app_usbd_audio_req_t* app_usbd_audio_class_request_get ( app_usbd_audio_t const *  p_audio)
inlinestatic

Helper function to get audio specific request from audio class.

Parameters
[in]p_audioAudio class instance (declared by APP_USBD_AUDIO_GLOBAL_DEF)
Returns
Audio class specific request
void app_usbd_audio_class_rx_buf_set ( app_usbd_class_inst_t const *  p_inst,
void *  p_buff,
size_t  size 
)

Set receive buffer.

Parameters
[in]p_instBase class instance
[in]p_buffReceive buffer
[in]sizeReceive buffer size
void app_usbd_audio_class_tx_buf_set ( app_usbd_class_inst_t const *  p_inst,
const void *  p_buff,
size_t  size 
)

Set transmit buffer.

Parameters
[in]p_instBase class instance
[in]p_buffTransmit buffer
[in]sizeTransmit buffer size

Documentation feedback | Developer Zone | Subscribe | Updated