


嗨,今天整理这个esp32 之前介绍了esp8266 本文是 ESP32 开发板的入门指南。如果您熟悉ESP8266,那么 ESP32 就是它的继任者。ESP32 加载了许多新功能。最相关的是:它结合了 WiFi 和蓝牙无线功能,并且是双核。

在这篇文章中,我们将使用 ESP32 DEVKIT DOIT 板作为参考。但本页信息也兼容其他搭载ESP-WROOM-32芯片的ESP32开发板。

以下是 ESP32 开发板的一些示例:
我的 ESP32 项目主要使用ESP32 DEVKIT DOIT 板构建,这是我们推荐的。
§ ESP32 DEVKIT DOIT 板

当谈到 ESP32 芯片规格时,您会发现:
§ ESP32 是双核的,这意味着它有 2 个处理器。
§ 它内置了 Wi-Fi 和蓝牙。
§ 它运行 32 位程序。
§ 时钟频率最高可达 240MHz,并具有 512 kB RAM。
§ 这个特定的板有 30 或 36 个引脚,每行 15 个。
§ 它还具有多种可用的外设,例如:电容式触摸、ADC、DAC、UART、SPI、I2C 等等。
§ 它带有内置霍尔效应传感器和内置温度传感器。
Arduino IDE 有一个附加组件,允许您使用 Arduino IDE 及其编程语言对 ESP32 进行编程。按照以下教程之一准备您的 Arduino IDE:
§ Windows说明 – 在 Arduino IDE 中安装 ESP32 开发板
§ Mac 和 Linux说明——在 Arduino IDE 中安装 ESP32 开发板
与ESP826相比,ESP32 具有更多的 GPIO和更多的功能。
使用 ESP32,您可以决定哪些引脚是 UART、I2C 或 SPI——您只需要在代码中进行设置即可。这是可能的,因为 ESP32 芯片的多路复用功能允许将多个功能分配给同一个引脚。如果您没有在代码上设置它们,则引脚将用作默认值 – 如下图所示(引脚位置可能因制造商而异)。
具有 30 个 GPIO 的版本

具有 36 个 GPIO 的版本

您可以阅读我们详细的ESP32 引脚分配参考指南。
为了向您展示如何将代码上传到您的 ESP32 开发板,我们将构建一个简单的示例来使 LED 闪烁。

测试:将以下代码复制到您的 Arduino IDE:
/*
Blink
const int ledPin = 23; void setup() {
pinMode(ledPin, OUTPUT);}forevervoid loop() {
digitalWrite(ledPin, HIGH);
delay(1000);
digitalWrite(ledPin, LOW);
delay(1000); }
在此代码中,我们控制连接到 GPIO 23 的 LED。
const int ledPin = 23;
因此,请按照下一个示意图将 LED 连接到您的 ESP32。
重要提示: 在构建任何电路之前,请务必检查特定电路板的引脚排列。

以下是构建之前的电路所需的部件列表:
§ ESP32 DOIT DEVKIT V1 开发板
§ 5mm LED
§ 330 欧姆电阻
§ 跳线
§ 面包板 (可选)
将 ESP32 开发板插入计算机,然后按照以下说明操作:
1) 转到Tools > Board,向下滚动到 ESP32 部分,然后选择 ESP32 板的名称。就我而言,它是 DOIT ESP32 DEVKIT V1 板。
2) 进入 工具 > 端口 并选择一个可用的 COM 端口。

3) 按上传按钮。
就是这样!
注意:如果您在尝试上传代码时出现以下错误,则表示您的 ESP32 未处于闪烁/上传模式。
连接 ESP32 失败:超时...正在连接...
要上传代码,您需要按照以下步骤操作(确保您选择了正确的电路板:
§ 按住ESP32 板上的“ BOOT ”按钮

§ 在您看到“正在连接……”之后。 Arduino IDE 中的消息,松开“ BOOT ”按钮的手指:

§ 之后,您应该会看到“完成上传”消息。
就是这样。上传新的草图后,您可以按“启用”按钮重新启动 ESP32 并运行新上传的草图。
注意:了解如何在尝试将新代码一次性上传到 ESP32 开发板时永久修复“无法连接到 ESP32:超时等待数据包头”错误。
上传代码后,连接到 GPIO 23 的 LED 应该每隔一秒闪烁一次。
