干货 | 用GD32替换STM32,这些细节你一定要知道!

发布时间:2023-04-24  

GD32是国内开发的一款单片机,据说开发的人员是来自ST公司的,GD32也是以STM32作为模板做出来的。所以GD32和STM32有很多地方都是一样的。


不过GD32毕竟是不同的产品,不可能所有东西都沿用STM32,有些自主开发的东西还是有区别的。


相同的地方我们就不说了,下面列一下不同的地方。


01


内核


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



02


主频


使用HSE(高速外部时钟):GD32的主频最大108M,STM32的主频最大72M


使用HSI(高速内部时钟):GD32的主频最大108M,STM32的主频最大64M


主频大意味着单片机代码运行的速度会更快,项目中如果需要进行刷屏,开方运算,电机控制等操作,GD是一个不错的选择。



03


供电


外部供电:GD32外部供电范围是2.6-3.6V,STM32外部供电范围是2-3.6V。GD的供电范围比STM32相对要窄一点。


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



04


Flash差异


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


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


STM32 Flash执行速度:ST系统频率不访问flash等待时间关系,0等待周期,当0

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

05功耗


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



06


串口


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





GD的串口在发送的时候停止位只有1/2两种停止位模式。STM32有0.5/1/1.5/2四种停止位模式。


GD 和STM32 USART的这两个差异对通信基本没有影响,只是GD的通信时间会加长一点。



07


ADC差异


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



08


FSMC


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



09


103系列RAM&FLASH大小差别


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



10


105&107系列STM32和GD的差别


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



11


抗干扰能力


关于这一点,官方没有给出,笔者也是在做项目的时候偶然发现的。


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


用示波器看了一下引脚的电平,发现确实是,STM32和GD的数据引脚波形都不正常,但是STM32的波形要好很多,波形虽然差了点,但是SPI通讯依然正常。而GD则不能正常通讯了。


然后笔者又把SPI的通讯速率减慢,发现STM32的数据引脚很快就恢复正常波形了,而GD的依然差,直到速率降到很低才恢复正常。初步怀疑是STM32内部对引脚有做一些滤波的电路,而GD则没有。


虽然用的这个电路板本身布线有些不合理,但是在同样恶劣的环境下,STM32依然保证了通讯的正常,而GD不行,这在一定程度上说明了GD的抗干扰能力不如STM32。


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    -LINK下载的时候,你只能按下复位键并同时按下载,才能下载程序。 4.对于GD32/stm32的每一个模块电路,使用的时候都要先使能该模块的时钟,不过,在配置STM32CubeMX输出......
    单片机量产程序下载的常用方法;今天给大家分享几种下载程序的方法,看看你见过几种。 通过【IDE】下载程序 通过IDE下载程序,就是将单片机(板子)用烧写器直接电脑,用IDE(比如:Keil)直接下载程序......
    stm32单片机休眠模式后无法下载程序怎么办;利用stm32单片机的休眠模式,使单片机间歇的休眠从而实现低功耗的目的。往往会出现进入休眠后无法唤醒,导致下一次程序烧不进去。通常的解决办法是:一般......
    stc89c52rc单片机下载hex文件失败的情况; 芯片类型换成STC90C5XX系列:    与网上方法有较大的区别,真的挺神奇的    注意事项: 为什么普中程序......
    使用FlyMCU对STM32串口下载程序出错的解决方法;1,问题:使用FlyMCU对STM32进行串口下载程序时出现0KB出错,如下图所示: 2,分析:出现上述所示错误是因为勾选 了 '编程......
    这一步都有问题,那么后面的一切便无从谈起,记得当初刚接触单片机时,对于下载电路方法及原理也是一头雾水。好在随着经验的积累以及自己的努力探求,现在对此问题算是有了点点自己的经验理解。故今天在此针对常用51单片机下载程序......
    STM32单片机ISP下载的方法解析;STM32支持仿真器和串口下载程序。将要介绍的内容,属于串口下载,即我们通常说的ISP下载。 手动ISP下载程序,我们已经知道了,控制BOOT0引脚......
    Bootloader,可以直接使用已有的标准I2C接口下载程序和更新升级,同时也方便用户批量生产。 GD32E23x系列MCU已经涵盖GD32E230、GD32E231和GD32E232三种系列、27个产......
    必须从 github 页面下载引导加载程序文件二进制文件(bin 文件)。有许多版本的 bin 文件,对于 Blue Pill 板使用此 github 链接并单击下载按钮下载 bin 文件。 第 2 步:接下来,我们必须下载......
    51单片机最小系统制作步骤;这篇博客就来分享一下51单片机最小系统的制作以及怎么下载程序 首先准备的材料有:一块板子,一块89c51/52的芯片,一个51芯片插座,12MHZ的晶振,一个10的电......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>