前言

为什么选esp32

Arduino自家UNO开发板,其MCU型号为Atmega328p。频率仅有20MHz,2+32KB显然与时代脱节。最重要的是用了这么多年快停产了,价格每年都在涨,钱包日渐消瘦表示只好另寻佳人。

stm32系列因为近两年价格猛涨,现已大部分被国产取代。但国产替代最大的问题在于手册不配套、SDK不维护,不是量产客户,很难得到FAE的技术支持。所以如果仅仅是diy爱好者,国产替代的使用体验肯定不如ST原厂的好。虽然过两年的价格可能会回落,但囤货的供应商显然不会让价格跌的那么快。现在的价格让人高攀不起,Cortex-A的价格买Cortex-M的芯片,而且还极有可能买到二手翻新,H750的价格没怎么变但没有小型易焊接的封装。对不起,再也不见。

树莓派Pico的RP2040,普通而又自信的M0+,性能没多少亮点但结合价格来看中规中矩,外设不多但该有的也都有。最尴尬的是生态,目前支持c++和MicroPython两种开发方式,Arduino未来会有支持。虽然不想说,但就个人以前的mpy使用体验来讲,mpy真是个无比尴尬的存在。乍一听很美好,低代码开发,不用在电脑安装编译工具链,也不用等待漫长的编译。不过泼冷水的来了,MicroPython虽然语法上与Python相似,但实际用起来完全就是两个东西。用过mpy的应该多少都痛恨其调试过程,解释器的运行机制,导致其比c慢的多得多;代码只有在MCU上运行后,才能知道之前写的对不对;且不得不人为添加许多异常处理,以免触发异常报错后导致程序卡死;还有扩展库的用法与标准Python的并不完全一致,用的库越多越感觉mpy与py的相似性越低。种种原因,都让MicroPython的体验没预想的那么好。

乐鑫ESP32系列在疫情期的价格稳定,虽因台积电涨价,价格略涨,但相比较同行,简直业界良心。热门型号有比较新的ESP32C3,单核160MHz,WIFI+BLE5.0,虽然RAM略有缩水,仅400 KB SRAM,但得益于SDK优化,最终可供用户使用的内存与ESP32相差无几。QFN封装,有内置Flash的型号,除了GPIO较少其他方面都是吊打同行。另外ESP32的SDK可以说是在MCU界无敌强的存在,与其他国产的画风完全不同。开发方式多种多样,可以借助强大的ESP-IDF,也可以用Arduino、Platform、Lua、MicroPython。现阶段推荐型号有ESP32、ESP32C3。S2被阉割太多了搞的没法用,S3要等等但价格或许要比以前贵很多。

本文介绍Arduino。而ESP-IDF开发可以参照我的专栏:ESP32开源驱动库Easyio的使用,基于ESP-IDF开发框架

本教程使用ESP32-WROOM-E模组,4MB Flash。(其他的如WROVER也可以)

为什么选Arduino

市面上的开发板有很多,比51单片机、树莓派、MCU开发板等等,但是为什么要选择Arduino呢?一句话总结,其实用Arduino进行开发的优势很明显。

1.跨平台

Arduino IDE 可以在三大主流操作系统上运行,但是其他大多数开发板只能在Windows上进行开发。

2.简单清晰的开发

Arduino IDE是基于Processing开发的,简单易用,并且足够灵活。Arduino语言是基于Wiring语言开发的,是对AVR-GCC库的二次封装,不需要太多的单片机知识,不管是初学者还是有开发人员,都可以快速上手,快速开发。

3.开放性

Arduino的原理图、电路图、IDE以及核心库存=都是开源的,协议范围内是可以随意修改原始设计和相关代码。

4.社区和第三方支持

Arduino有众多的开发人员和用户,因此你可以找到各种开源代码示例和第三方插件。这些网站有:github.com、arduino.cc、openjumper.com等网站

5.硬件开发趋势

Arduino的出现大大减轻了开发人员的学习成本和开发负担,使得开发人员更加关注创意和实现,是的Arduino成为当前的硬件开发趋势。

正因为上面种种原因,越来越多的硬件开发人员开始选择Arduino开发项目和产品,,越来越多的软件开发者开始选择Arduino来开发物联网系统,在大学一些专业也开始使用Arduino进行教学。

环境安装

Arduino的安装

自行百度

ESP32库的安装

相比arduino 的安装晚上的各种使用Arduino ide搜索ESP32进行安装,在墙内基本都会出现安装失败,这里直接提供安装文件进行安装。
https://download.csdn.net/download/bayinglong/86507790。
安装方法。解压后运行对应exe即可,安装完成后重启Arduino IDE

安装完成后可看到

