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的库代码了。有问题可以联系我,拉你入技术群交流学习。

审核编辑:汤梓红

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

    关注

    447

    文章

    47788

    浏览量

    409118
  • 寄存器
    +关注

    关注

    30

    文章

    5028

    浏览量

    117719
  • 移植
    +关注

    关注

    1

    文章

    367

    浏览量

    27854
  • STM32F103
    +关注

    关注

    33

    文章

    474

    浏览量

    62573
  • GD32F103
    +关注

    关注

    4

    文章

    17

    浏览量

    9358

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

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

收藏 人收藏

    评论

    相关推荐

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

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

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

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

    STM32F103与MM32F103使用心得

    ,需要小修改一下,但是MM32是有自己库的,寄存器不一样,如果是STM32F103的要完全移植到MM32F103需要花点时间。?5、加密性对比:据深圳奧宇集成电路的反向研究测试,STM32F1
    发表于 12-05 21:07

    GD32E103/F303系列与STM32F103的相同点

    注:本文档仅针对GD32E103/F303系列替代STM32F103系列说明:GD32E103/GD32F10x/
    发表于 08-04 08:51

    GD32E103/F303系列与STM32F103的硬件是怎样替换的

    GD32E103/F303系列与STM32F103有哪些相同点?GD32E103/F303系列与STM3
    发表于 10-15 08:33

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

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

    GD32F30/E103系列是如何替换STM32F103

    GD32F103GD32F303有哪些相同点?GD32F103GD32F303在外围硬件上有何区别?
    发表于 10-19 07:32

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

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

    GD32F103STM32F103的区别进行介绍

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

    如何配置GD32F103系列的SPI和DMA

    本文介绍如何配置GD32F103系列的SPI和DMA,并贴出相关代码
    发表于 02-17 06:44

    stm32f103移植

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

    GD32F103移植STM32F103代码

    GD32F103移植STM32F103代码使用相同FLASH和管脚数量相同的芯片,例如GDF103C8T6
    发表于 12-02 15:21 23次下载
    在<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 82次下载
    <b class='flag-5'>GD32F103</b>与<b class='flag-5'>STM32F103</b>的区别 2021.6.2

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

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

    gd32f103可以完全替代stm32f103

    GD32F103是中国厂商GigaDevice推出的一款低成本、高性能的微控制器产品线。STM32F103是意法半导体(STMicroelectronics)的旗舰产品之一,享有良好的声誉和广泛
    的头像 发表于 12-07 11:26 1683次阅读