在本教程中,我们将学习Espressif Systems的双核心MCU ESP32,它集成了Wi-Fi和蓝牙。如果您使用ESP8266,那么ESP32是一个重要的升级,具有更多的功能。本指南适用于完全的初学者,无论是否有过IoT或ESP8266方面的经验。
介绍
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的另一件重要的事情是,它是使用台积电的超低功率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模块的优点是PCB具有边缘castellations。所以,第三方厂商所做的就是将esp - wrom -32模块,设计一个针对该模块的分选板。
其中一个单板就是ESP32 DevKit board。它包含了ESP-WROOM-32作为主模块,同时还增加了一些硬件,可以方便地对ESP32进行编程,并与GPIO管脚进行连接。
布局
我们将通过市场上流行的低成本ESP板ESP32 DevKit板的布局来了解典型的ESP32开发板的组成。
下图是我所拥有的ESP32开发板的布局图。
重要提示:目前市面上有很多基于ESP-WROOM-32模块的ESP32单板。布局,pinout和功能因板而异。
我的板子有30个大头针(每边15个大头针)。有一些板有36个大头针和一些略少大头针。因此,在进行连接或甚至为板供电之前,要仔细检查引脚。
从图中可以看出,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图。
这个引脚是为ESP板的30引脚版本。在引脚教程中,我将解释引脚的30引脚和36引脚版本的ESP板。
结论
这是关于ESP32的一个完整的初学者教程,ESP32是一个集成了Wi-Fi和蓝牙连接的优秀SoC。您了解了ESP32微控制器,它的规格,开发板布局和一个简短的pinout以及。
2反应
我喜欢教程,想要得到我的手的微控制器
“我喜欢教程,我想要得到那个微控制器
它们在亚马逊上的售价约为7-8美元。那么在eBay上。