nRF5 SDK v13.0.0
Data Structures | Macros | Typedefs | Functions | Variables
USB CDC ACM internals

nRF52840 only: Internals of the USB ACM class implementation. More...

Data Structures

struct  app_usbd_cdc_acm_inst_t
 CDC ACM class part of class instance data. More...
 
struct  app_usbd_cdc_acm_notify_t
 CDC ACM serial state class notify. More...
 
struct  app_usbd_cdc_acm_req_t
 CDC ACM class specific request handled via control endpoint. More...
 
struct  app_usbd_cdc_acm_ctx_t
 CDC ACM class context. More...
 

Macros

#define APP_USBD_CDC_ACM_CONFIG(iface_comm, epin_comm, iface_data, epin_data, epout_data)
 CDC ACM class configuration macro. More...
 
#define APP_USBD_CDC_ACM_INSTANCE_SPECIFIC_DEC   app_usbd_cdc_acm_inst_t inst;
 Specific class constant data for cdc_acm class. More...
 
#define APP_USBD_CDC_ACM_INST_CONFIG(descriptors, user_event_handler)
 Configures cdc_acm class instance. More...
 
#define APP_USBD_CDC_ACM_DATA_SPECIFIC_DEC   app_usbd_cdc_acm_ctx_t ctx;
 Specific class data for cdc_acm class. More...
 
#define APP_USBD_CDC_ACM_DSC_CONFIG(interface_number,...)
 CDC ACM class descriptors config macro. More...
 
#define APP_USBD_CDC_ACM_GLOBAL_DEF_INTERNAL(instance_name,interfaces_configs,user_ev_handler,raw_descriptors)
 Global definition of app_usbd_cdc_acm_t class. More...
 

Typedefs

typedef void(* app_usbd_cdc_acm_user_ev_handler_t )(app_usbd_class_inst_t const *p_inst, enum app_usbd_cdc_acm_user_event_e event)
 User event handler. More...
 

Functions

 APP_USBD_CLASS_FORWARD (app_usbd_cdc_acm)
 Forward declaration of type defined by APP_USBD_CLASS_TYPEDEF in cdc_acm class.
 

Variables

const app_usbd_class_methods_t app_usbd_cdc_acm_class_methods
 Public cdc_acm class interface.
 

Detailed Description

nRF52840 only: Internals of the USB ACM class implementation.

Macro Definition Documentation

#define APP_USBD_CDC_ACM_CONFIG (   iface_comm,
  epin_comm,
  iface_data,
  epin_data,
  epout_data 
)
Value:
((iface_comm, epin_comm), \
(iface_data, epin_data, epout_data))

CDC ACM class configuration macro.

Used by APP_USBD_CDC_ACM_GLOBAL_DEF

Parameters
iface_commInterface number of cdc_acm control.
epin_commCOMM subclass IN endpoint.
iface_dataInterface number of cdc_acm DATA.
epin_dataCOMM subclass IN endpoint.
epout_dataCOMM subclass OUT endpoint.
#define APP_USBD_CDC_ACM_DATA_SPECIFIC_DEC   app_usbd_cdc_acm_ctx_t ctx;

Specific class data for cdc_acm class.

app_usbd_cdc_acm_ctx_t

#define APP_USBD_CDC_ACM_DSC_CONFIG (   interface_number,
  ... 
)
Value:
{ \
APP_USBD_CDC_ACM_INTERFACE_DSC(interface_number, \
0, \
0, \
APP_USBD_CDC_ACM_SUBCLASS_CDC_ACMCONTROL) \
}

CDC ACM class descriptors config macro.

Parameters
interface_numberInterface number.
...Extracted endpoint list.
#define APP_USBD_CDC_ACM_GLOBAL_DEF_INTERNAL (   instance_name,
  interfaces_configs,
  user_ev_handler,
  raw_descriptors 
)
Value:
instance_name, \
app_usbd_cdc_acm, \
interfaces_configs, \
(APP_USBD_CDC_ACM_INST_CONFIG(raw_descriptors, user_ev_handler)) \
)

Global definition of app_usbd_cdc_acm_t class.

Parameters
instance_nameName of global instance.
interfaces_configsInterfaces configurations.
user_ev_handlerUser event handler (optional).
raw_descriptorsRaw descriptor table.
#define APP_USBD_CDC_ACM_INST_CONFIG (   descriptors,
  user_event_handler 
)
Value:
.inst = { \
.p_raw_desc = descriptors, \
.raw_desc_size = sizeof(descriptors), \
.user_ev_handler = user_event_handler, \
}

Configures cdc_acm class instance.

Parameters
descriptorsMass storage class descriptors (raw table).
user_event_handlerUser event handler.
#define APP_USBD_CDC_ACM_INSTANCE_SPECIFIC_DEC   app_usbd_cdc_acm_inst_t inst;

Specific class constant data for cdc_acm class.

app_usbd_cdc_acm_inst_t

Typedef Documentation

typedef void(* app_usbd_cdc_acm_user_ev_handler_t)(app_usbd_class_inst_t const *p_inst, enum app_usbd_cdc_acm_user_event_e event)

User event handler.

Parameters
[in]p_instClass instance.
[in]eventUser event.

Documentation feedback | Developer Zone | Subscribe | Updated