发新帖本帖赏金 5.00元(功能说明)我要提问
返回列表
打印

GD32USB移植时钟问题

[复制链接]
4229|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
RuiKwok|  楼主 | 2022-9-2 09:32 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
在GD32F450Z官方例程中USB键盘例程中,工程在system_gd32f4xx.c设置为系统时钟为168MHz_25MHz,在对USB延时上使用TIMER2进行实现,预分频为(6+1),微秒级延时计数值为(11+1),毫秒级计数值(11999+1)。我对这个没有疑问。但是问题在于当我将system_gd32f4xx.c中的系统时钟改为200MHz_25MHz后,将TIMER2的预分频值改为(9+1),微秒级延时计数值为(9+1),毫秒级计数值(9999+1),却无法实现功能。我单独在200MHz测试定时器功能,正常延时,有哪位老哥知道原因。

使用特权

评论回复

相关帖子

沙发
RuiKwok|  楼主 | 2022-9-2 15:53 | 显示全部楼层
pq113_6 发表于 2022-9-2 13:31
CK_PLLVCOSRC = 1M,CK_PLLVCO = 400M,CK_PLLP = 200M,PLLQ = 400 / 9 = 44.4444M, 和48M有误差。要想200 ...

您好,感谢您之前的解答,确是我之前未了解的知识点。按照您说的,我有查看了官方例程,确实使用的PLL48模式。
按照这个思路,我在200MHz_25MHz的前提下,改为使用内部IRC48MHz,但是仍无法使用,请问是什么原因?望您不吝赐教

使用特权

评论回复
板凳
RuiKwok|  楼主 | 2022-9-8 15:06 | 显示全部楼层
sagade 发表于 2022-9-3 11:46
按照官方例程使用IRC48M,没有进行CTC校准,我这边是可以正常使用。
请问您是在CTC校准后才正常的,还是 ...

我是忘开时钟了

使用特权

评论回复
发新帖 本帖赏金 5.00元(功能说明)我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

9

帖子

0

粉丝