STM32F103 USB转双串口。使用CDC类。插上电脑后,会出来两个虚拟串口,如果提示找不到驱动,指定驱动路径到inf文件夹即可。
相比ST官方提供的只有1路串口的例程,方便了很多
用到的IO定义如下:
串口1:PA9和PA10
const GPIO_InitTypeDef TX1_pin = { GPIO_Pin_9, GPIO_Speed_50MHz, GPIO_Mode_AF_PP };
const GPIO_InitTypeDef RX1_pin = { GPIO_Pin_10, GPIO_Speed_50MHz, GPIO_Mode_IN_FLOATING };
串口2:PA2和PA3
const GPIO_InitTypeDef TX2_pin = { GPIO_Pin_2, GPIO_Speed_50MHz, GPIO_Mode_AF_PP };
const GPIO_InitTypeDef RX2_pin = { GPIO_Pin_3, GPIO_Speed_50MHz, GPIO_Mode_IN_FLOATING };
USB使能脚:PC15
#define USB_DISCONNECT GPIOC
#define USB_DISCONNECT_PIN GPIO_Pin_15 //GPIO_Pin_12
#define RCC_APB2Periph_GPIO_DISCONNECT RCC_APB2Periph_GPIOC
你可以根据自己板子的定义自行修改,修改办法是搜索上面这些宏定义,找到地方直接改掉并重新编译即可
1