大家好,我是刘士铭,一名初级的电子爱好者,今天在网上买了一款WIFI模块ESP32-S。
学习ESP系列模组必不可少的是乐鑫官网与安信可官网,上面的资料系统而全面,并且在不断更新,望君惠存。
乐鑫官网:https://www.espressif.com/zh-hans
安信可官网:https://www.ai-thinker.com/home
首先介绍一下这个模组,这款模组是经由安信可公司设计开发的一款模组,芯片是上海乐鑫公司生产的。ESP32-S 可作为独立系统运行应用程序或是主机 MCU 的从设备,通过 SPI / SDIO 或 I2C / UART 接口提供 Wi-Fi 和蓝牙功能(WI-FI+BT SOC模组)。
注意:ESP32-S与ESP32-WROOM-32为通用类型的模组,软硬件部分,除了天线形式有差异,其他部分都一样。ESP32-S模组上有两种天线形式(IPEX天线或板载天线),用户在使用时只能二选一使用。
ESP32系列模组常用的型号有三种:ESP32-S(通用型模组)、ESP32-WROOM-32(通用型模组)、ESP32-A1S(音频模组)。
三种模组(非芯片)的基本参数如下:
为了有一个全面的印象我们再看一下ESP32-S芯片的主要特性:
乐鑫新芯片 ESP32-S2 正式发布
中国上海2019年7月31日
ESP32-S2 是一款低功耗、高集成的 2.4 GHz Wi-Fi 微控制器,支持 Wi-Fi HT40 和多达 43 个 GPIO。ESP32-S2 搭载 Xtensa® 32-bit LX7 单核处理器,工作频率高达 240 MHz。
ESP32-S2 是一款安全可靠的低功耗、高集成 2.4 GHz Wi-Fi 系统级芯片 (SoC),支持 Wi-Fi HT40 和多达 43 个 GPIO。ESP32-S2 搭载 Xtensa® 32-bit LX7 单核处理器,工作时钟频率高达 240 MHz。
ESP32-S2 具有行业领先的低功耗管理与射频性能、IO 功能和安全性能,是物联网、移动设备、可穿戴电子设备、智能家居等各种应用的理想选择。ESP32-S2 集成了 240 MHz Xtensa® 单核处理器,无需外接任何 MCU 即可独立满足各种互联设备的需求。
ESP32-S2 仍然沿用了乐鑫已经非常成熟的软件开发框架 ESP-IDF,可以实现性能和成本的平衡,为市场带来更高速、更安全的物联网连接解决方案。
主要特性
CPU 和存储
Xtensa® 32-bit LX7 单核处理器
7 级流水线架构
时钟频率高达 240 MHz
超低功耗协处理器
320 KB SRAM,128 KB ROM,16 KB RTC 内存
最大可支持 1 GB 外部 flash and SRAM
独立的指令和数据 cache
Wi-Fi(连接)
支持 IEEE 802.11 b/g/n 协议
1x1 发送与接收
支持 HT40,数据速率高达 150 Mbps
支持 TCP/IP 联网、ESP-MESH 联网及 TLS 1.0、TLS 1.1、TLS1.2 等各种 Wi-Fi 网络协议
支持正常 Wi-Fi 数据包的 TOF 测距
IO 外设
43 个 GPIO 口
14 个电容式传感 IO
支持 SPI、I2C、I2S、UART、ADC/DAC 和 PWM 等各种标准外设
支持 LCD 接口(8-bit 并口 RGB、8080、6800 接口)
支持 8-/16-bit DVP 图像传感器接口,最高时钟频率支持到 40 MHz
支持全速 USB OTG
安全
基于 RSA-3072 的可信应用程序引导
基于 AES256-XTS 的 flash 加密技术,保护静止的敏感数据
4096-bit eFuse 存储,其中 2048 bit 可用于应用程序
支持数字签名外设,可用于私钥的安全存储和 RSA 签名的生成
最优功耗
ESP32-S2 通过选择时钟频率、占空比、Wi-Fi 操作模式和内部组件的单独电源控制,支持精细分辨率的电源控制。
当启用 Wi-Fi 时,芯片只在需要时自动开启或关闭射频收发器,从而降低系统的总功耗。
在 1% 占空比电流消耗下,超低功耗协处理器的空载模式为 5 μA ,空载模式为 7 μA。
改进了 Wi-Fi 连接和 MCU 空闲模式的功耗。
软件
ESP32-S2 支持乐鑫的软件开发框架 ESP-IDF,这是一个成熟的、可用于生产的平台。通用云连接代理和通用产品特性能够大幅度缩短产品上市时间。
应用
ESP32-S2 提供通用 Wi-Fi 连接解决方案,适用于从消费者到工业用例的各种应用。此外,它的计算能力和内存可扩展性也使其适合于简单的 ML-on-edge 应用程序。
ESP32-S2 可以支持大量应用,但主要的应用程序示例如下所示:
智能家居
解决方案范围包括从最简单的智能照明、智能门锁、智能插座,到白色家电、厨房电器、OTT 设备和安全摄像头等视频流设备。
支持 mesh 网络协议,可应用于大型商业照明和智能家居网络解决方案。
可与各种传感器进行高效交互,满足各种智能家居场景需求。
电池供电设备
Wi-Fi 联网传感器、Wi-Fi 联网玩具、可穿戴设备和健康管理设备
7 mm ⨉ 7 mm QFN 封装,适用于可穿戴设备
超低功耗运行,休眠模式下的功耗不到 5 uA,可应用于电池供电设备或需要长时间待机设备
QSPI/OPI 支持多个 flash/SRAM 芯片,可灵活配置非易失性和易失性数据存储
工业自动化设备
工业自动化设备应用包括无线控制与机器人技术、智能照明、HVAC 控制设备,可保证高质量的技术开发和产品的生命周期。
具有优异的射频性能和安全特性,可满足电子控制设备的对可靠性、安全性和高效率的高标准要求。
零售及餐饮业应用
POS 机和服务型机器人
具有先进的安全性能,可有效保护芯片和 flash 中的敏感数据
采用 SFF 小型化设计
拥有 14 个非常敏感的触摸传感器和一个 LCD 接口,ESP32-S2 的目标应用是低成本、安全连接的 HMI 设备,如 POS 机等。
好了,大概的介绍完毕,下面来介绍一下比较接地气的东西.
下面是我在安信可官网买的一个ESP-32S模块,我买的时候加上了底板,在安信可官网单买一个ESP32-S模组是不到十九块钱,加上底板不到二十一块钱的样子,对于初次想试一试这款模块的伙伴来说我建议买的时候带着转接板,相信这会节省你不少的功夫。
模块和底板正面:
模块和底板反面:
再给模块底部丝印来个特写:
焊接后的底板正面:
焊接后的底板反面:
ESP32-S这款模组是支持使用SDK进行二次开发的,对初学者来说使用安信可一体开发环境来开发很是方便。但是初次使用ESP32-S这款模块的伙伴一上来就使用SDK开发步子未免跨的有些大,经历的困难一多就比较打击积极性,ESP32-S这款模组同样支持AT指令开发,参考ESP32-S的AT指令集来使用AT指令开发ESP32-S模组就变得非常简单了,我们的目的应该是首先能够AT指令来使用ESP32-S这款模块,之后再不断进阶,挑战更方便灵活更强大的开发方式。
废话说多了就会一不留神踩到坑里,我刚开始就遇到了一个大问题,那就是参考AT指令集使用串口工具来给ESP32-S模组发送AT测试指令竟然不回我消息,心里不禁一凉,这么悲催的吗,二十多大洋买了块坏的模块,点儿背啊。
如图所示,引脚连接对应关系如下
ESP32-S模组 CP2102串口工具
3.3V --------------------------------------------------- 3.3V
GND --------------------------------------------------- GND
RXD --------------------------------------------------- TXD
TXD -------------------------------------------------- RXD
发送AT测试指令后无反应:
按下复位按键后可接收复位信息:
反复一想不对,经过反复的查找资料,最后找到了原因,这里有一个初学者可能会踩的一个坑。玩过ESP8266的伙伴都知道,ESP8266默认可以使用一个串口(串口0)输出调试信息,进行AT指令通信和固件下载,ESP32-S模组则变得不一样了,ESP32系列的ESP32S模块一共有3个串口,其中,使用串口0输出调试信息以及烧录固件,串口2做AT指令的通信。串口0是U0RXD、U0TXD引脚,串口2则是IO16(U2RXD)、IO17(U2TXD)引脚。
更改CP2102串口助手与ESP32-S模组的引脚对应关系如下:
ESP32-S模组 CP2102串口工具
3.3V --------------------------------------------------- 3.3V
GND --------------------------------------------------- GND
IO16 --------------------------------------------------- TXD
IO17 -------------------------------------------------- RXD
ESP32-S发送AT测试指令反应正常:
ESP12-E使用AT指令测试结果:
对比发现,使用AT指令时,ESP32不再像ESP8266那样,一复位就打印一串调试信息,用户体验有所提高。
这次就分享到这里,主要注意ESP8266与ESP32-S的串口使用有区别。