这是因为USB的描述符出了问题。Win10系统下不需要装任何驱动就能使用USB虚拟串口,但更低版本的系统比如Win7则必须要安装ST官方提供的VCP驱动:STM32 Virtual COM Port Driver(STSW-STM32102)。在Windows 7下,usbd_desc.c中的设备描述符USBD_DeviceDesc的bDeviceClass和bDeviceSubClass可以为0,但USBD_VID必须为0x0483,USBD_PID必须为0x5740,否则无法匹配上安装的VCP驱