首页

入门教程ESP32 |

在本教程中,我们将学习Espressif Systems的双核心MCU ESP32,它集成了Wi-Fi和蓝牙。如果您使用ESP8266,那么ESP32是一个重要的升级,具有更多的功能。本指南适用于完全的初学者,无论是否有过IoT或ESP8266方面的经验。

Getting-Started-with-ESP32

介绍

Arduino对于微控制器和嵌入式系统的初学者来说是一个很好的平台。有了许多便宜的传感器和模块,你可以把几个项目当作业余爱好,甚至商业项目。

随着技术的进步,新的项目想法和实施开始发挥作用,其中一个特别的概念是物联网或物联网。它是一个互联平台,几个“东西”或设备通过互联网连接在一起,以交换信息。

在DIY社区,物联网项目主要集中在家庭自动化和智能家居应用,但商业和工业物联网项目的实现非常复杂,如机器学习、人工智能、无线传感器网络等。

在这个简短的介绍中重要的是,无论它是一个爱好者的小DIY项目还是一个复杂的工业项目,任何物联网项目都必须连接到互联网。这就是ESP8266和ESP32出现的原因。

如果您想为您的项目添加Wi-Fi连接,那么ESP8266是一个很好的选择。但如果你想构建一个完整的系统,具有Wi-Fi连接,蓝牙连接,高分辨率adc, DAC,串行连接和许多其他功能,那么ESP32是最终的选择。

ESP32是什么?

ESP32是Espressif Systems公司推出的一款低成本的片上系统(SoC)微控制器,该公司开发了著名的ESP8266 SoC。它是ESP8266 SoC的继承者,具有Tensilica的32位Xtensa LX6微处理器的单核和双核变体,集成了Wi-Fi和蓝牙。

和ESP8266一样,ESP32的优点在于它集成了功率放大器、低噪声接收放大器、天线开关、滤波器和RF巴伦等射频元件。这使得围绕ESP32设计硬件非常容易,因为您需要的外部组件非常少。

ESP32-Block-Diagram

关于ESP32的另一件重要的事情是,它是使用台积电的超低功率40nm技术制造的。因此,使用ESP32设计电池驱动的应用程序,如可穿戴设备、音频设备、婴儿监视器、智能手表等,应该非常容易。

ESP32规范

ESP32有比ESP8266更多的特性,在这个入门指南中很难包含所有的规范。因此,我在这里列出了ESP32的一些重要规格。但是对于完整的规格,我强烈建议您参考数据表。

  • 单或双核32位LX6微处理器,时钟频率高达240mhz。
  • 520 KB的SRAM, 448 KB的ROM和16 KB的RTC SRAM。
  • 支持802.11 b/g/n Wi-Fi连接,速度高达150mbps。
  • 支持Classic Bluetooth v4.2和BLE规范。
  • 34可编程GPIOs。
  • 多达18通道的12位SAR ADC和2通道的8位DAC
  • 串行连接包括4 x SPI, 2 x I2C乘以2乘以I2S, 3 x UART。
  • 以太网MAC用于物理局域网通信(需要外部PHY)。
  • 1个SD/SDIO/MMC主控制器和1个SDIO/SPI从控制器。
  • 电机PWM和多达16通道的LED PWM。
  • 安全启动和Flash加密。
  • AES, Hash (SHA-2), RSA, ECC和RNG的加密硬件加速。

不同的编程方式

像ESP32这样的好硬件,如果能以多种方式编程(编写代码),用户会更友好。毫不奇怪,ESP32支持多种编程环境。

一些常用的编程环境有:

  • Arduino IDE
  • 平台IDE (VS Code)
  • LUA
  • MicroPython
  • 物联网发展框架
  • JavaScript

由于Arduino IDE已经是一个熟悉的环境,我们将在接下来的项目中使用它来编写ESP32。但是你也可以试试其他的。

ESP32 DevKit - ESP32开发板

Espressif Systems发布了几种基于ESP32的模块,其中最受欢迎的是ESP-WROOM-32模块。它由ESP32 SoC、40mhz晶体振荡器、4mb Flash IC和一些无源器件组成。

ESP-WROOM-32

ESP-WROOM-32模块的优点是PCB具有边缘castellations。所以,第三方厂商所做的就是将esp - wrom -32模块,设计一个针对该模块的分选板。

其中一个单板就是ESP32 DevKit board。它包含了ESP-WROOM-32作为主模块,同时还增加了一些硬件,可以方便地对ESP32进行编程,并与GPIO管脚进行连接。

ESP32-Development-Board

布局

我们将通过市场上流行的低成本ESP板ESP32 DevKit板的布局来了解典型的ESP32开发板的组成。

下图是我所拥有的ESP32开发板的布局图。

重要提示:目前市面上有很多基于ESP-WROOM-32模块的ESP32单板。布局,pinout和功能因板而异。

我的板子有30个大头针(每边15个大头针)。有一些板有36个大头针和一些略少大头针。因此,在进行连接或甚至为板供电之前,要仔细检查引脚。

ESP32-DevKit-Board-Layout

从图中可以看出,ESP32单板由以下部件组成:

  • ESP-WROOM-32模块
  • 两排IO引脚(每边15脚)
  • CP2012 USB - UART桥接IC
  • micro-USB连接器(用于电源和编程)
  • AMS1117 3.3V稳压器IC
  • 启用按钮(用于重置)
  • 开机按钮(用于闪烁)
  • 功率LED(红色)
  • 用户LED(蓝色连接GPIO2)
  • 一些被动元件

关于usb到-的一个有趣的点UART集成电路它的DTR和RTS引脚用于自动将ESP32设置为编程模式(在需要时),并在编程后休息单板。

ESP32板的Pinout

我将单独制作一个关于ESP32 Pinout的专门教程。但目前,看看ESP32开发板的pinout图。

ESP32-Pinout

这个引脚是为ESP板的30引脚版本。在引脚教程中,我将解释引脚的30引脚和36引脚版本的ESP板。

结论

这是关于ESP32的一个完整的初学者教程,ESP32是一个集成了Wi-Fi和蓝牙连接的优秀SoC。您了解了ESP32微控制器,它的规格,开发板布局和一个简短的pinout以及。

2反应

留下一个回复

您的电子邮件地址将不会被公布。必填字段已标记

Electronicshub图标
<\/i>","library":""}}" data-widget_type="nav-menu.default">
Baidu