44#define CDC_IN_EP 0x81U
47#define CDC_OUT_EP 0x01U
50#define CDC_CMD_EP 0x82U
53#ifndef CDC_HS_BINTERVAL
54#define CDC_HS_BINTERVAL 0x10U
57#ifndef CDC_FS_BINTERVAL
58#define CDC_FS_BINTERVAL 0x10U
61#ifndef CDC_CMD_PACKET_SIZE
62#define CDC_CMD_PACKET_SIZE 8U
66#define CDC_DATA_HS_MAX_PACKET_SIZE 512U
67#define CDC_DATA_FS_MAX_PACKET_SIZE 64U
69#define USB_CDC_CONFIG_DESC_SIZ 67U
70#define CDC_DATA_HS_IN_PACKET_SIZE CDC_DATA_HS_MAX_PACKET_SIZE
71#define CDC_DATA_HS_OUT_PACKET_SIZE CDC_DATA_HS_MAX_PACKET_SIZE
73#define CDC_DATA_FS_IN_PACKET_SIZE CDC_DATA_FS_MAX_PACKET_SIZE
74#define CDC_DATA_FS_OUT_PACKET_SIZE CDC_DATA_FS_MAX_PACKET_SIZE
76#define CDC_REQ_MAX_DATA_SIZE 0x7U
80#define CDC_SEND_ENCAPSULATED_COMMAND 0x00U
81#define CDC_GET_ENCAPSULATED_RESPONSE 0x01U
82#define CDC_SET_COMM_FEATURE 0x02U
83#define CDC_GET_COMM_FEATURE 0x03U
84#define CDC_CLEAR_COMM_FEATURE 0x04U
85#define CDC_SET_LINE_CODING 0x20U
86#define CDC_GET_LINE_CODING 0x21U
87#define CDC_SET_CONTROL_LINE_STATE 0x22U
88#define CDC_SEND_BREAK 0x23U
114 int8_t (*
Control)(uint8_t cmd, uint8_t *pbuf, uint16_t length);
115 int8_t (*
Receive)(uint8_t *Buf, uint32_t *Len);
149#define USBD_CDC_CLASS &USBD_CDC
160#ifdef USE_USBD_COMPOSITE
162 uint32_t length, uint8_t ClassId);
#define __IO
Defines 'read / write' permissions.
USBD_ClassTypeDef USBD_CDC
struct _USBD_HandleTypeDef USBD_HandleTypeDef
struct _Device_cb USBD_ClassTypeDef
uint8_t USBD_CDC_RegisterInterface(USBD_HandleTypeDef *pdev, USBD_CDC_ItfTypeDef *fops)
USBD_CDC_RegisterInterface.
uint8_t USBD_CDC_ReceivePacket(USBD_HandleTypeDef *pdev)
USBD_CDC_ReceivePacket prepare OUT Endpoint for reception.
uint8_t USBD_CDC_SetRxBuffer(USBD_HandleTypeDef *pdev, uint8_t *pbuff)
USBD_CDC_SetRxBuffer.
uint8_t USBD_CDC_TransmitPacket(USBD_HandleTypeDef *pdev)
USBD_CDC_TransmitPacket Transmit packet on IN endpoint.
uint8_t USBD_CDC_SetTxBuffer(USBD_HandleTypeDef *pdev, uint8_t *pbuff, uint32_t length)
USBD_CDC_SetTxBuffer.
#define CDC_DATA_HS_MAX_PACKET_SIZE
struct _USBD_CDC_Itf USBD_CDC_ItfTypeDef
uint32_t data[CDC_DATA_HS_MAX_PACKET_SIZE/4U]
int8_t(* Receive)(uint8_t *Buf, uint32_t *Len)
int8_t(* Control)(uint8_t cmd, uint8_t *pbuf, uint16_t length)
int8_t(* TransmitCplt)(uint8_t *Buf, uint32_t *Len, uint8_t epnum)
Header file for the usbd_ioreq.c file.