打印
[研电赛技术支持]

STM32和GD32有什么区别?

[复制链接]
6225|23
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
慢醇|  楼主 | 2021-7-21 21:00 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
一、前言
什么GD32?
GD32是国内开发的一款单片机,据说开发的人员是来自ST公司的,GD32也是以STM32作为模板做出来的。
所以GD32和STM32有很多地方都是一样的,不过GD32毕竟是不同的产品,不可能所有东西都沿用STM32,有些自主开发的东西还是有区别的。相同的地方我们就不说了,下面我给大家讲一下不同的地方。

使用特权

评论回复
沙发
慢醇|  楼主 | 2021-7-21 21:05 | 只看该作者
二、区别

1、内核
GD32采用二代的M3内核,STM32主要采用一代M3内核,下图是ARM公司的M3内核勘误表,GD使用的内核只有752419这一个BUG。

使用特权

评论回复
板凳
慢醇|  楼主 | 2021-7-21 21:06 | 只看该作者

使用特权

评论回复
地板
慢醇|  楼主 | 2021-7-21 21:09 | 只看该作者
2、主频

使用HSE(高速外部时钟):GD32的主频最大108M,STM32的主频最大72M
使用HSI(高速内部时钟):GD32的主频最大108M,STM32的主频最大64M
主频大意味着单片机代码运行的速度会更快,项目中如果需要进行刷屏,开方运算,电机控制等操作,GD是一个不错的选择。

使用特权

评论回复
5
慢醇|  楼主 | 2021-7-21 21:12 | 只看该作者
3、供电

外部供电:GD32外部供电范围是2.63.6V,STM32外部供电范围是23.6V。GD的供电范围比STM32相对要窄一点。

内核电压:GD32内核电压是1.2V,STM32内核电压是1.8V。GD的内核电压比STM32的内核电压要低,所以GD的芯片在运行的时候运行功耗更低。

使用特权

评论回复
6
慢醇|  楼主 | 2021-7-21 21:13 | 只看该作者
4、Flash差异

GD32的Flash是自主研发的,和STM32的不一样。

GD Flash执行速度:GD32 Flash中程序执行为0等待周期。

使用特权

评论回复
7
慢醇|  楼主 | 2021-7-21 21:14 | 只看该作者
STM32 Flash执行速度:ST系统频率不访问flash等待时间关系:0等待周期,当0<SYSCLK<24MHz,1等待周期,当24MHz<SYSCLK≤48MHz,2等待周期,当48MHz<SYSCLK≤72MHz。

Flash擦除时间:GD擦除的时间要久一点,官方给出的数据是这样的:GD32F103/101系列Flash 128KB 及以下的型号, Page Erase 典型值100ms, 实际测量60ms 左右。对应的ST 产品Page Erase 典型值 20~40ms。

使用特权

评论回复
8
慢醇|  楼主 | 2021-7-21 21:18 | 只看该作者
5、功耗

从下面的表可以看出GD的产品在相同主频情况下,GD的运行功耗比STM32小,但是在相同的设置下GD的停机模式、待机模式、睡眠模式比STM32还是要高的。

使用特权

评论回复
9
慢醇|  楼主 | 2021-7-21 21:19 | 只看该作者

使用特权

评论回复
10
慢醇|  楼主 | 2021-7-21 21:20 | 只看该作者

使用特权

评论回复
11
慢醇|  楼主 | 2021-7-21 21:22 | 只看该作者
6、串口

GD在连续发送数据的时候每两个字节之间会有一个Bit的Idle,而STM32没有,如下图。

使用特权

评论回复
12
慢醇|  楼主 | 2021-7-21 21:29 | 只看该作者
GD的串口在发送的时候停止位只有1/2两种停止位模式。STM32有0.5/1/1.5/2四种停止位模式。

使用特权

评论回复
13
慢醇|  楼主 | 2021-7-21 21:30 | 只看该作者
GD 和STM32 USART的这两个差异对通信基本没有影响,只是GD的通信时间会加长一点。

使用特权

评论回复
14
慢醇|  楼主 | 2021-7-21 21:35 | 只看该作者
7、ADC差异

GD的输入阻抗和采样时间的设置和ST有一定差异,相同配置GD采样的输入阻抗相对来说要小。具体情况见下表这是跑在72M的主频下,ADC的采样时钟为14M的输入阻抗和采样周期的关系:

使用特权

评论回复
15
慢醇|  楼主 | 2021-7-21 21:36 | 只看该作者

使用特权

评论回复
16
慢醇|  楼主 | 2021-7-21 21:38 | 只看该作者
8、FSMC

STM32只有100Pin以上的大容量(256K及以上)才有FSMC,GD32所有的100Pin或100Pin以上的都有FSMC。

使用特权

评论回复
17
慢醇|  楼主 | 2021-7-21 21:39 | 只看该作者
9、103系列RAM&FLASH大小差别

GD103系列和ST103系列的ram和flash对比如下图:

使用特权

评论回复
18
慢醇|  楼主 | 2021-7-21 21:40 | 只看该作者

使用特权

评论回复
19
慢醇|  楼主 | 2021-7-21 21:41 | 只看该作者
10、105&107系列STM32和GD的差别

GD的105/107的选择比ST的多很多,具体见下表:

使用特权

评论回复
20
慢醇|  楼主 | 2021-7-21 21:47 | 只看该作者
11、抗干扰能力

关于这一点,官方没有给出,我也是在做项目的时候偶然发现的,项目原本是用STM32F103C8T6,后来换成GD F103C8T6,这两个芯片的引脚完全一致,然后单片机用了的两个邻近的引脚作为SPI的时钟引脚和数据输出引脚,然后发现STM32的SPI能正常通讯,GD的不行,经过检查发现PCB板SPI的铜线背面有两根IIC的铜线经过,信号应该是受到影响了。

使用特权

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

本版积分规则

125

主题

1241

帖子

5

粉丝