GD32代码移植STM32(一)

发布者:GoldenDream最新更新时间:2024-11-06 来源: elecfans关键字:GD32  代码移植  STM32 手机看文章 扫描二维码
随时随地手机看文章

GAIWEI例子:GD32F103移植STM32F103

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


1.先将芯片的选项进行修改:查找对应芯片。

poYBAGN83rCAf_8iAADNMilJihU020.png?imageView2/2/w/1000

2.将STM32的启动文件替换成GD的启动文件。

poYBAGN83uyAAAzkAABAwB-caDs148.png?imageView2/2/w/1000

3.修改时钟相关配置。

打开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 */

4.修改system_stm32f10x.c文件

pYYBAGN832mAf8zfAACgg0Zn-Fk239.png?imageView2/2/w/1000

改为:

poYBAGN834CACuaAAACrcvkKDgQ407.png?imageView2/2/w/1000

5.对应的文件利、里,SYCLK_FPEQ_72 MHZ 72改为108

poYBAGN835-AAlFvAAFubK3s5Gc889.png?imageView2/2/w/1000


poYBAGN84AeAI95wAAGy2QJN8yI120.png?imageView2/2/w/1000


pYYBAGN84ByAf3N9AACwUWfUCrk483.png?imageView2/2/w/1000


poYBAGN84CuAV3U5AADtdeaPB7E737.png?imageView2/2/w/1000

pYYBAGN84FeABmkWAADh2jLcgqg102.png?imageView2/2/w/1000


poYBAGN84GKAImn8AAD5y_I_VBM414.png?imageView2/2/w/1000

6.添加108MHZ的时钟配置程序

pYYBAGN84K-AYy50AAFrVm1dXBc924.png?imageView2/2/w/1000

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

poYBAGN84OWAZZjSAAGwnOm10W4124.png?imageView2/2/w/1000


关键字:GD32  代码移植  STM32 引用地址:GD32代码移植STM32(一)

上一篇:GD32开发实战指南(基础篇) 第7章 定时器
下一篇:关于GD32 MCU打造绿色智能家居的介绍和应用

推荐阅读最新更新时间:2026-03-23 11:16

