VSF Documented
vsf_usbd_CDCACM.h File Reference

Go to the source code of this file.

Data Structures

class  vk_usbd_cdcacm_t
 

Macros

#define USB_CDC_ACM_PARAM(__INT_IN_EP, __BULK_IN_EP, __BULK_OUT_EP, __STREAM_RX, __STREAM_TX, ...)
 
#define USB_CDC_ACM_PARITY_NONE   0
 
#define USB_CDC_ACM_PARITY_ODD   1
 
#define USB_CDC_ACM_PARITY_EVEN   2
 
#define USB_CDC_ACM_STOPBIT_1   0
 
#define USB_CDC_ACM_STOPBIT_1P5   1
 
#define USB_CDC_ACM_STOPBIT_2   2
 
#define USB_CDC_ACM_LINECODE(__BAUDRATE, __BITLEN, __PARITY, __STOP)
 
#define USB_CDC_ACM_LINECODE_115200_8N1    USB_CDC_ACM_LINECODE(115200, 8, USB_CDC_ACM_PARITY_NONE, USB_CDC_ACM_STOPBIT_1)
 
#define USB_CDC_ACM_IFS_NUM   USB_CDC_IFS_NUM
 
#define USB_CDC_ACM_IFS_CONTROL(__CDC_ACM_PARAM)
 
#define USB_CDC_ACM_IFS_DATA(__CDC_ACM_PARAM)
 
#define __usbd_cdc_acm_desc_iad(__name, __ifs_start, __i_func, __int_in_ep, __bulk_in_ep, __bulk_out_ep, __bulk_ep_size, __int_ep_interval)
 
#define __usbd_cdc_acm_func(__name, __func_id, __str_func, __i_func, __ifs_start, __int_in_ep, __bulk_in_ep, __bulk_out_ep, __bulk_ep_size, __int_ep_interval, __stream_rx, __stream_tx, ...)
 
#define __usbd_cdc_acm_ifs(__name, __func_id)
 
#define usbd_cdc_acm_desc_iad(__name, __func_id)
 
#define usbd_cdc_acm_desc_table(__name, __func_id)
 
#define usbd_cdc_acm_func(__name, __func_id, __str_func, __i_func, __ifs_start, __int_in_ep, __bulk_in_ep, __bulk_out_ep, __bulk_ep_size, __int_ep_interval, __stream_rx, __stream_tx, ...)
 
#define usbd_cdc_acm_ifs(__name, __func_id)
 
#define usbd_cdcacm_desc_iad(...)
 
#define usbd_cdcacm_desc_table(...)
 
#define usbd_cdcacm_func(...)
 
#define usbd_cdcacm_ifs(...)
 

Variables

const vk_usbd_class_op_t vk_usbd_cdcacm_control
 
const vk_usbd_class_op_t vk_usbd_cdcacm_data
 

Macro Definition Documentation

◆ USB_CDC_ACM_PARAM

#define USB_CDC_ACM_PARAM ( __INT_IN_EP,
__BULK_IN_EP,
__BULK_OUT_EP,
__STREAM_RX,
__STREAM_TX,
... )
Value:
.ep = { \
.notify = (__INT_IN_EP), \
.out = (__BULK_OUT_EP), \
.in = (__BULK_IN_EP), \
}, \
.line_coding = __VA_ARGS__, \
.stream.tx.stream = (vsf_stream_t *)(__STREAM_TX), \
.stream.rx.stream = (vsf_stream_t *)(__STREAM_RX),
Definition vsf_simple_stream.h:254

◆ USB_CDC_ACM_PARITY_NONE

#define USB_CDC_ACM_PARITY_NONE   0

◆ USB_CDC_ACM_PARITY_ODD

#define USB_CDC_ACM_PARITY_ODD   1

◆ USB_CDC_ACM_PARITY_EVEN

#define USB_CDC_ACM_PARITY_EVEN   2

◆ USB_CDC_ACM_STOPBIT_1

#define USB_CDC_ACM_STOPBIT_1   0

◆ USB_CDC_ACM_STOPBIT_1P5

#define USB_CDC_ACM_STOPBIT_1P5   1

◆ USB_CDC_ACM_STOPBIT_2

#define USB_CDC_ACM_STOPBIT_2   2

