NodeMCU-32-S2

来自丢石头百科
NodeMCU-32-S2
NodeMCU-32-S2-CH340.jpg
基本信息

分类: WiFi Espressif ESP32-S2

品牌: 丢石头

功能简介
特性

无特性,不解释

接口

UART接口 SPI接口 AD接口

相关产品
ESP32
ESP32-S2

产品概述

NodeMCU-32-S2 核心处理器 ESP32-S2 是一款高集成度的低功耗 Wi-Fi 系统级芯片(SoC),专为物联网(IoT)、移动设备、可穿戴电子设备、智能家居等各种应用而设计。ESP32-S2 具有行业领先的低功耗性能和射频性能,支持 IEEE802.11b/g/n 协议,集成了 Wi-Fi MAC、Wi-Fi 射频和基带、射频开关、射频 Balun、功率放大器、低噪声放大器等。

NodeMCU-32-S2 板载 CH340 USB 串口模块,让发送 AT 指令变得更简单,让烧录固件变得更简单。

特性

  • 完整的 802.11b/g/n Wi-Fi SoC 模块,数据速率高达 150Mbps
  • 内置 ESP32-S2 芯片,Xtensa® 单核 32 位 LX7 微处理器,支持高达 240 MHz 的时钟频率,拥有 128KB ROM,320KB SRAM,16KB RTC SRAM
  • 支持 UART/GPIO/ADC/PWM/SPI/I2C/LCD/I2S/Camera/IR/USB/DAC 接口,支持触摸传感器、温度传感器、脉冲计数器
  • 采用 SMD-42 封装
  • 集成 Wi-Fi MAC/ BB/RF/PA/LNA
  • 支持多种休眠模式,深度睡眠电流小于 10uA
  • 串口速率最高可达 4Mbps
  • 内嵌 Lwip 协议栈
  • 支持 STA/AP/STA+AP 工作模式
  • 支持安卓、IOS 的 Smart Config(APP)/AirKiss(微信) 一键配网

选型列表

模组认证对比:

注:部分带"*"认证正在申请中。

电气参数对比:

型号 蓝牙 芯片方案 工作频段 接口类型 封装形式 尺寸(mm) 供电电压 Modem Sleep Light Sleep Deep Sleep
ESP32-S 蓝牙 4.2 ESP32 2412 ~ 2484MHz UART / SPI / SDIO / I2C / PWM / I2S / IR 等 SMD-38 18.0 * 25.5 * 3.0 3.3V 20mA 1.4mA 20uA
ESP32-A1S 蓝牙 4.2 ESP32 2400 ~ 2483.5MHz UART / SPI / SDIO / I2C / PWM / I2S / IR 等 SMD-38 19.0 * 31.5 * 3.0 3.3V 5 ~ 10mA 0.8mA 20uA
ESP-12K 不支持 ESP32S2 2400 ~ 2483.5MHz UART / SPI / PWM / ADC / GPIO 等 SMD-42 19.0 * 31.5 * 3.0 3.3V 20mA 1.4mA 0.5uA
  • 传输距离:WiFi 信号的传输距离约 50 米,蓝牙的传输距离约 10 米。
  • SPI Flash:32Mbit(4Mbyte)
  • 天线形式:板载天线 / 外接IPEX

管脚定义

NodeMCU-32-S2 共接出 42 个接口,如管脚丝印所示。

NodeMCU-32-S2 2.jpg

名称 说明
3V3 3.3V 供电
GND 接地
P0 RTC_GPIO0, GPIO0
P1 RTC_GPIO1, GPIO1, TOUCH1, ADC1_CH0
P2 RTC_GPIO2, GPIO2, TOUCH2, ADC1_CH1
P3 RTC_GPIO3, GPIO3, TOUCH3, ADC1_CH2
P4 RTC_GPIO4, GPIO4, TOUCH4, ADC1_CH3
P5 RTC_GPIO5, GPIO5, TOUCH5, ADC1_CH4
P6 RTC_GPIO6, GPIO6, TOUCH6, ADC1_CH5
P7 RTC_GPIO7, GPIO7, TOUCH7, ADC1_CH6
P8 RTC_GPIO8, GPIO8, TOUCH8, ADC1_CH7
P9 RTC_GPIO9, GPIO9, TOUCH9, ADC1_CH8, FSPIHD
P10 RTC_GPIO10, GPIO10, TOUCH10, ADC1_CH9, FSPICS0, FSPIIO4
P11 RTC_GPIO11, GPIO11, TOUCH11, ADC2_CH0, FSPID, FSPIIO5
P12 RTC_GPIO12, GPIO12, TOUCH12, ADC2_CH1, FSPICLK, FSPIIO6
P13 RTC_GPIO13, GPIO13, TOUCH13, ADC2_CH2, FSPIQ, FSPIIO7
P14 RTC_GPIO14, GPIO14, TOUCH14, ADC2_CH3, FSPIWP, FSPIDQS
P15 RTC_GPIO15, GPIO15, U0RTS, ADC2_CH4, XTAL_32K_P
P16 RTC_GPIO16, GPIO16, U0CTS, ADC2_CH5, XTAL_32K_N
P17 RTC_GPIO17, GPIO17, U1TXD, ADC2_CH6, DAC_1
P18 RTC_GPIO18, GPIO18, U1RXD, ADC2_CH7, DAC_2, CLK_OUT3
5V 5V 供电
GND 接地
P19 RTC_GPIO19, GPIO19, U1RTS, ADC2_CH8, CLK_OUT2, USB_D23 IO20 RTC_GPIO20, GPIO20, U1CTS, ADC2_CH9, CLK_OUT1, USB_D+
P21 RTC_GPIO21, GPIO21
P26 SPICS1, GPIO26
P33 SPIIO4, GPIO33, FSPIHD
P34 SPIIO5, GPIO34, FSPICS0
P35 SPIIO6, GPIO35, FSPID
P36 SPIIO7, GPIO36, FSPICLK
P37 SPIDQS, GPIO37, FSPIQ
P38 GPIO38, FSPIWP
P39 MTCK, GPIO39, CLK_OUT3
P40 MTDO, GPIO40, CLK_OUT2
P41 MTDI, GPIO41, CLK_OUT1
P42 MTMS, GPIO42
TX U0TXD, GPIO43, CLK_OUT1
RX U0RXD, GPIO44, CLK_OUT2
P45 GPIO45
P46 GPIO46
EN 高电平:芯片使能;低电平:芯片关闭;(已默认拉高)
GND 接地

