stm32和树莓派哪个好?哪个入手难度更高?

Posted 无际单片机编程

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了stm32和树莓派哪个好?哪个入手难度更高?相关的知识,希望对你有一定的参考价值。

今天来聊一下stm32和树莓派,stm32我用了几年,树莓派我对它的理解仅限于理论层面。

 

自己并没有用树莓派做过产品,但是这个理论足以让大家对这两个平台有初步的了解。

 

很多人新手会去比较,stm32和树莓派哪个好,我该学哪一个?

 

我们要想搞清楚这个问题,先要搞明白他们的一个区别。

 

一、stm32和树莓派的区别?

Stm32和树莓派是两个不同的领域,从性能上来看,stm32是MCU,树莓派是MPU。

 

MCU和MPU的区别简单来说就是:

 

MPU适合做需要复杂运算的大型程序,这种一般需要外挂RAM和ROM。

 

MCU适合做一些运算比较简单的中小型程序,一般用来用于硬件管理和控制,所以这一般不需要外挂RAM和ROM,都集成在芯片内部,也称为单片机。

 

stm32之前大多数型号属于Cortex-M系列的单片机,树莓派一般是Cortex-A系列处理器。

 

除了Cortex-M以外,还有Cortex-M、Cortex-A、Cortex-R架构的处理器。

 

当然, STM32现在也出了基于Cortex-A架构的STM32MP157处理器。

 

那3种架构之间有什么区别?

 

Cortex-M版本:

性能最低配,更细分的版本有M0、M0+、M3、M4等等。

 

Cortex-M大家可以理解成微控制器,一般功耗和成本比较低,但性能也有限,应用领域有智能家居、无人机、智能穿戴、汽车电子(安全气囊等)之类的产品。

 

Cortex-R版本:

性能中配,更细分的版本有R4、R5、R7、R8等等。

一般用来做工业高性能实时应用,比如说汽车制动系统,发动机控制,打印机、硬盘控制器等。

 

Cortex-A版本:

性能高配,更细分的看下图:

 

这种一般用于高端产品,像平板电脑、手机,这个相信大家即使不懂技术也很熟悉了。

Ok,如果上面这些看的有点抽象,那下面讲点接地气的。

 

1.stm32

Stm32主要用来采集传感器数据,把数据进行解析,再进行逻辑功能处理,最后控制输出设备完成相应的功能,比如说驱动电机、控制LCD屏显示、控制数码管显示等等。

 

这种产品一般不需要复杂的运算,一般是裸机编程,或者跑个RTOS系统。

 

所以,单片机比较适合做数据采集控制,它的优势在于实时性高,不需要等待操作系统启动过程,一上电马上就能开始跑程序,这就是为什么有些导弹上面要用单片机的原因。

 

2.树莓派

树莓派的”身份”和arduino有点相似,都是开源硬件平台,在博通的芯片上运行Linux操作系统。

 

强大的芯片性能让树莓派更适合做运算,比如说一些图像采集,处理,深度学习和识别等等。

 

这种加了Linux系统的,一般实时性没单片机这么高。

 

树莓派大多数也是给创客学习用,如果用来开发产品的话成本太高。

 

而stm32的实用性就强很多,很多商用产品都是用它做的。

 

从上面的区别可以看得出来,stm32主要是偏向硬件控制,树莓派是偏向纯软件,两者方向不一样。

 

可能很多小伙伴会问,那树莓派一定比stm32难吗?

 

其实不一定,很多人的误区就是我做单片机开发,主要就是学习单片机。

 

实际上不是的,如果从事stm32的产品开发,涉及的知识面比较多,如果你做汽车电子的产品,你需要去学习汽车的相关知识,如果你做无人机,你还需要了解空气动力学的知识。

 

不同行业的产品,它的标准、方案都不一样,如果你不熟悉这些程序都没法写。

 

以上是关于stm32和树莓派哪个好?哪个入手难度更高?的主要内容,如果未能解决你的问题,请参考以下文章

树莓派小风扇怎么装

华为手机可以安装树莓派系统呢

树莓派支持哪些系统?有啥推荐?

树莓派:硬盘休眠

兼容树莓派引脚定义,适配多种模块--米尔百变STM32MP1开发板演示

树莓派风扇不转