◆ USB_CDC_ACM_LINECODE

#define USB_CDC_ACM_LINECODE ( __BAUDRATE,
__BITLEN,
__PARITY,
__STOP )
Value:
{ \
.bitrate = (__BAUDRATE), \
.stop = (__STOP), \
.parity = (__PARITY), \
.datalen = (__BITLEN), \
}

◆ USB_CDC_ACM_LINECODE_115200_8N1

#define USB_CDC_ACM_LINECODE_115200_8N1    USB_CDC_ACM_LINECODE(115200, 8, USB_CDC_ACM_PARITY_NONE, USB_CDC_ACM_STOPBIT_1)

◆ USB_CDC_ACM_IFS_NUM

#define USB_CDC_ACM_IFS_NUM   USB_CDC_IFS_NUM

◆ USB_CDC_ACM_IFS_CONTROL

#define USB_CDC_ACM_IFS_CONTROL ( __CDC_ACM_PARAM)
Value:
USB_IFS(&vk_usbd_cdcacm_control, &__CDC_ACM_PARAM)
#define USB_IFS(__DRV, __PARAM)
Definition vsf_usbd.h:104
const vk_usbd_class_op_t vk_usbd_cdcacm_control

◆ USB_CDC_ACM_IFS_DATA

#define USB_CDC_ACM_IFS_DATA ( __CDC_ACM_PARAM)
Value:
USB_IFS(&vk_usbd_cdcacm_data, &__CDC_ACM_PARAM)
const vk_usbd_class_op_t vk_usbd_cdcacm_data

◆ __usbd_cdc_acm_desc_iad

#define __usbd_cdc_acm_desc_iad ( __name,
__ifs_start,
__i_func,
__int_in_ep,
__bulk_in_ep,
__bulk_out_ep,
__bulk_ep_size,
__int_ep_interval )
Value:
USB_DESC_CDC_ACM_IAD((__ifs_start), (__i_func), \
(__int_in_ep), (__bulk_in_ep), (__bulk_out_ep), \
(__bulk_ep_size), (__int_ep_interval))
#define USB_DESC_CDC_ACM_IAD(__IFS_START, __I_FUNC, __INT_IN_EP, __BULK_IN_EP, __BULK_OUT_EP, __BULK_EP_SIZE, __INT_EP_INTERVAL)
Definition vsf_usbd_CDCACM_desc.h:64

◆ __usbd_cdc_acm_func

#define __usbd_cdc_acm_func ( __name,
__func_id,
__str_func,
__i_func,
__ifs_start,
__int_in_ep,
__bulk_in_ep,
__bulk_out_ep,
__bulk_ep_size,
__int_ep_interval,
__stream_rx,
__stream_tx,
... )
Value:
enum { \
__##__name##_CDCACM##__func_id##_IFS_START = (__ifs_start), \
__##__name##_CDCACM##__func_id##_I_FUNC = (__i_func), \
__##__name##_CDCACM##__func_id##_INTIN_EP = (__int_in_ep), \
__##__name##_CDCACM##__func_id##_BULKIN_EP = (__bulk_in_ep), \
__##__name##_CDCACM##__func_id##_BULKOUT_EP = (__bulk_out_ep), \
__##__name##_CDCACM##__func_id##_BULK_EP_SIZE = (__bulk_ep_size),\
__##__name##_CDCACM##__func_id##_BULK_EP_INTERVAL = (__int_ep_interval),\
}; \
usbd_func_str_desc(__name, __func_id, __str_func) \
vk_usbd_cdcacm_t __##__name##_CDCACM##__func_id = { \
USB_CDC_ACM_PARAM((__int_in_ep), (__bulk_in_ep), (__bulk_out_ep),\
(__stream_rx), (__stream_tx), __VA_ARGS__) \
};
Definition vsf_usbd_CDCACM.h:136
#define __stream_rx(__s)
Definition driver_uart_port.c:128
#define __stream_tx(__s)
Definition driver_uart_port.c:129
#define __name
Definition hci_transport_aic8800.c:555

◆ __usbd_cdc_acm_ifs

