0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

用STM32该鄙视Arduino吗?

STM32嵌入式开发 来源:STM32嵌入式开发 2023-01-03 14:56 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

ArduinoSTM32性能对比究竟谁更厉害呢?很多电子爱好者面对Arduino和STM32时都会有个两难的决定,不知道如何选择使用。Arduino一直处在火热状态,但是STM32接口多性能强,速度也较快?

Arduino和STM32各自的特点

Arduino:

54535236-89a7-11ed-bfe3-dac502259ad0.png

Arduino更倾向于创意,它弱化了具体的硬件的操作,它的函数和语法都非常简单,而且非常“傻瓜化”。

大部分Arduino的主控是AVR单片机,Arduino的优势还是代码封装性高,所需语句少,降低软件的开发难度。

Arduino上手比较容易,只要懂一点点硬件和C++就能开发。

Arduino大多数功能都有做好了的库,所以使用起来很简单,但是对于稍微复杂点的功能可控性较差。

STM32:

545f0ca2-89a7-11ed-bfe3-dac502259ad0.png

对于有计算或控制要求的,STM32是更好选择。相关推荐:学习STM32很简单?STM32如果买开发板的话就要从硬件底层学起,掌握它的各种细节。

STM32更注重工程实际,事实上工厂中很多简单的仪器什么温控仪,什么普通的电机控制器,什么低档PLC,还有民用中的一些玩具,游戏手柄、有线键盘鼠标等外设,高校食堂里刷卡的pos机等等其实用得很多。

STM32主要是给专业开发人员做产品用的,需要一定的专业知识,但同时编写代码实现功能也相对复杂。比如串口输出一个简单的字符串,对于Arduino可能从新建工程开始,10行代码就能实现,但是如果使用STM32的开发工具比如Keil,可能需要上百行代码甚至更多。

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的开发环境进行编程了。根据自己项目类型和需求选择适合自己的才最重要。

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • STM32
    +关注

    关注

    2313

    文章

    11191

    浏览量

    374582
  • 开发板
    +关注

    关注

    26

    文章

    6413

    浏览量

    120711
  • Arduino
    +关注

    关注

    190

    文章

    6527

    浏览量

    197441

原文标题:用STM32该鄙视Arduino吗?

