USB FS端口,文档说可以用PA11/PA12,PB14/PB15作为DP,DM,但是发现用PB14,PB15居然不行,初始化代码如下:
/* Configure USB FS GPIOs */
__GPIOA_CLK_ENABLE();
__GPIOB_CLK_ENABLE();
__GPIOC_CLK_ENABLE();
/* Configure DM DP Pins */
GPIO_InitStruct.Pin = (GPIO_PIN_14 | GPIO_PIN_15);
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_HIGH;
GPIO_InitStruct.Alternate = GPIO_AF10_OTG_FS;
HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
上面代码情况是DP管脚始终为0V,1.5K上拉电阻不起作用,确保其他地方没有复用该管脚。
换成GPIOA的11,12管脚就好用了,真是奇怪。
|