ucOS_II移植:Stm32启动代码分析
用的编译工具是keil,在用keil建立stm32工程时,一般会产生一个启动文件,STM32F10x.s,在st提供的库函数里,用cortexm3_macro.s和stm32f10x_vector.s来代替这个文件。不过内容都大同小异。 我在csdn上搜到了一个在stm32上移植好的ucos,打算在这个代码的基础上,添加注释,先学别人的,然后再自己移植。 我获得的这份例程,使用了startup_stm32f10x_md.s作为启动文件,其中,删去了部分采用扩展SRAM的代码。 其文件内容为 startup_stm32f10x_md.s ;******** (C) COPYRIGHT2010 STMicroelectronics
[单片机]
深夜!我偷偷的把室友的STM32换成了GD32
一、什么是GD32 GD32是由北京兆易创新开发的国产32位MCU,基于Arm Cortex- M3/M23/M4内核以及RISC-V内核的32位通用微控制器,与STM32相比,CPU主频更高,内存更多,外设更丰富。其众多产品是以STM32芯片为模板,基于STM32的底层寄存器地址进行正向研发,部分产品可以直接PIN TO PIN替代STM32的芯片,部分型号可以直接以STM32的程序做部分修改后直接烧入进GD32中运行,例如GD32E103、GD32F10x、GD32F30x都是和STM32F10x系列是完全PIN TO PIN兼容的,内部地址寄存器完全兼容,唯一区别只是内核不同,但在使用外设时影响不会很大。 一个大胆的想法
[单片机]
使用MCU GD32替代STM32的体会
GD32作为国产MCU里的佼佼者,产品线也比较丰富,是替代STM32的一个很好的选择。前段时间有个项目用到GD32的单片机,今天来说说使用的一些体会。 1.硬件我用的单片机型号为GD32F405RGT6,对应STM32F405RGT6。首先,硬件上基本兼容,有一点不同的是GD32的31和47脚为NC,STM32的为VCAP。STM32这两个引脚需要分别连接一个电容到GND,而GD32则不需要。当然,有这两个电容也无所谓,所以,硬件上GD32可以直接替换STM32。 仿真器可以使用Jlink,也可以使用STLink,但是下载程序时会弹框提示,非ST芯片。 2.软件软件上,前期
[单片机]
使用MCU <font color='red'>GD32</font>替代<font color='red'>STM32</font>的体会
都是32位MCU,ESP32、GD32STM32有什么区别
01 三款MCU简介 STM32:意法半导体在 2007 年 6 月 11 日发布的产品,32位单片机(不多介绍了,懂得都懂)。 GD32:兆易创新 2013 年发布的产品,在芯片开发、配置、命名上基本模仿 STM32,甚至 GPIO 和 STM32 都是 pin to pin 的,封装不改焊上去直接用。有时候 STM32 的源码不修改,重新编译烧写到 GD32 上就可以跑。当然也有很多不同,比如串口驱动、USB 、库文件等。 ESP32:乐鑫公司 2017 年开发的产品,和 STM32、GD32 不同,ESP32 主要面向物联网领域,支持功能很多,但引出 GPIO pin 脚很少,因此大多数 GPIO 都有很多复用功能。出厂
[单片机]
都是32位MCU,ESP32、<font color='red'>GD32</font>、<font color='red'>STM32</font>有什么区别
STM32/GD32芯片信息
因为需要自动适配芯片进行系统配置,所以我们有必要通过读取一些系统寄存器来获取必要信息。 我们的代码需要兼容STM32F1/GD32F1/STM32F0/STM32F4 代码如下: #ifdef STM32F0XX void* p = (void*)0x1FFFF7AC; #else void* p = (void*)0x1FFFF7E8; #endif memcpy(ID, p, ArrayLength(ID)); CPUID = SCB- CPUID; uint MCUID = DBGMCU- IDCODE; // MCU编码。低字设备版本,高字子版本 RevID = MC
[单片机]
GD32STM32单片机的区别
00 前言 缺料危机还在持续,MCU从国外ST替换到了国产杰发科,国产供应仍有缺口,不得已还得替换,于是又在考虑兆易创新,在选型的过程中,了解到一点区别,和大家分享一下,避免替换时遇到坑。 兆易创新GD32是国内开发的一款单片机,据说开发的人员是来自ST公司的,GD32也是以STM32作为模板做出来的。所以GD32和STM32有很多地方都是一样的。 不过GD32毕竟是不同的产品,不可能所有东西都沿用STM32,有些自主开发的东西还是有区别的。 相同的地方我们就不说了,下面列一下不同的地方。 01 内核 GD32采用二代的M3内核,STM32主要采用一代M3内核,下图是ARM公司的M3内核勘误表,GD使用的内核只有752419这
[单片机]
<font color='red'>GD32</font>和<font color='red'>STM32</font>单片机的区别
STM32/GD32翻新或假货
今天,我的技术交流群在讨论芯片涨价和咸鱼上卖芯片的话题,然后又看到了公众号嵌入式ARM分享了一篇《GD32也开始假货泛滥了》文章,我也来说说关于芯片涨价和假货的一些问题。 1 芯片涨价背景前两年的中美毛衣战,使国内一些技术型大企业受到了影响,比如华为。但是绝大部分电子相关的企业,受到的影响很小。 2020年,一场疫情,导致了一些半导体企业受到很大打击,比如工人罢工。 然后,一些原材料价格开始出现了不同程度的上涨,特别是今年初开始,很多金属、塑料等绝大部分原材料价格都上涨了,小到电阻电容,大到电视冰箱等消费电子产品,都出现了不同程度的涨价。 芯片亦如此,我们熟知的MCU价格出现了不同程度的涨价,相信大家都知道了,特别是STM32
[单片机]
一文详解GD32单片机和STM32单片机
一、GD32单片机的概念、工作原理及内部结构 1.概念 GD32单片机是中国龙芯集成电路公司推出的一款ARM Cortex-M3内核的微控制器。它具有与STM32单片机相同的架构和指令集,但是价格相比STM32更为便宜。同时,GD32单片机有着更高的品质和可靠性,成为一个理想的低成本单片机解决方案。 2.工作原理 GD32单片机的工作原理基于时钟周期,其中时钟周期是单片机执行机器指令的重要组成部分。单片机中的每个时钟周期都包含多个时钟周期,每个时钟周期都可以执行一组基本指令。这些指令对应于单片机内部的不同部分,例如处理器、总线、存储器、IO等。 3.内部结构 GD32单片机的内部结构包含三个主要元件:处理器、存储器和输
[单片机]
小广播
最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

厂商技术中心

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2026 EEWORLD.com.cn, Inc. All rights reserved