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

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

3天内不再提示

在GD32F103移植STM32F103代码

ARM与嵌入式 来源:ARM与嵌入式 2023-12-15 13:37 次阅读

使用相同FLASH和管脚数量相同的芯片,例如GDF103C8T6移植STM32F103C8T6程序。虽然两个款芯片的寄存器地址以及架构基本相同。但是需要注意的是GD32F10x主频是108兆,但是STM32F10x主频是72兆。所以需要针对以RCC时钟进行修改。

例如打开原子哥的ALIENTEK MINISTM32 实验8 PWM输出实验例程

先将芯片的选项进行修改

wKgZomV75wiAFetjAACyvatd3q0780.png
然后将STM32的启动文件替换成GD的启动文件,关于STM32启动,点击:详解STM32启动文件。

wKgZomV75wiAchmJAAAJ-0RPkVE025.png

当然也可以不替换,我这里选择替换掉。

wKgaomV75wiAaeamAAAQa8lifn0067.png
然后就想修改时钟相关配置

①打开stm32f10x.h文件,找到定义

//#define HSE_STARTUP_TIMEOUT ((uint16_t)0x0500) /*!< Time out for HSE start up/

修改为

#define HSE_STARTUP_TIMEOUT ((uint16_t)0xFFFF) /!< Time out for HSE start up */

这是因为GD频率高,并且稳定内部8兆的时钟HSE需要更多的时间,这里给满。

wKgZomV75wiAS3pnAAANS4Hznww719.png

②修改system_stm32f10x.c文件

按照72MHz方式,添加108兆代码

1)

wKgaomV75wiAZWABAAANRmnSWLc425.png

改为

wKgZomV75wiAVrMnAAAMDeojOEc638.png

2)将

wKgaomV75wiAQ-orAACMq7o6aIM458.png

改为

wKgaomV75wiAQ-Y_AACecop0W-s195.png

3)将

wKgaomV75wmAMMr5AAAu6puY0Gs454.png

改为

wKgZomV75wiAY7IyAAAIPC-L0fs803.png

wKgZomV75wmAV9WIAADoFbohoRs367.png

STM32的27位28位是保留的,但是GD的是用来配合PLL倍频的

wKgZomV75wiAaP5fAAB8_LT1Caw047.png

在最后添加108兆的时钟配置程序

wKgZomV75wiAD9IDAABOvGgpz20692.png

全局时钟配置寄存器在GD中命名时RCC_GCFGR,在STM32中命名为RCC_CFGR,关于PLL倍频系数配置PLLMF不同,红框内是先将HSE(8兆)分频为2得到4兆,然后27倍频得到108兆。

wKgaomV75wiAZdKAAAJH2griYig386.png

这时就得到了108兆的主频时钟

然后修改读取时钟的函数void RCC_GetClocksFreq(RCC_ClocksTypeDef* RCC_Clocks)

wKgaomV75wiAdgqwAABmIMFgYXI897.png

当发现时RCC_CFGR第27位置位了,就将倍频数从12+15 = 27.

至此,GD32F103移植ST32F103的工程就修改完成了,就可以尽情的使用ST的库代码了。有问题可以联系我,拉你入技术群交流学习。

审核编辑:汤梓红

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

    关注

    453

    文章

    50360

    浏览量

    421623
  • 寄存器
    +关注

    关注

    31

    文章

    5308

    浏览量

    119975
  • 移植
    +关注

    关注

    1

    文章

    377

    浏览量

    28107
  • STM32F103
    +关注

    关注

    33

    文章

    476

    浏览量

    63456
  • GD32F103
    +关注

    关注

    5

    文章

    18

    浏览量

    9418

原文标题:在GD32F103移植STM32F103代码

文章出处:【微信号:ARM与嵌入式,微信公众号:ARM与嵌入式】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    STM32F103系列能用GD32F103完全替代吗?

    STM32F103系列能用GD32F103完全替代吗?
    发表于 04-10 11:20

    GD32F103芯片解密GD32F103单片机解密GD32F103抄板

    GD32F103芯片解密GD32F103单片机解密GD32F103抄板GD32F103T4U6,GD32F103T6U6,
    发表于 06-06 16:53

    GD32F103STM32F103的硬件是怎样进行替换的

    GD32F103STM32F103的硬件有什么区别?GD32F103STM32F103的硬件是怎样进行替换的?有哪些需要注意的地方?
    发表于 10-15 07:25

    如何利用GDF103C8T6去移植STM32F103C8T6程序呢

    GD32F103移植STM32F103代码使用相同FLASH和管脚数量相同的芯片,例如GDF103
    发表于 01-26 07:18

    GD32F103STM32F103的区别进行介绍

    GD32F103STM32F103区别介绍关键词Key words:GD32F103STM32F103摘要Abstract:本文主要是GD32F
    发表于 02-11 06:28

    stm32f103移植

    stm32f103移植
    发表于 10-27 09:03 43次下载
    <b class='flag-5'>stm32f103</b><b class='flag-5'>移植</b>

    LMT70代码基于stm32f103

    LMT70测温代码基于stm32f103免费下载。
    发表于 05-06 11:16 29次下载

    GD32F103移植STM32F103代码

    GD32F103移植STM32F103代码使用相同FLASH和管脚数量相同的芯片,例如GDF103
    发表于 12-02 15:21 23次下载
    <b class='flag-5'>在</b><b class='flag-5'>GD32F103</b><b class='flag-5'>移植</b><b class='flag-5'>STM32F103</b><b class='flag-5'>代码</b>

    GD32F103STM32F103的区别 2021.6.2

    GD32F103STM32F103区别介绍关键词Key words:GD32F103STM32F103摘要Abstract:本文主要是GD32F
    发表于 12-08 11:06 83次下载
    <b class='flag-5'>GD32F103</b>与<b class='flag-5'>STM32F103</b>的区别 2021.6.2

    RT-Thread系统移植STM32f103

    RT-Thread系统移植STM32f103
    发表于 12-09 12:51 26次下载
    RT-Thread系统<b class='flag-5'>移植</b>到<b class='flag-5'>STM32f103</b>

    GD32F103配置SPI+DMA收发数据

    本文介绍如何配置GD32F103系列的SPI和DMA,并贴出相关代码
    发表于 12-22 19:15 108次下载
    <b class='flag-5'>GD32F103</b>配置SPI+DMA收发数据

    如何进行GD32F103系列的BSP制作

    系列,但从2020年下半年开始,国内出现史无前例的芯片缺货潮,我们参考STM32F103系列进行GD32F103系列的BSP制作。
    的头像 发表于 05-12 11:00 2981次阅读

    AN019 基于GD32F103的Lua解释器的移植

    AN019 基于GD32F103的Lua解释器的移植
    发表于 02-27 18:22 1次下载
    AN019 基于<b class='flag-5'>GD32F103</b>的Lua解释器的<b class='flag-5'>移植</b>

    AN029 GD32F103程序GD32F303和GD32F403芯片上运行DSP

    AN029 GD32F103程序GD32F303和GD32F403芯片上运行DSP
    发表于 02-27 18:33 0次下载
    AN029 <b class='flag-5'>GD32F103</b>程序<b class='flag-5'>在</b><b class='flag-5'>GD32F</b>303和<b class='flag-5'>GD32F</b>403芯片上运行DSP

    gd32f103可以完全替代stm32f103

    的市场份额。两个系列都基于ARM Cortex-M3内核,因此功能和性能上有一些相似之处。 一、技术特点比较: 1.1 处理器核心: GD32F103STM32F103都采用了ARM
    的头像 发表于 12-07 11:26 4967次阅读