问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

STM32和Arduino对比:谁更适合你?

创作时间:
作者:
@小白创作中心

STM32和Arduino对比:谁更适合你?

引用
1
来源
1.
https://bbs.21ic.com/icview-3429898-1-1.html

Arduino和STM32是两种广泛使用的微控制器平台,它们各自具有独特的特点和应用场景。下面将从多个维度对这两种平台进行对比分析。

Arduino的特点

Arduino是一个开源电子原型平台,包括硬件(各种型号的电路板)和软件(开发环境)。它以易用性和快速原型开发而闻名,特别适合初学者和非专业电子工程师使用。

STM32的特点

STM32是STMicroelectronics公司生产的32位ARM Cortex-M系列微控制器。它以其高性能、低功耗和丰富的外设功能而著称,广泛应用于各种嵌入式系统和工业控制领域。

Arduino和STM32的对比

Arduino有很多个版本,特性也并不一致。如果拿Arduino UNO R3这个最普遍的来说的话,它的控制器是AVR 138单片机,性能上和STM32不在一个水平上,该款在某种程度上和宏晶的STC12系列差不多(仅在运算上)。Arduino MEGA 2560 这款算是MCU版的Arduino中的老大了,接口丰富,应该和STM32F1系列不相上下,但是功耗挺大,芯片发热明显,而同款封装的STM32F1ZET6则仅有微热,环境温度低的时候甚至感觉不到有温度。

根据两者的不同特性我们可以按照不同应用来比较:

  • 学习容易程度:Arduino相对于STM32容易很多。
  • 要求的基本编程思想:Arduino:面向对象的类C++、类Java为主,它的语言基于C但是又有些四不像。而STM32则以正统的C语言为主要开发语言。
  • 学习后获得的知识:Arduino弱于STM32。因为Arduino封装了很多底层操作。除非自己尝试编写Arduino以及配套电路模块的库,否则还只是停留在基础的编程上。
  • 开源程度上:用STM32做出来的东西想开源就开源,不想开源可以什么都不公布。
  • 外围电路搭建难易程度:Arduino远大于STM32。
  • 可拓展性:Arduino与STM32相当,Arduino基本上把控制器的大部分引脚都印出来了。
  • 成本:假设做出具有相同功能的东西,Arduino成本高于STM32。

选择建议

如果你还不知道怎么选择,这里给出一些具体的建议:

  • 如果你是对编程语言了解不深的大学层次以下的普通学生,建议上手Arduino。
  • 如果C功底薄弱上来就搞STM32你会很快有放弃的念头。
  • 如果只是为了就业而学习,果断STM32类单片机。
  • 如果只是为了好玩而学习,本身非电子类专业,没有信心,建议Arduino。
  • 如果编程功底好,建议STM32。搞定之后你看看Arduino开源社区做的东西,用STM32轻轻松松搞定。
  • 当然如果有能力,两者都接触接触,一般地一周不到Arduino的基本特性你就掌握了,以后有需要的话,可以很自如地移植Arduino代码到STM32等MCU平台上。

其实这两者其实针对的方向略有不同,Arduino一般电子爱好者和DIY的选择,而STM32往往用于实际产品的研发制造。但是现在Arduino系列也能支持STM32的芯片,通过先下载Arduino固件,后就能使用Arduino的开发环境进行编程了。根据自己项目类型和需求选择适合自己的才最重要。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号