1) 在usbd_cdc_if.c文件中修改代码如下:
static int8_t CDC_Receive_FS(uint8_t* Buf, uint32_t *Len)
{
/* USER CODE BEGIN 6 */
if(Buf[0] == '1')
{
HAL_GPIO_WritePin(GPIOC,GPIO_PIN_13,GPIO_PIN_RESET);
char dta[] = "LED ON!";
CDC_Transmit_FS(dta,strlen(dta));
}
else if(Buf[0] == '0')
{
HAL_GPIO_WritePin(GPIOC,GPIO_PIN_13,GPIO_PIN_SET);
char dta[] = "LED OFF!";
CDC_Transmit_FS(dta,strlen(dta));
}
USBD_CDC_SetRxBuffer(&hUsbDeviceFS, &Buf[0]);
USBD_CDC_ReceivePacket(&hUsbDeviceFS);
return (USBD_OK);
/* USER CODE END 6 */
}
2)在串口调试助手中设置串口波特率为9600或115200等(其实USB虚拟串口与波特率无关),发字符1或0,则会显示LED ON! LED OFF!,同时板上的LED灯会亮或灭
3)如果在设备管理器上虚拟串口驱动不正常,网上说了很多方法,我的是更新驱动程序,再重新插板即可。驱动下载地址: