打印

请问GD32F20x怎么修改晶振频率

[复制链接]
3295|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zhugean|  楼主 | 2024-5-28 09:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请问GD32F20x怎么修改晶振频率,system_gd32f20x.c中好像是按25MHz的晶振来配置的,怎么修改成别的频率,谢谢。

使用特权

评论回复
沙发
sunriverYao| | 2024-6-4 01:27 | 只看该作者

请问GD32F20x怎么修改晶振频率

大多数厂商启动函数直接运行
        LDR     R0, =__main        BX      R0
但是,GD的却先跑  

        LDR     R0, =SystemInit   BLX     R0
再跑
        LDR     R0, =__main        BX      R0      
    所以,先修改SystemInit(void)函数,及其调用的函数  system_clock_config(void)。如果你要的频率,接近哪个频点,就自己增加一个...
如,110592000MHz, 我们就增加(开放):
    #define __SYSTEM_CLOCK_110M_PLL_HXTAL            110592000UL         //在该文件前面几行!

    后续编译程序预处理,自己调用:
    ////~~~~

    #elif defined (__SYSTEM_CLOCK_110M_PLL_HXTAL)
    system_clock_110m_hxtal();
    ......
    我们复制已有的“108MHz”情况的函数为“110MHz”函数,并修改相关参数:          //注:110非常接近108MHz。

    SystemCoreClock = __SYSTEM_CLOCK_110M_PLL_HXTAL;
    ......
    换掉晶振,可能换掉匹配电容(5pF~)。    上电,示波器观察xin/xout脚:振荡==OK==搞定!


使用特权

评论回复
板凳
FranklinUNK| | 2024-6-20 19:52 | 只看该作者
分频系数调一下就行了

使用特权

评论回复
地板
有何不可0365| | 2024-7-31 21:43 | 只看该作者
分频系数需要进行一些调整。

使用特权

评论回复
5
ym0sly| | 2024-8-31 12:37 | 只看该作者
在GD32F20x系列微控制器中,系统时钟的配置是通过设置系统时钟源和预分频器来实现的。

使用特权

评论回复
6
ym0sly| | 2024-8-31 12:37 | 只看该作者
system_gd32f20x.c文件中的时钟配置部分通常包括晶振的初始化以及系统时钟源的设置。

使用特权

评论回复
7
发货后已经wi| | 2024-9-30 21:53 | 只看该作者
system_gd32f20x.c中好像是按25MHz的晶振来配置

使用特权

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

本版积分规则

1

主题

1

帖子

1

粉丝