Velocidad en baudios del puerto COM virtual STM32

3

Estoy usando el firmware STM32 VCP y deseo transmitir datos a mi PC desde el tablero de descubrimiento STM32F4. La configuración del puerto COM virtual está bien, las propiedades son las siguientes en el administrador de dispositivos:

Eninglés:9600bit/s,8bitdedatos,sinparidad,1bitdeparada,sincontroldeflujodehardware.EstoytratandoderecibircaracteresenRealtermconestosparámetros,peronolosobtengo,parecelosiguiente:

¿Qué podría hacer mal?

EDIT:

La MCU envía con el siguiente fragmento de código:

int main(void)
{
  HAL_Init();
  SystemClock_Config();
  MX_GPIO_Init();
  MX_USB_DEVICE_Init();
  uint8_t Buf[] = "test";
  HAL_Delay(1000);
  while (1)
  {
      CDC_Transmit_FS(Buf, 4);
      HAL_Delay(1000);
  }
}
    
pregunta ramez

1 respuesta

6

La implementación CDC_Transmit_FS está defectuosa (al menos en la versión que estoy viendo):

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);  
  result = USBD_CDC_TransmitPacket(hUsbDevice_0);
  /* USER CODE END 8 */
  return result;
}

Como puede ver, el parámetro Buff nunca se usa en la función. Puede intentar modificar la función, copiando Buff en UserTxBufferFS (usando memcpy o lo que sea).

    
respondido por el Eugene Sh.

Lea otras preguntas en las etiquetas