ESP 保姆级教程 基础篇 —— 环境安装、NodeMcu引脚介绍
快速导读
- 1、安装 Arduino IDE —— 1.8.13
- 2、安装 ESP8266 —— 2.7.4
- 3、配置Arduino IDE 首选项
- 4、硬件开发板 —— ESP8266 NodeMcu 和 ESP32 NodeMcu
- 5、ESP8266 NodeMcu 开发板
- 5.1 引脚定义
- 5.2 跟启动相关的引脚
- 5.3 ADC输入
- 5.4 板载LED灯
- 5.5 复位按键
- 5.6 GPIO0 —— 烧录 or 工作
- 5.7 GPIO16 —— 睡眠唤醒
- 5.8 IIC总线
- 5.9 SPI总线
- 5.10 PWM引脚
- 5.11 中断引脚
- 6. ESP32 NodeMcu开发板
- 6.1 引脚定义
- 6.2 只能作为输入引脚
- 6.3 SPI Flash占用引脚,不需要使用
- 6.4 电容式触摸GPIO
- 6.5 ADC
- 6.6 DAC
- 6.7 RTC
- 6.8 PWM
- 6.9 I2C
手把手代码注释,完整案例讲解开发过程以及细节,一键式运行代码。
ESP保姆级付费专栏群707958244
,不喜勿加,凭借付费专栏订单号加入
- ESP 保姆级教程 系列导读(订阅前请务必阅读)
参考:
- ESP8266开发之旅 基础篇② 如何安装ESP8266的Arduino开发环境
1、安装 Arduino IDE —— 1.8.13
2、安装 ESP8266 —— 2.7.4
双击安装完毕后,可以查看环境是否配置成功。
3、配置Arduino IDE 首选项
找到首选项。
把编译
和上传
勾选上。
4、硬件开发板 —— ESP8266 NodeMcu 和 ESP32 NodeMcu
本系列只推荐 ESP8266 NodeMcu 和 ESP32 NodeMcu(对于初学者来说少走很多弯路,极度极度推荐),没有之一。
上图为ESP8266
左边为ESP32,右边为ESP8266
5、ESP8266 NodeMcu 开发板
下图为模组(芯片)引脚:
下图为NodeMcu(开发板)引脚:
- https://randomnerdtutorials.com/esp8266-pinout-reference-gpios/
5.1 引脚定义
绿色高亮标识
引脚可以大胆放心普通IO口用黄色高亮标识
引脚可以普通IO口用,但是需要注意启动时候的状态红色高亮标识
引脚就不建议做普通IO口
5.2 跟启动相关的引脚
有一些引脚(上拉或者下拉)可以阻止ESP8266正常启动。
- GPIO16: pin is high at BOOT
启动的时候输出
高电平
- GPIO0: boot failure if pulled LOW
如果下拉到GND,直接启动失败
- GPIO2: pin is high on BOOT, boot failure if pulled LOW
- 启动的时候输出
高电平
- 如果下拉到GND,直接启动失败
- GPIO15: boot failure if pulled HIGH
- 如果上拉到VCC,直接启动失败
- GPIO3: pin is high at BOOT
启动的时候输出高电平
- GPIO1: pin is high at BOOT, boot failure if pulled LOW
- 启动的时候输出高电平
- 如果下拉到GND,直接启动失败
- GPIO10: pin is high at BOOT
启动的时候输出高电平
- GPIO9: pin is high at BOOT
启动的时候输出高电平
除开上面列举的IO口,除了GPIO5和GPIO4以外,其他IO口都可以输出一个低电平。
GPIO4 and GPIO5 are the most safe to use GPIOs if you want to operate relays. (IO4/IO5 是最安全用来操作继电器)
5.3 ADC输入
在ESP8266上只有一个ADC GPIO。它的测量范围是 0 to 1V。而NodeMcu基于ESP8266-12,所以也只有一个ADC GPIO,但是由于电阻分压电路,可以测量范围扩展到 0-3.3V
。
5.4 板载LED灯
NodeMcu上存在一个板载LED灯,目前是连接到 GPIO2。
高电平灭、低电平亮
5.5 复位按键
当按键接到GND,ESP8266复位,系统重启。
5.6 GPIO0 —— 烧录 or 工作
- 当GPIO0 接到GND,ESP8266处于烧录下载模式
- 当GPIO0 接到Vcc,ESP8266处于正常工作模式
5.7 GPIO16 —— 睡眠唤醒
GPIO16可以用来把ESP8266从睡眠模式中唤醒,只需要把GPIO16接到 RST引脚。
5.8 IIC总线
- GPIO5: SCL
- GPIO4: SDA
5.9 SPI总线
- GPIO12: MISO
- GPIO13: MOSI
- GPIO14: SCLK
- GPIO15: CS
5.10 PWM引脚
GPIO0-GPIO16都可以作为软件PWM引脚。并且PWM是10位。
5.11 中断引脚
除开GPIO16,其他GPIO都可以作为中断引脚。
6. ESP32 NodeMcu开发板
- https://randomnerdtutorials.com/esp32-pinout-reference-gpios/
6.1 引脚定义
绿色高亮标识
引脚可以大胆放心普通IO口用黄色高亮标识
引脚可以普通IO口用,但是需要注意启动时候的状态红色高亮标识
引脚就不建议做普通IO口
6.2 只能作为输入引脚
- GPIOs 34 - 39
6.3 SPI Flash占用引脚,不需要使用
- GPIO 6 (SCK/CLK)
- GPIO 7 (SDO/SD0)
- GPIO 8 (SDI/SD1)
- GPIO 9 (SHD/SD2)
- GPIO 10 (SWP/SD3)
- GPIO 11 (CSC/CMD)
6.4 电容式触摸GPIO
- https://randomnerdtutorials.com/esp32-touch-wake-up-deep-sleep/
- T0 (GPIO 4)
- T1 (GPIO 0)
- T2 (GPIO 2)
- T3 (GPIO 15)
- T4 (GPIO 13)
- T5 (GPIO 12)
- T6 (GPIO 14)
- T7 (GPIO 27)
- T8 (GPIO 33)
- T9 (GPIO 32)
6.5 ADC
ESP32有 18 x 12 bits ADC 。12位ADC意味着 0 to 4095(0v-3.3v)
对应引脚:
- ADC1_CH0 (GPIO 36)
- ADC1_CH1 (GPIO 37)
- ADC1_CH2 (GPIO 38)
- ADC1_CH3 (GPIO 39)
- ADC1_CH4 (GPIO 32)
- ADC1_CH5 (GPIO 33)
- ADC1_CH6 (GPIO 34)
- ADC1_CH7 (GPIO 35)
- ADC2_CH0 (GPIO 4)
- ADC2_CH1 (GPIO 0)
- ADC2_CH2 (GPIO 2)
- ADC2_CH3 (GPIO 15)
- ADC2_CH4 (GPIO 13)
- ADC2_CH5 (GPIO 12)
- ADC2_CH6 (GPIO 14)
- ADC2_CH7 (GPIO 27)
- ADC2_CH8 (GPIO 25)
- ADC2_CH9 (GPIO 26)
分为ADC1和ADC2.
请注意,ADC2通道在ESP32开启WIFI后,功能会受到限制,建议使用ADC1通道!
6.6 DAC
2 x 8 bits DAC
对应引脚:
- DAC1 (GPIO25)
- DAC2 (GPIO26)
6.7 RTC
- https://randomnerdtutorials.com/esp32-deep-sleep-arduino-ide-wake-up-sources/
提供了单独的 RTC GPIO(共18个引脚)支持,这些GPIO连接到“ RTC”低功耗和模拟子系统,当芯片处于深度睡眠状态,需要运行超低功耗协处理器(ULP)或使用ADC / DAC /等模拟功能时,这些GPIO便起作用。
- RTC_GPIO0 (GPIO36)
- RTC_GPIO3 (GPIO39)
- RTC_GPIO4 (GPIO34)
- RTC_GPIO5 (GPIO35)
- RTC_GPIO6 (GPIO25)
- RTC_GPIO7 (GPIO26)
- RTC_GPIO8 (GPIO33)
- RTC_GPIO9 (GPIO32)
- RTC_GPIO10 (GPIO4)
- RTC_GPIO11 (GPIO0)
- RTC_GPIO12 (GPIO2)
- RTC_GPIO13 (GPIO15)
- RTC_GPIO14 (GPIO13)
- RTC_GPIO15 (GPIO12)
- RTC_GPIO16 (GPIO14)
- RTC_GPIO17 (GPIO27)
6.8 PWM
- https://randomnerdtutorials.com/esp32-pwm-arduino-ide/
ESP32 有16个独立通道来生成PWM信号。基本上所有的引脚都可以用来作为PWM引脚(除开 GPIOs 34 to 39)
6.9 I2C
- https://randomnerdtutorials.com/esp32-i2c-communication-arduino-ide/
ESP32有 两个I2C通道,以及 任意的引脚都可以设置为 SDA or SCL。
默认I2C引脚
- GPIO 21 (SDA)
- GPIO 22 (SCL)
ESP 保姆级教程 基础篇 —— 环境安装、NodeMcu引脚介绍相关推荐
- 保姆级教程:在Linux上安装配置Resilio Sync
原文链接:https://zhaokaifeng.com/?p=6055 Resilio Sync 是一款基于 P2P 网络的去中心化文件同步工具,用途十分广泛.本文将从零开始演示如何在 Linux ...
- 【预告中】ESP 保姆级教程 疯狂点灯篇 —— 案例:ESP8266 + LED + 按键 + OneNet物联网平台 + Web应用
快速导读 1.项目说明 2.项目准备 2.1 软件准备 2.2 硬件准备 2.2.1 硬件材料 2.2.2 硬件连线 3.项目细节 3.1 设备端代码 3.2 设备端代码细节过程 4.项目结果 手把手 ...
- 【ESP32最全学习笔记(基础篇)——4.ESP32 引脚介绍】
关于本教程: ESP32 基础篇 1.ESP32简介 2.ESP32 Arduino 集成开发环境 3.VS 代码和 PlatformIO 4.ESP32 引脚 ☑ 5.ESP32 输入输出 6.ES ...
- 【2023版】超详细Python+Pycharm安装保姆级教程,Python环境配置和使用指南,看完这一篇就够了
这两年被Python初学小白问到最多的问题就是,该用什么代码编辑工具? 说实话,我个人是用Jupyter Notebook最多,主要是经常做数据可视化,方便些. 但对于初学者来说,PyCharm仍是不 ...
- 【ESP 保姆级教程】疯狂传感器篇 —— 案例:Mega + ESP8266 + MQ2烟雾 + MQ3酒精 + MQ7一氧化碳+ OLED + 巴法云 + 微信小程序(环境监控)
忘记过去,超越自己 ❤️ 博客主页 单片机菜鸟哥,一个野生非专业硬件IOT爱好者 ❤️ ❤️ 本篇创建记录 2022-04-20 ❤️ ❤️ 本篇更新记录 2022-04-23 ❤️
- 【保姆级教程】Anaconda的安装教程:包括Anaconda的介绍、下载、安装及环境变量配置等
Anaconda安装教程 1.Anaconda介绍 2.Anaconda下载 3.Anaconda安装 4.配置Anaconda环境 5.测试Anaconda是否配置成功 1.Anaconda介绍 A ...
- 【ESP 保姆级教程】疯狂传感器篇 —— 案例:ESP8266 + MQ3酒精传感器 + webserver(局域网内曲线变化图)+ 自定义飞书告警
忘记过去,超越自己 ❤️ 博客主页 单片机菜鸟哥,一个野生非专业硬件IOT爱好者 ❤️ ❤️ 本篇创建记录 2022-05-03 ❤️ ❤️ 本篇更新记录 2022-05-03 ❤️
- 【ESP 保姆级教程】疯狂传感器篇 —— 案例:UNO/Mega + MQ2烟雾传感器 + MQ3酒精传感器 + MQ7一氧化碳传感器 + OLED
忘记过去,超越自己 ❤️ 博客主页 单片机菜鸟哥,一个野生非专业硬件IOT爱好者 ❤️ ❤️ 本篇创建记录 2022-03-30 ❤️ ❤️ 本篇更新记录 2022-04-10 ❤️
- 【ESP 保姆级教程】疯狂传感器篇 —— 案例:Mega + ESP8266 + MQ2烟雾传感器 + MQ3酒精传感器 + MQ7一氧化碳传感器 + OLED +巴法云平台
忘记过去,超越自己 ❤️ 博客主页 单片机菜鸟哥,一个野生非专业硬件IOT爱好者 ❤️ ❤️ 本篇创建记录 2022-04-20 ❤️ ❤️ 本篇更新记录 2022-04-20 ❤️
最新文章
- 网络化楼宇对讲的前景
- Redis集群的重启
- Windows上编译github源码方式运行Node-RED,以及离线迁移安装Node-RED
- OpenGL Tessellation细分曲面的实例
- 【行为型模式】《大话设计模式》——读后感 (15)烤羊肉串引来的思考?——命令模式...
- HDU - 6704 K-th occurrence (后缀数组+主席树)
- 摆成“吉”字的一万响鞭炮
- goland 方法注释_goland 设置注释模板的过程图文详解
- URL重写 对于禁用cookie的 方法
- 银行测试汉字录入软件,小键盘数字练习软件(银行及各行业文员专用)
- 精英二代手柄测试软件,XBOX精英二代手柄评测视频:世界上最先进的手柄
- Javascript对象基础讲解
- python 使用PIL工具包中的pytesseract函数识别英文字符
- matlab半小提琴图,不会编程,也可以画小提琴图啦!
- 商品sku规格选择效果,没有商品的不能选中,选择顺序不影响展示结果
- scrapy-splash java,小白程序员-运用Scrapy-splash爬取动态js页面
- 4--STM32RCC时钟树
- 【Python】逆向爬虫-----模拟微信公众平台登录(MD5)
- C++:计算对称正定 (SPD) 矩阵的逆矩阵(附完整源码)
- 弹性盒子flex轴的说明