#define __usbd_cdc_acm_ifs ( __name,
__func_id )
Value:
USB_CDC_ACM_IFS_CONTROL(__##__name##_CDCACM##__func_id) \
USB_CDC_ACM_IFS_DATA(__##__name##_CDCACM##__func_id)
#define USB_CDC_ACM_IFS_CONTROL(__CDC_ACM_PARAM)
Definition vsf_usbd_CDCACM.h:72

◆ usbd_cdc_acm_desc_iad

#define usbd_cdc_acm_desc_iad ( __name,
__func_id )
Value:
__##__name##_CDCACM##__func_id##_IFS_START, \
4 + __##__name##_CDCACM##__func_id##_I_FUNC, \
__##__name##_CDCACM##__func_id##_INTIN_EP, \
__##__name##_CDCACM##__func_id##_BULKIN_EP, \
__##__name##_CDCACM##__func_id##_BULKOUT_EP, \
__##__name##_CDCACM##__func_id##_BULK_EP_SIZE, \
__##__name##_CDCACM##__func_id##_BULK_EP_INTERVAL)
#define __usbd_cdc_acm_desc_iad(__name, __ifs_start, __i_func, __int_in_ep, __bulk_in_ep, __bulk_out_ep, __bulk_ep_size, __int_ep_interval)
Definition vsf_usbd_CDCACM.h:79

◆ usbd_cdc_acm_desc_table

#define usbd_cdc_acm_desc_table ( __name,
__func_id )
Value:
#define usbd_func_str_desc_table(__name, __func_id,...)
Definition vsf_usbd.h:358

◆ usbd_cdc_acm_func

#define usbd_cdc_acm_func ( __name,
__func_id,
__str_func,
__i_func,
__ifs_start,
__int_in_ep,
__bulk_in_ep,
__bulk_out_ep,
__bulk_ep_size,
__int_ep_interval,
__stream_rx,
__stream_tx,
... )
Value:
__usbd_cdc_acm_func(__name, __func_id, (__str_func), (__i_func), (__ifs_start),\
(__int_in_ep), (__bulk_in_ep), (__bulk_out_ep), (__bulk_ep_size), (__int_ep_interval),\
(__stream_rx), (__stream_tx), __VA_ARGS__)
#define __usbd_cdc_acm_func(__name, __func_id, __str_func, __i_func, __ifs_start, __int_in_ep, __bulk_in_ep, __bulk_out_ep, __bulk_ep_size, __int_ep_interval, __stream_rx, __stream_tx,...)
Definition vsf_usbd_CDCACM.h:86

◆ usbd_cdc_acm_ifs

#define usbd_cdc_acm_ifs ( __name,
__func_id )
Value:
#define __usbd_cdc_acm_ifs(__name, __func_id)
Definition vsf_usbd_CDCACM.h:104

◆ usbd_cdcacm_desc_iad

#define usbd_cdcacm_desc_iad ( ...)
Value:
#define usbd_cdc_acm_desc_iad(__name, __func_id)
Definition vsf_usbd_CDCACM.h:108

◆ usbd_cdcacm_desc_table

#define usbd_cdcacm_desc_table ( ...)
Value:
#define usbd_cdc_acm_desc_table(__name, __func_id)
Definition vsf_usbd_CDCACM.h:117

◆ usbd_cdcacm_func

#define usbd_cdcacm_func ( ...)
Value:
usbd_cdc_acm_func(__VA_ARGS__)
#define usbd_cdc_acm_func(__name, __func_id, __str_func, __i_func, __ifs_start, __int_in_ep, __bulk_in_ep, __bulk_out_ep, __bulk_ep_size, __int_ep_interval, __stream_rx, __stream_tx,...)
Definition vsf_usbd_CDCACM.h:119

◆ usbd_cdcacm_ifs

#define usbd_cdcacm_ifs ( ...)
Value:
usbd_cdc_acm_ifs(__VA_ARGS__)
#define usbd_cdc_acm_ifs(__name, __func_id)
Definition vsf_usbd_CDCACM.h:125

Variable Documentation

◆ vk_usbd_cdcacm_control

const vk_usbd_class_op_t vk_usbd_cdcacm_control
extern

◆ vk_usbd_cdcacm_data

const vk_usbd_class_op_t vk_usbd_cdcacm_data
extern
Generated from commit: vsfteam/vsf@ceb53fd