Hello, I have implemented the code for the USB VCP, but when debugging the code the "pdev->pClassData" is always null (0). Where is this class initialized? code line : USBD_CDC_HandleTypeDef *hcdc = (USBD_CDC_HandleTypeDef *)pdev->pClassData;
Cube MX 5.6.1 generated code:
void MX_USB_DEVICE_Init(void)
{
/* USER CODE BEGIN USB_DEVICE_Init_PreTreatment */
/* USER CODE END USB_DEVICE_Init_PreTreatment */
/* Init Device Library, add supported class and start the library. */
if (USBD_Init(&hUsbDeviceFS, &FS_Desc, DEVICE_FS) != USBD_OK)
{
Error_Handler();
}
if (USBD_RegisterClass(&hUsbDeviceFS, &USBD_CDC) != USBD_OK)
{
Error_Handler();
}
if (USBD_CDC_RegisterInterface(&hUsbDeviceFS, &USBD_Interface_fops_FS) != USBD_OK)
{
Error_Handler();
}
if (USBD_Start(&hUsbDeviceFS) != USBD_OK)
{
Error_Handler();
}
/* USER CODE BEGIN USB_DEVICE_Init_PostTreatment */
/* USER CODE END USB_DEVICE_Init_PostTreatment */
}
to send data this is implemented
while (1)
{
/* USER CODE END WHILE */
USBD_CDC_SetTxBuffer(&hUsbDeviceFS, &buffer[0], sizeof(buffer));
USBD_CDC_TransmitPacket(&hUsbDeviceFS);
HAL_delay(1000);
/* USER CODE BEGIN 3 */
}
