打印

GD32选择外接8M晶振后,需要做哪些设置?

[复制链接]
2644|15
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 huaimengzi 于 2024-12-15 23:12 编辑

原本库函数默认的是72M,定时器设置为1ms, 选择8M晶振后,定时变成了9ms.
GD32选择外接8M晶振后,选择这个宏定义后,还需要做哪些设置呢?第一次改用外接晶振,不懂,求大家帮忙解惑!谢谢!


使用特权

评论回复
沙发
zeshoufx| | 2024-12-16 09:15 | 只看该作者
为什么要选这个呢?

使用特权

评论回复
板凳
xionghaoyun| | 2024-12-16 14:23 | 只看该作者
把定时器计数/9

使用特权

评论回复
地板
huaimengzi|  楼主 | 2024-12-16 21:00 | 只看该作者
zeshoufx 发表于 2024-12-16 09:15
为什么要选这个呢?

是我自己搞错了,我以为外接8M晶振就要开启__SYSTEM_CLOCK_8M_HXTAL 这个宏定义。后来我看了一下库函数的调用关系,搞明白了。系统72M的频率就是基于8M外接晶振倍频得到的,所以选择默认的__SYSTEM_CLOCK_72M_PLL_HXTAL就是正确的。如果选择__SYSTEM_CLOCK_8M_HXTAL 这个宏定义,那么时钟默认是没有倍频的,AHB->APB1,APB2也就变成了8M。

使用特权

评论回复
5
zeshoufx| | 2024-12-16 21:32 | 只看该作者
huaimengzi 发表于 2024-12-16 21:00
是我自己搞错了,我以为外接8M晶振就要开启__SYSTEM_CLOCK_8M_HXTAL 这个宏定义。后来我看了一下库函数的 ...

是的

使用特权

评论回复
6
q1ngt12| | 2025-1-22 14:21 | 只看该作者
在使用 GD32 微控制器时,如果选择外接 8MHz 晶振作为系统时钟源,需要进行以下设置以确保系统时钟正确配置并正常工作

使用特权

评论回复
7
y1n9an| | 2025-1-22 15:26 | 只看该作者
确保 8MHz 晶振正确连接到 GD32 的 OSC_IN 和 OSC_OUT 引脚(通常是 PF0 和 PF1)。确保晶振两端并联的负载电容(通常为 20pF)正确连接。

使用特权

评论回复
8
suw12q| | 2025-1-22 16:32 | 只看该作者
在代码中需要配置以下寄存器以启用外部晶振并设置系统时钟

使用特权

评论回复
9
cen9ce| | 2025-1-22 18:09 | 只看该作者
配置 PLL 的倍频系数,将 8MHz 晶振倍频到目标频率(例如 72MHz)

使用特权

评论回复
10
l1uyn9b| | 2025-1-22 19:10 | 只看该作者
晶振频率,确保晶振频率与代码中配置的频率一致。

使用特权

评论回复
11
kaif2n9j| | 2025-1-22 20:27 | 只看该作者
晶振两端的负载电容值需要根据晶振规格书选择,通常为 20pF。

使用特权

评论回复
12
kaif2n9j| | 2025-1-22 21:16 | 只看该作者
根据外设需求合理配置 AHB 和 APB 分频器。

使用特权

评论回复
13
d1ng2x| | 2025-1-23 10:10 | 只看该作者
使用调试工具(如 J-Link)检查系统时钟是否正确配置

使用特权

评论回复
14
lix1yr| | 2025-1-23 12:13 | 只看该作者
使用调试工具查看 RCC 寄存器的值,确认时钟配置是否正确

使用特权

评论回复
15
b5z1giu| | 2025-1-23 14:57 | 只看该作者
如果系统无法启动,检查晶振是否起振,或尝试使用内部时钟(HSI)作为临时替代。

使用特权

评论回复
16
Amazingxixixi| | 2025-1-24 13:56 | 只看该作者
学习一下,提升自己

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

14

帖子

0

粉丝