Skip to main content
harinath
Associate III
July 15, 2014
Question

CDC stm32f4 full duplex sample ( STM32CubeMX )

  • July 15, 2014
  • 0 replies
  • 594 views
Posted on July 15, 2014 at 09:41

I'm using the STM32CubeMX 4.3.0 version.I created a project for CDC Virtual COM port for STM32F405RG micro. I need full duplex communication. Please find the attached CubeMX project .ioc file.

Following is the USB schematic of the board. 0690X000006058ZQAQ.png Generated code for IAR EWARM. The generated code has the following functions to receive & transmit data.

static
int8_t CDC_Receive_FS (uint8_t* Buf, uint32_t *Len)
{
/* USER CODE BEGIN 7 */
return
(USBD_OK);
/* USER CODE END 7 */
}
uint8_t CDC_Transmit_FS(uint8_t* Buf, uint16_t Len)
{
uint8_t result = USBD_OK;
/* USER CODE BEGIN 8 */
//USBD_CDC_SetTxBuffer(hUsbDevice_0, UserTxBufferFS, Len); // generated code
USBD_CDC_SetTxBuffer(hUsbDevice_0, Buf, Len); 
// modified code
result = USBD_CDC_TransmitPacket(hUsbDevice_0);
/* USER CODE END 8 */
return
result;
}

I have changed a line in

CDC_Transmit_FS

function to use it from main.c file to write data to USB. How can I get data out of

UserRxBufferFS

buffer as there is no code inside

CDC_Receive_FS

function ? In my application, I need full duplex USB communication. Please through some code samples for this project. I have seen CDC_Standalone example in STM32Cube_FW_F4_V1.3.0\Projects\STM324x9I_EVAL\Applications\USB_Device\CDC_Standalone But this is quite different from what I want to achieve ( this is USB to RS232 bridge sample) #virtual-com-port #cdc #stm32f4
This topic has been closed for replies.