0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

更改晶振后如何修改配置?

聚沃科技 2024-01-09 10:10 次阅读

GD32官方提供的固件库中使用的晶振配置一般为8M或25M,如果读者使用其他频率的晶振如何修改配置呢?本文为大家讲解如何修改。

以GD32F303为例,官方固件库中的晶振及时钟配置代码如下,改配置代码为使用外部8M晶振倍频到120M时钟。

wKgZomWctE-AEmzFAACI-gWyQRs849.png

wKgZomWctHOAc9DFAAEbAReqY4w951.png

在此我们举例,若外部晶振使用16M该如何配置,主要修改以下两点:

修改HXTAL_VALUE为16M,如下红色底纹部分。

#if !defined HXTAL_VALUE #ifdef GD32F30X_CL #define HXTAL_VALUE ((uint32_t)25000000) /*!< value of the external oscillator in Hz */ #else #define HXTAL_VALUE ((uint32_t)16000000) /* !< from 4M to 32M *!< value of the external oscillator in Hz*/ #endif /* HXTAL_VALUE */ #endif /* high speed crystal oscillator value */

修改时钟倍频到120M.如下红色底纹部分,配置15倍频,计算公式为16M/2*15=120M.

/* select HXTAL/2 as clock source */ RCU_CFG0 &= ~(RCU_CFG0_PLLSEL | RCU_CFG0_PREDV0); RCU_CFG0 |= (RCU_PLLSRC_HXTAL_IRC48M | RCU_CFG0_PREDV0); /* CK_PLL = (CK_HXTAL/2) * 15 = 120 MHz */ RCU_CFG0 &= ~(RCU_CFG0_PLLMF | RCU_CFG0_PLLMF_4 | RCU_CFG0_PLLMF_5); RCU_CFG0 |= RCU_PLL_MUL15;

PS:GD固件库中修改使用内部时钟非常方便,只要打开内部时钟的宏定义就可以啦。

/* select a system clock by uncommenting the following line */ /* use IRC8M */ //#define __SYSTEM_CLOCK_IRC8M (uint32_t)(__IRC8M) //#define __SYSTEM_CLOCK_48M_PLL_IRC8M (uint32_t)(48000000) //#define __SYSTEM_CLOCK_72M_PLL_IRC8M (uint32_t)(72000000) //#define __SYSTEM_CLOCK_108M_PLL_IRC8M (uint32_t)(108000000) //#define __SYSTEM_CLOCK_120M_PLL_IRC8M (uint32_t)(120000000)

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 晶振
    +关注

    关注

    34

    文章

    2824

    浏览量

    67899
  • 编程
    +关注

    关注

    88

    文章

    3591

    浏览量

    93592
  • GD32
    +关注

    关注

    7

    文章

    403

    浏览量

    24217
  • gd32f303
    +关注

    关注

    4

    文章

    38

    浏览量

    3674
收藏 人收藏

    评论

    相关推荐

    如何修改MPLAB下的跑表的频率

    我在看张明峰的书,里面MPLAB的跑表是4M 我的是20M。 请问高手,怎么修改跑表的频率?谢谢!
    发表于 05-08 20:49

    更改如何修改配置?#MCU #GD32 #单片机 #

    mcu
    聚沃科技
    发布于 :2024年01月09日 11:12:32

    【CANNON试用体验】选用及参数修改记录

    抛砖引玉的作用吧!以后,只要在的允许范围内就可以对照 修改。具体见附件:此修改后,经过串口通信收发实验,完全可用。
    发表于 02-18 11:00

    和电容的配置关系是什么

    哪位大侠知道和电容的配置关系啊,比如13M的要怎么配电容啊?
    发表于 05-27 05:55

    FAQ0093 AT32更换外部BSP修改方法

    本帖最后由 贪玩 于 2022-5-10 19:44 编辑 FAQ0093 AT32更换外部BSP修改方法Questions:AT32 工程项目在采用非 8M 外部
    发表于 02-19 21:23

    使用外部的方案配置RTC

    环境:Stm32CubeMXV5.6.0stm32F412RETx芯片,芯片的VBAT引脚接电池RTC使用的外部,内部的振荡器配置断电
    发表于 08-09 09:35

    STM32芯片和GD芯片修改外部的方法是什么

    24M,则修改HSE_VALUE的值,将其改为24M,当然其他的大小也是同样的修改方法:2、然后在System_stm32f0xx.c文件中,
    发表于 08-10 06:06

    stm32外部时钟源8M如何修改成12M

    stm32外部时钟源8M换成12M程序修改说明▼标签: stm32外部时钟源8m
    发表于 08-12 08:30

    FAQ0093更换外部BSP修改方法

    更换外部BSP修改方法AT32 工程项目在采用非8M 外部时,如何在BSP 中进行
    发表于 10-20 06:41

    关于STM32 RTC时钟使用内部/外部的切换方法

    之前的项目中遇到一个问题,由于一些产品的外部损坏(时间长了有些外部容易坏掉),导致RTC实时时钟时间异常。为了降低公司的维护成本,所以考虑通过
    发表于 11-23 18:07 51次下载
    关于STM32 RTC时钟使用内部/外部<b class='flag-5'>晶</b><b class='flag-5'>振</b>的切换方法

    STM32单片机外部内部配置

    STM32F4外部配置system_stm32f4xx.c这个文件里面有使用的配置,一般
    发表于 12-24 19:21 50次下载
    STM32单片机外部<b class='flag-5'>晶</b><b class='flag-5'>振</b>内部<b class='flag-5'>晶</b><b class='flag-5'>振</b><b class='flag-5'>配置</b>

    stm32F4修改时钟频率,更换为8MHz

    观,输入频率,自动得出倍频过程F4要修改时钟,首先确定外部频率如果是25MHz外部,需要内部168MHz的运行速度。那么不用
    发表于 12-27 18:55 17次下载
    stm32F4<b class='flag-5'>修改</b>时钟频率,更换为8MHz<b class='flag-5'>晶</b><b class='flag-5'>振</b>

    STM32芯片和GD芯片修改外部的方法

    24M,则修改HSE_VALUE的值,将其改为24M,当然其他的大小也是同样的修改方法:2、然后在System_stm32f0xx.c文件中,
    发表于 12-31 19:24 34次下载
    STM32芯片和GD芯片<b class='flag-5'>修改</b>外部<b class='flag-5'>晶</b><b class='flag-5'>振</b>的方法

    STM32外部更换,程序修改指南

    STM32外部更换,程序修改指南在 stm32f10x.h 中,将119行#define HSE_VALUE ((uint32_t)8000000) /*!< Value
    发表于 01-13 10:41 11次下载
    STM32外部<b class='flag-5'>晶</b><b class='flag-5'>振</b>更换,程序<b class='flag-5'>修改</b>指南

    STM32F10x 更改外部修改时钟频率的方法

    。比如你想更换到为外部为12M,但是主频仍想用72M的。该如何设置?或者想倍频到更高的主频该怎么修改?例子就直接直接拿的例子吧! 属性 原来 现在 外部
    发表于 01-13 10:52 9次下载
    STM32F10x <b class='flag-5'>更改</b>外部<b class='flag-5'>晶</b><b class='flag-5'>振</b><b class='flag-5'>后</b>,<b class='flag-5'>修改</b>时钟频率的方法