ESP32(一) Arduino 环境相关推荐

  1. ESP32使用Arduino环境,安装、编译、下载、安装库

    一.安装Arduino环境 先下载Arduino:Arduinp IDE下载 我选择的是免安装压缩包,下载后直接解压即可运行. 界面. 二.添加ESP32开发板 而此时的开发板列表中,并没有ESP32 ...

  2. ESP32使用Arduino环境PWM驱动IRF520模块实现调压

    接线 IRF520调压模块 1.输入 VCC  GND  接ESP32模块的3.3V    SIG引脚 接ESP32的PWM信号输入D15脚 2.VCC  GND  输入电源V2  此电源不能和 1的 ...

  3. ESP32使用Arduino环境开发摇杆

    接线 电源5V SW 接35脚  数字量输入   VRX接32脚  VRY接33脚   模拟量输入 x_value y_value 模拟量值得变化范围 0 - 4095 默认摇杆中间位置在2800左右 ...

  4. ESP32基于arduino开发的心跳体温检测系统(一)项目介绍及准备

    本文为被北邮信息系统设计课程摧残的同学们(包括但不限于作者的室友)提供一个可行的方案及模板. 本项目使用Arduino作为开发环境,使用ESP32开发一个心跳体温检测系统. 系统通过心跳传感器--pu ...

  5. 使用乐鑫官方资源搭建基于Arduino的ESP32的开发环境

    目录 一.配置IDE管理器 二.自动安装板支持包 三.手动安装板支持包 四.网盘的ESP32全系列基本库的板支持包 使用乐鑫官方库搭建Arduino开发环境. 乐鑫官方Github:GitHub - ...

  6. arduino / VScode+platformIO搭建esp32/esp8266编译环境(一篇足矣)

    arduino/VScode+platformIO 搭建esp32/esp8266开发环境(一篇足矣) 前言:入门开源硬件开发,在搭建编译环境的时候碰了一脸灰,特意写下此博客,以供参考!结尾还有mic ...

  7. 【极创】arduino入门之ESP8266和ESP32开发板的arduino环境配置

    一.前言 在这个万物智联时代,廉价的ESP系列芯片与开发板成为众多开发者首选,其内包含强大的无线通讯功能,可以满足开发者们绝大部分的开发需求. 二.ESP8266与ESP32开发板的arduino环境 ...

  8. Arduino IDE + ESP32系列开发环境配置

    前言 ESP32系列开发环境配置教程 ESP32包 链接:https://pan.baidu.com/s/1O3ndDlpH-zL2OcFiLECmVA?pwd=kbcx 提取码:kbcx 已经配置好 ...

  9. 《ESP32 学习笔记》 之Arduino环境下 使用DAC模拟输出(是真的DAC哦!)完成两路呼吸灯

    在 Arduino 环境下经常使用的 analogWrite(PIN, arg) 语法并不是真正的DAC模拟输出,也只是1kHZ的PWM 波模拟而成! 支持DAC功能的引脚请查看:引脚定义 本次ESP ...

  10. ESP32基于arduino开发的心跳体温检测系统(二)传感器的使用

    在上篇文章里,我们配置好了开发需要的环境.接下来就开始尝试使用传感器. 测温传感器 连接元件 我们使用的是MLX90614 gy906测温传感器,有4个引脚,分别为VCC.GND.SCL.SDA.其中 ...

最新文章

  1. Java知识系统回顾整理01基础04操作符05赋值操作符
  2. 李春雷 | 夜宿棚花村
  3. 我这几年呆的这几个公司
  4. Django3 --- async
  5. linux内核那些事之Sparse vmemmap
  6. activiti学习
  7. jquery知识点总结二
  8. [unity3d]插件2d toolskit
  9. cdn的费是多少_cdn费用是多少
  10. [每日一氵] mmSeg 报错 StopIteration
  11. mysql 删除临时表的语句_MySQL如何创建和删除临时表_MySQL
  12. JAVA多线程:龟兔赛跑
  13. Xcode直接安装ipa
  14. 打开软件显示乱码的解决方法
  15. 高压电缆接地环流监测
  16. 从概念到底层技术,区块链一站式分析和汇总(附知识图谱)
  17. 【ROS】实操_话题发布
  18. 西电C++期末考点整理
  19. pandas循环插入行
  20. update 在mysql_update SQL在MySQL的内部生命历程是怎样的?

热门文章

  1. SECTION 2 Python基础语法
  2. 加特林大战僵尸 (2018.11.27)
  3. 如何使用C#实现你量化交易策略模型
  4. 在实验箱上的Linux根目录下,实验三linux内核移植.doc
  5. slug计算机术语,关于python:Django中的“slug”是什么?
  6. windows程序设计 信用卡还款
  7. 温度转换实例(Python)
  8. 微信小程序之ES6与事项助手
  9. zcmu-1854 zbj的可乐
  10. Kubernetes(一) - Docker管理工具