01
前言
stm32:意法半导体在 2007 年 6 月 11 日发布的产品,32位单片机。
gd32:兆易创新 2013 年发布的产品,在芯片开发、配置、命名上基本模仿 stm32,甚至 gpio 和 stm32 都是 pin to pin 的,封装不改焊上去直接用。有时候 stm32 的源码不修改,重新编译烧写到 gd32 上就可以跑。当然也有很多不同,比如串口驱动、usb 、库文件等。
esp32:乐鑫公司 2017 年开发的产品,和 stm32、gd32 不同,esp32 主要面向物联网领域,支持功能很多,但引出 gpio pin 脚很少,因此大多数 gpio 都有很多复用功能。出厂就集成蓝牙、wifi 等物联网必备功能,板子也很小,适合物联网。
02
gd32 和 stm32 的区别
gd32 是国产单片机, 和 stm32 有很多地方都是一样的,不过 gd32 毕竟是不同的产品,不可能所有东西都沿用 stm32,有些自主开发的东西还是有区别的。不同的地方如下:
1、内核
gd32 采用二代的 m3 内核,stm32 主要采用一代 m3 内核,下图是 arm 公司的 m3 内核勘误表,gd 使用的内核只有 752419 这一个 bug。
2、主频
使用hse(高速外部时钟):gd32的主频最大108m,stm32的主频最大72m
使用hsi(高速内部时钟):gd32的主频最大108m,stm32的主频最大64m
主频大意味着单片机代码运行的速度会更快,项目中如果需要进行刷屏,开方运算,电机控制等操作,gd 是一个不错的选择。
3、供电
外部供电:gd32 外部供电范围是 2.6~3.6v,stm32 外部供电范围是2.0~ 3.6v或1.65~ 3.6v。gd 的供电范围比 stm32 相对要窄一点。
内核电压:gd32 内核电压是 1.2v,stm32 内核电压是 1.8v。gd 的内核电压比 stm32 的内核电压要低,所以 gd 的芯片在运行的时候运行功耗更低。
4、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。
5、功耗
从下面的表可以看出 gd 的产品在相同主频情况下,gd 的运行功耗比 stm32小,但是在相同的设置下 gd 的停机模式、待机模式、睡眠模式比 stm32 还是要高的。
6、串口
gd 在连续发送数据的时候每两个字节之间会有一个 bit 的 idle,而 stm32 没有,如下图:
gd 的串口在发送的时候停止位只有 1/2 两种停止位模式。stm32 有 0.5/1/1.5/2 四种停止位模式。
gd 和 stm32 usart 的这两个差异对通信基本没有影响,只是 gd 的通信时间会加长一点。
7、adc 差异
gd 的输入阻抗和采样时间的设置和 st 有一定差异,相同配置 gd 采样的输入阻抗相对来说要小。具体情况见下表这是跑在 72m 的主频下,adc 的采样时钟为 14m 的输入阻抗和采样周期的关系:
8、fsmc
stm32 只有 100pin 以上的大容量(256k及以上)才有 fsmc,gd32 所有的 100pin 或 100pin 以上的都有 fsmc。
9、103 系列 ram&flash 大小差别
gd103 系列和 st103 系列的 ram 和 flash 对比如下图:
10、105&107系列stm32和gd的差别
gd的105/107的选择比st的多很多,具体见下表:
11、抗干扰能力
gd 的抗干扰能力不如 stm32,还需要一定打磨。
03
esp32 和 stm32
esp32 是乐鑫公司推出的一款采用两个哈佛结构 xtensa lx6 cpu 构成的拥有双核系统的芯片。所有的片上存储器、片外存储器以及外设都分布在两个 cpu 的数据总线和/或指令总线上。
相比于 stm32 的一个大家族,esp32 虽然也代表一个系列,但目前来说,这个系列的成员还是比较少的,我们看下:
资源如下:
功能框图如下:
模块(非芯片)的引脚分布如下:
esp32 这个模块的 io 并不多,估计也就 30 个左右(芯片有34个,但是模块中外接 flash 用掉了一些)。但是你会发现它有几个特点:
1、集成了非常多的外设接口,spi、iic、iis、ad、da、pwm、ir、uart、can等等。io 数量有限,所以基本上每个 io 都有多个功能。
2、片内flash和ram很大,flash有448kb,ram有520kb。而模块上直接挂了一个4mb的flash。
3、速度快!虽然外接晶体的频率只有40mhz,但通过内部主频可以支持80mhz、160mhz、240mhz,运算能力高达600mips。
4、有wifi和蓝牙!当前两者不能同时使用。
stm32 和 esp32 基本是有各自不同的定位。esp32 偏向体积小巧、速度超快、功能强大,通过 wifi 接入网络,专门为物联网而生;而 stm32 偏向管脚丰富、功能全面,虽然没有 wifi 和蓝牙,速度也没有 esp32 快,但是可以通过网口接入网络,可以控制更多的外设,为消费电子和工业控制而生。
04
总结
stm32 和 gd32 是同质化产品,区别一个是国外,一个是国产,最近流行国产化替代,所以 gd32 还是很有发展前景的。物联网是一个好方向,因此 esp32 也是很有前景的。
基于RFID技术的生产流水线自动系统实现方案
看来华为是压力很大!华为mate9再降500元,阻击小米6的心很坚定
盼着盼着,无线充电真的来了
中山小榄LED企业创新升级拓展全球新兴市场
基于c/s架构的网络化款式设计系统
ESP32、GD32、STM32MCU的区别
苹果iOS10.3.2公测版提供了新功能, 要不要升?
央视科普:什么是芯片?如何制造芯片?
业界预计8寸产能利用率首季普遍仅约50%至60%
PID传感器防水透气膜,IP67级防护,防尘防水
电子管,电子管基础知识大全(图)
具 C/10 充电终止功能的基本型 2A、四节锂离子电池充电器
Synopsys如何支持汽车照明设计师改进工作流程
安靠智电:在智能电网赛道上再创辉煌
CES2012总结:超级本盛行 平板缺乏亮点
随着HDMI 2.1的到来 8K电视将迎来飞速发展
无线传感器网络简析
8848灵感M5+将于11月11日开售搭载骁龙835平台内置3450mAh电池
使用无氧铜将会给电缆带来的好处有哪些
比速T57座中型国产SUV,配置丰富经济实惠,只要7万起