ST意法半导体
直播中

硬件工程师1

10年用户 1582经验值
擅长:可编程逻辑
私信 关注
[问答]

STM32F105RC上的USART传输和USB堆栈问题如何解决?

你好!我试图在主循环中使用 usart1,在 usb 中断中使用 VCP USB。USB 工作正常,直到我不使用 usart。
当我尝试在主周期中连续发送数据时,USB 堆栈不工作(枚举失败):
  • while (1)
  • {
  •     HAL_UART_Transmit(&huart1, (uint8_t*)"Hello Worldn", 12, 10);
  •    /* USER CODE END WHILE */
  •    /* USER CODE BEGIN 3 */
  • }
当我将 USART1 更改为 USART3 时,USB 工作正常......我不明白 - 发生了什么事?
STM32CubeMX 版本:5.2.1
单片机:STM32F105RC
优化 O0 和 O1,行为是相同的。







回帖(1)

杨诗琪

2023-1-11 12:18:08
对于 OTG_FS_VBUS 引脚 (PA9) 被另一个共享外设使用或作为通用 IO,
PHY 掉电模式必须处于活动状态(清除 OTG_FS_GCCFG 寄存器中的第 16 位)
RM0008 的第 169 页。
谢谢你的帮助..
但在 STM32Cube 中,启用 USB 时此引脚未锁定。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分