使用说明

本模块常规使用方法有两种,一种是烧好编译好的固件、解析AT指令,另一种是自己写固件,而后者可以充分利用芯片的各种 IO 资源,更自由地实现自己的想法。通常编译固件都需要基于 ESP-IDF 开发框架,同时也需要安装 C 语言编程(工程)的文本编辑器,例如 Elipse。请参阅 #资源下载

这里给出 NodeMCU-32-S2 的 AT 指令的几种常见使用示例。AT 指令要求以新行(CR LF)结尾,串口工具支持“新行模式”。

相关软件

固件烧录

1. 通过 Micro USB 数据线,把开发板连接到电脑。

2. 开打固件烧录软件 点击下载 ESP Download Tool v3.8.5.zip

3. 依次点击 Developer Mode --> ESP32S2 DownloadTool。

NodeMCU-32-S2 3.png

NodeMCU-32-S2 4.png

4. 按照图中步骤配置参数,再点击“START”。

NodeMCU-32-S2 5.png

5. 等待写入完成(开始烧录后会有进度条,进度完成后则可以开始下面的测试)。

NodeMCU-32-S2 6.png

6. 烧录成功后,给 NodeMCU-32-S2 供电后观察 LED1 是否常亮,若正常亮起,则电源正常,若不亮则电源供电异常。

NodeMCU-32-S2 7.png

7. 用数据线连接开发板和电脑,打开串口工具配置如图所示,并连接到开发板的串口,向串口发送 “AT”,日志窗口返回 “OK” 视为烧录成功,反之则失败。

Icon-warning.png注意

发送 AT 指令的时候,需要勾选“发送新行”,这样会在指令末尾加上 \r\n (CR LF),指令才会执行。

常见 AT 指令集

指令 描述
AT 测试 AT 启动
AT+RST 重启模块
AT+GMR 查看版本信息
AT+RESTORE 恢复出厂设置
AT+CWMODE 设置当前 Wi-Fi 模式
AT+CWJAP 连接 AP
AT+CWAUTOCONN 设置上电是否自动连接 AP
AT+CWSTARTSMART 开启 SmartConfig
AT+CWSTOPSMART 关闭 SmartConfig
AT+CIPSTATUS 查询网络连接信息
AT+CIPSTART 建立 TCP 连接
AT+CIPMODE 设置传输模式
AT+CIPSEND 发送数据(发送+++退出透传,注意:不要勾选新行\r\n)

AT 指令参考

更多 AT 指令说明请参考:

官方 ESP-IDF 编程指南

ESP IDF (IoT Development Framework) 是 ESP32-S2 的官方开发套件。

使用 Eclipse 开发

上面官方的文档里面已经给出了编写程序的通用方法,但使用IDE(集成开发环境)可以更容易地完成此任务,您可以使用它编写代码(通常包括语法高亮和自动完成),编译它并将二进制文件上载到开发板。推荐使用 Eclipse 开发 ESP32-S2。这里的 Eclipse 就是经常用来开发 Java 的 Eclipse,它其实也可以用来开发 C/C++ 程序。只要装上 ESP-IDF 框架,就可以用来开发 ESP32-S2 了。

1. Eclipse安装非常简单:连接到官方站点并为您的操作系统下载适用于C / C ++开发人员的Eclipse IDE,选择 Eclipse IDE for C/C++ Developers。

NodeMCU-32-S2 8.png

2. 安装完成之后,还需要安装插件 ESP-IDF Eclipse Plugin,安装方式见 Github 页面。

3. 下载依赖库:https://github.com/espressif/esp-idf.git

git clone --recursive https://github.com/espressif/esp-idf.git

4. 如果访问 Github 速度较慢,可以尝试使用 ESP-IDF 工具安装器 安装必要的依赖[1]。本安装器可为您安装所需的交叉编译器、OpenOCD、cmake 和 Ninja 编译工具,以及一款 mconf-idf 配置工具。此外,本安装器还可在有需要时下载、运行 Python 3.7 和 Git For Windows 的安装器。

备注:上述步骤可能较为麻烦,用户可直接使用预装好插件的 Eclipse IDE:

使用 VS Code 开发

除了 Eclipse 之外,VS Code 也可以作为 NodeMCU-32-S2 的集成开发环境。参见:

资源下载

更多资料请参见:

ESP32 IDF

ESP IDF (IoT Development Framework) 是 ESP32-S2 的官方开发套件。

  • 快速入门
  • ESP-IDF V4.0 默认采用基于 CMake 的构建系统。针对 CMake 构建系统,ESP-IDF 有一款新的 Eclipse 插件。具体操作指南,请见 ESP-IDF Eclipse 插件

相关技术文档

  • NodeMCU-32-S2 规格书: 中文 EN
  • NodeMCU-32-S2 用户手册:中文
  • NodeMCU-32-S2 下载使用说明:中文

学习心得

FAQ

Icon-mail.png 联系 丢石头

我们的工作时间是: 09:00-18:00 (UTC+8 周一到周六)