文章出处:【微信号:c-stm32,微信公众号:STM32嵌入式开发】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    MCU 开发板大比拼:STM32、ESP32、Arduino、树莓派谁更强?

    嵌入式开发板琳琅满目,STM32、ESP32、Arduino、RaspberryPi各有特色。新手容易纠结:到底哪块板适合我的项目?本文整理了一份开发板对比速查表,帮你快速理清思路。一、STM32
    的头像 发表于 01-09 19:03 1373次阅读
    MCU 开发板大比拼:<b class='flag-5'>STM32</b>、ESP32、<b class='flag-5'>Arduino</b>、树莓派谁更强?

    UNO Q:开启Arduino的全新未来

    图源: * Arduino* 作者:Matt Campbell,贸泽电子专稿 发布日期: 2025年10月7日 Arduino UNO Q不仅是灵活UNO平台的下一代产品,更是一种全新的开发模式。双
    的头像 发表于 12-15 11:46 1150次阅读

    Arduino plc和termux esp

    Arduino plc和termux esp
    的头像 发表于 12-06 06:41 2021次阅读

    STM32 Nucleo-144开发平台技术解析与应用指南

    STMicroelectronics NUCLEO-U5A5ZJ-Q STM32 Nucleo-144板具有各种性能和功耗特性。得益于STM32微控制器,STMicroelectronics
    的头像 发表于 10-25 17:21 2200次阅读
    ‌<b class='flag-5'>STM32</b> Nucleo-144开发平台技术解析与应用指南

    ‌基于STM32 NUCLEO-H503RB开发板的技术解析与应用指南

    NUCLEO-H503RB为开放式开发平台。得益于STM32微控制器的运用,平台能够提供一系列性能和功耗特性。控制板与外部SMPS兼容,运行模式功耗大幅下降。通过ARDUINO
    的头像 发表于 10-25 17:15 1989次阅读
    ‌基于<b class='flag-5'>STM32</b> NUCLEO-H503RB开发板的技术解析与应用指南

    STM32 Nucleo-64开发板技术解析与应用指南

    ARDUINO^®^ Uno V3连接和ST morpho接头,可轻松扩展STM32 Nucleo开放式开发平台的功能。板设有板载ST-LINK调试器/编程器,具有USB重新枚举功能。STM
    的头像 发表于 10-22 14:26 1204次阅读
    <b class='flag-5'>STM32</b> Nucleo-64开发板技术解析与应用指南

    STM32WB07CC开发板技术解析与应用指南

    连接器和ST morpho接头进行连接。板设有三个用户LED、三个按钮和一个复位按钮,可使用STM32 Nucleo平台上的专用扩展板轻松开发和扩展。
    的头像 发表于 10-17 17:11 1557次阅读
    <b class='flag-5'>STM32</b>WB07CC开发板技术解析与应用指南

    STMicroelectronics NUCLEO-C071RB STM32 Nucleo-64开发板数据手册

    STMicroelectronics NUCLEO-C071RB STM32 Nucleo-64开发板带有板载STM32C071RB MCU,支持Arduino和ST morpho连接。
    的头像 发表于 10-17 16:47 1030次阅读
    STMicroelectronics NUCLEO-C071RB <b class='flag-5'>STM32</b> Nucleo-64开发板数据手册

    STM32 Nucleo-144开发板技术解析与应用指南

    。 STMicroelectronics开发板支持多种连接选项,包括Arduino、ST Zio和Morpho,同时集成了开关模式电源(SMPS),可实现高效的电源管理。板非常适合用于测试不同的性能和功耗配置,因此成为探索想法和构建原型的灵活解决方案。
    的头像 发表于 10-17 14:40 1488次阅读
    <b class='flag-5'>STM32</b> Nucleo-144开发板技术解析与应用指南

    STM32 Nucleo-64开发板技术解析与应用指南

    STMicroelectronics -C051C8 STM32 Nucleo-64开发板通过由STM32微控制器为概念测试和原型创建提供了一种经济实惠且灵活的途径。开发板支持ARDUINO
    的头像 发表于 10-16 10:50 974次阅读
    ‌<b class='flag-5'>STM32</b> Nucleo-64开发板技术解析与应用指南

    STM32 Nucleo-64开发板技术解析:以NUCLEO-C092RC为例

    方法。板支持ARDUINO^®^ Uno V3连接和ST morpho接头,可全面访问STM32 I/O。NUCLEO-C092RC板提供各种集成开发环境 (IDE),包括IAR Embedded
    的头像 发表于 10-16 10:26 828次阅读
    <b class='flag-5'>STM32</b> Nucleo-64开发板技术解析:以NUCLEO-C092RC为例

    如何在 NuMaker-IoT-M467 板上使用 Arduino IDE 控制 Wi-Fi 模块?

    在NuMaker开发板上,有一个ESP-12F Wi-Fi模块;但是,Arduino IDE 中的 NuMaker UNO 包不提供模块的相关控制。如果您希望在 Arduino IDE 中控制此模块,您应该如何进行?
    发表于 09-04 08:28

    如何用Arduino Nano/UNO R3开发板给另一个Arduino IDE不能下载的Arduino Nano/UNO R3开发板重新烧录引导程序bootlaoder

    本文介绍了如何用能够Arduino IDE下载的Arduino Nano/UNO R3开发板给另一个Arduino IDE不能下载的Arduino Nano/UNO R3开发板重新烧录
    的头像 发表于 08-08 20:16 3942次阅读
    如何用<b class='flag-5'>Arduino</b> Nano/UNO R3开发板给另一个<b class='flag-5'>Arduino</b> IDE不能下载的<b class='flag-5'>Arduino</b> Nano/UNO R3开发板重新烧录引导程序bootlaoder

    硬件工程师的 “鄙视链” 新动向:写代码的,凭啥瞧不起画图的?

    “  在海外硬件工程师的世界里,一场关于设计灵魂归属的“圣战”已悄然打响。一边是信奉“所见即所得”、手握鼠标精雕细琢的“画图派”;另一边,则是高举“代码即真理”、键盘召唤电路的“写码派”。这不
    的头像 发表于 08-06 11:21 3722次阅读
    硬件工程师的 “<b class='flag-5'>鄙视</b>链” 新动向:写代码的,凭啥瞧不起画图的?

    《ESP32S3 Arduino开发指南》第二章 Arduino基础知识

    系列芯片对应要有一个Arduino库,比如乐鑫官方的arduino-esp32库,ST的stm32duino库,只要在Arduino安装这种芯片库便可以使用
    发表于 05-13 09:28