久芯网

STM32 USB 时钟使能问题

avatar WeChatWe 提问时间: 2023-07-09 07:45:39 / 已解决
Hello,大家好,最近在使用STM32F103RCT6开发USB设备,使用的是STM32CubeMx生成的代码,但查看代码发现一个问题,HAL_PCD_MspInit函数中开启了USB外设时钟,但是他开启的是RCC->APB1ENR的bit23,如下图: STM32 USB 时钟使能问题 [相关图片] STM32 USB 时钟使能问题 [相关图片] STM32 USB 时钟使能问题 [相关图片]
但是我翻阅103系列的参考手册得到的结果是该寄存器的23bit是保留位,只在AHBENR寄存器有一个OTGFSEN位,所以此处很奇怪,为什么实际代码和手册对不上?是我哪里误会了吗?不知道有哪位大神是否可以帮忙解惑。
STM32 USB 时钟使能问题 [相关图片]

如需获得 STM32 等器件的更多信息,请点击链接或 点击此处 联系在线客服!

4个回答
  • avatar xmshao
    最佳答案
    回答时间: 2023-07-09 08:05:36

    应该是你误会了。 STM32F1系列分互联性和非互联型两个子系列,互联型系列支持双CAN,带USB OTG,指STM32F105和STM32F107。两个子系列在USB模块 、CAN模块 RCC等地方有明显差异,当然包括寄存器的定义。你现在用的是STM32F103RC,它属于非互联型系列。 你现在的问题就是看错地方了,你看的寄存器是互联型系列的相关寄存器定义,实际上你要看非互联型系列的相关内容, 即Low-, medium-, high- and XL-density器件的相关内容,而不是Connectivity line 器件的内容。

  • avatar STMWoodData
    回答时间: 2023-07-09 08:22:26

    找的手册位置不对吧

  • avatar WeChatWe
    回答时间: 2023-07-09 08:52:50
    STMWoodData 发表于 2023-1-30 11:45
    找的手册位置不对吧

    是的,和你这个对比来看,的确像是我的手册版本不对。请问下你的是哪个版本?我刚从官网下的RM0008版也是没有这个。

  • avatar WeChatWe
    回答时间: 2023-07-09 09:22:30
    xmshao 发表于 2023-1-30 14:00
    应该是你误会了。

    谢谢,理解了,我仔细确认了下,确实是你说的这么回事,我看错位置了。谢谢。

会员中心 微信客服
客服
回到顶部