ESP-01S Wi-Fi 模块:配置接线

news2024/12/24 2:20:47

ESP-01S Wi-Fi 模块:配置接线

参考:使用esp-01s与继电器配合实现远程开关灯 (zhihu.com)
ESP-01S WiFi 模块 – 配置布线 - 技术探索 (techexplorations.com)
本文提供了将 ESP8266 Wi-Fi 模块与 Arduino Uno 配合使用的分步指南,重点介绍了用于面包板连接需要适配器。它还详细介绍了如何配置模块的通信速度和 Wi-Fi 操作模式,以及使用专用串行到 USB 适配器的替代选项。

Screenshot (1283) - Square

ESP8266 又名 ESP-01S Wi-Fi 模块简介

本文将引导您完成使用 **ESP8266(**也称为 ESP-01S Wi-Fi 模块)的过程。该模块可以在如下所示的设备上看到。

ESP8266 又名 ESP-01S Wi-Fi 模块

ESP8266 又名 ESP-01S Wi-Fi 模块

这是一个成熟的微控制器,在此实现中,包含特殊的固件,可将其转换为易于使用的Wi-Fi模块

当连接到Arduino Uno时,Wi-Fi模块使用串行接口,使我们能够在Arduino Uno上编写草图,可以通过Wi-Fi与世界进行通信。由于Arduino Uno缺乏内置的Wi-Fi功能,因此我们必须依靠外部组件来实现此类功能。

虽然有许多方法可以将 Wi-Fi 功能添加到 Arduino Uno 中,但 ESP-01S 模块是一种流行且低成本的选择。我们将使用此模块通过 ESP-01S 提供的 Wi-Fi 接口,使用我们的手机来控制我们的 Arduino 遥控车。

在本文中,我将演示如何连接模块并将其配置为与Arduino Uno的软件串行接口一起使用。

如何使用适配器将 ESP-01S Wi-Fi 模块连接到面包板

如果你把这个模块翻过来,你会注意到它有两排四个引脚。

翻转式 ESP-01S Wi-Fi 模块

翻转式 ESP-01S Wi-Fi 模块

这种配置的缺点是它对面包板不友好。如果将 ESP-01S 连接到面包板,您会注意到相邻的引脚被有效短路。

img

连接到试验板的 ESP-01S

因此,如果我们想将此模块与面包板一起使用,如本例所示,我们需要使用适配器。适配器如下图所示。

img

可帮助我们将 ESP-01S 连接到面包板而不会短路的适配器

当您翻转适配器时,您会看到它有两排引脚。这些行与面包板兼容,这意味着我们可以在下面显示的配置中连接它们,而无需任何短路。

img

连接到试验板的适配器

然后,如上图所示,我们可以使用两侧的跳线继续连接到Arduino。

只是要小心。确保将模块插入适配器,如左图所示,而不是右图所示。

这是插入模块的正确方法

这是插入模块的正确方法

这是插入模块的错误方式

这是错误的方式

有一个指向模块下方或远离模块的小箭头来帮助您并提醒您正确的连接方式。

img

显示将模块插入适配器的方法的小箭头

这指示如何将模块正确插入适配器,如下图所示。

img

模块已正确插入适配器

要记住的另一件事是,SunFounder 3合1 Arduino Kit包括其中两个适配器。为了避免混淆,我标记了适配器 A 和 B,以便我可以在每个模块上具有不同的配置。在做一个项目时,我只是看着适当的标签,然后说:“哦,是的。这是我用于这个实验的那个。

img

两个标记为 A 和 B 的适配器

我要将适配器重新连接到迷你面包板。我需要小心配置。我有一根发送 5 伏的红色跳线,我的 5 伏引脚位于此处。

img

5 伏引脚

所以这是插入它的正确方法。

img

将适配器连接到试验板的正确方法

我将它插入,然后将模块连接到适配器。

img

就是这样!适配器和模块都连接到试验板。

配置 ESP-01S Wi-Fi 模块以配合 Arduino Uno 的软件串行接口和本地 Wi-Fi 热点

接下来,我们需要配置模块以将其与我们的项目一起使用。我想对模块的配置进行两项更改。

  1. 第一个修改是调整串行通信速度。波特率设置为默认串行通信速度 115200 波特。由于我们将在Arduino Uno上使用软件串行,因此我想将模块的串行波特率降低到9600,以提高通信可靠性。
  2. 第二个修改涉及更改 Wi-Fi 操作模式,以使此模块能够连接到本地 Wi-Fi 热点。

若要执行这些操作并应用此配置,我们将使用 AT 命令。在此过程的第一部分,我们将使用Arduino Uno作为USB到串行适配器。这意味着我们基本上将使用下图所示的微控制器来实现此目的。虽然它是一个微控制器,但在Arduino Uno上运行时,它可以用作简单的USB到串行适配器。

img

Arduino Uno 的微控制器

Arduino Uno也将用于提供电力。我有5伏的电源为模块供电,基本上是用Arduino Uno的电源为Wi-Fi模块供电。

或者,如果您不想将Arduino Uno用作USB到串行接口,则可以使用专用的串行到USB适配器模块,例如FTDI232,这是一种非常流行的USB到串行或串行到USB适配器。

img

专用的串行转 USB 适配器模块…

img

…FTDI232!

img

您需要将这两根 RX/TX 线连接到 FTDI232 模块的 RX/TX 引脚。

FTDI232模块有两个引脚用作RX/TX引脚。您可以将 Wi-Fi 模块的两条 RX/TX 线连接到 FTDI 模块。通过这样做,您可以用该设备替换Arduino Uno以达到相同的结果。

布线

现在,让我们快速浏览一下接线。为此,我将借用 SunFounder 文档中的原理图。

img

来自 SunFounder 文档的示意图 https://docs.sunfounder.com/projects/3in1-kit/en/latest/faq/burn_firmware.html

接线相当简单。请记住,在该过程的第一部分中,我们将Arduino Uno用作USB到串行适配器

我们已经连接了 ESP-01 模块,使其串行接口直接连接到 Arduino Uno 的硬件串行接口。虽然我们可能会在某个时候切换到软件,但对于此示例和该过程的这一部分,我们希望使用 Arduino Uno 的硬件串行接口配置 Wi-Fi 模块。

要将 Wi-Fi 模块连接到 Arduino Uno,请执行以下步骤:

  1. 将 Wi-Fi 模块的 RX 引脚(橙色线)连接到 Arduino Uno 上的数字引脚 0。
  2. 将 Wi-Fi 模块的 TX 引脚(蓝线)连接到 Arduino Uno 上的数字引脚 1。

让我们暂时将注意力转移到实际硬件上。以前,我使用软件串行接口处理此硬件。如下图所示,我已经将跳线连接到数字引脚 2 和 3,用于实现软件串行。

img

跳线连接到数字引脚 2 和 3。

我要将它们翻转到硬件串行。

因此,模块上的 RX 黑线需要连接到数字引脚 0。同样,TX 将转到数字引脚 1。

img

RX 连接到数字引脚 0,TX 连接到数字引脚 1。

关于其余的电线,我已经将地线连接到接地轨,接地轨连接到Arduino的一个接地引脚。此外,我已将 IO1 引脚连接到适配器的 3.3 伏输出。由于适配器具有内置稳压器,因此可产生 3.3 伏输出。

img

为了使能设备,我已将使能引脚连接到 3.3 伏。此外,我已将 Wi-Fi 模块适配器上的 5 伏引脚连接到 Arduino Uno 上的 5 伏引脚以获取电源。如前所述,接地接地。

最后,还有一根悬空的电线要解决。这是面包板上的黄色跳线,当前连接到试验板上的空柱。它没有连接到任何东西,只是漂浮的。如果设备在Arduino Uno的串行监视器上没有响应,则此电线将用于重置设备。只需连接跳线并让它漂浮,除非以后需要,否则无需将其连接到其他任何东西。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/868757.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

湘大 XTU OJ 1291 Buying Gifts 题解(非常详细):枚举 维护最小值 排序

一、链接 1291 Buying Gifts 二、题目 题目描述 快到年末了,Boss Liu准备在年会上发些礼物,由于不想礼物的价格区别太大,Boss Liu希望最好的礼物与最差的礼物价格相差越小越好。 当然,如果存在相同的选择,Boss Liu…

python num循环怎么从1开始

如何实现python for循环从1开始? range()函数的作用和用法: 编写一个从数值1开始的循环: 执行后得到的结果 其他注意事项

类的派生

目录 1.1 派生方法一(类调用) 1.2 派生方法二(super) python从小白到总裁完整教程目录:https://blog.csdn.net/weixin_67859959/article/details/129328397?spm1001.2014.3001.5502 1.1 派生方法一(类调用) 指名道姓访问某一个类的函数:该方式与继承无关 class …

QGIS3.28的二次开发七:创建地图工具

地图工具是输入设备(一般指鼠标与键盘)与画布(QgsMapCanvas)的交互接口。它负责处理所有用户通过输入设备(鼠标和键盘)和画布互动的操作,例如镜头控制、要素绘制、标识工具等。 QgsMapTool 是地…

知识付费小程序制作

知识付费小程序是一种通过在线平台提供知识付费服务的应用程序。它为知识提供者和知识需求者之间搭建了一个便捷的交流平台,让用户可以通过支付一定费用来获取专业的知识、技能或经验。 这类小程序通常具有以下核心功能: 1. 课程发布与管理&#xff1a…

内网渗透——入门篇(5%)

内网渗透——入门篇(5%) 参考文章:​​内网渗透学习(一)内网入门基础 - leviathan123 - 博客园 (cnblogs.com)​​​ 第一部分 内网常用名词及工具介绍 内网也指局域网,是指在某一区域由多台计算机互连而…

SQLServer 实现数据库表复制到另一个数据库_kaic

SQLServer 实现数据库表复制到另一个数据库 一、如果两个数据库在同一台服务器上 1、复制表结构和数据(A->B): SELECT * INTO DatabaseB.dbo.TableB FROM DatabaseA.dbo.TableA 2、仅仅复制表结构(A->B): SELECT * INTO DatabaseB.dbo.TableB …

shell和反弹shell

文章目录 是什么?bash是什么?反弹shell 是什么? Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。 Shell 是指一种应用程序,这个应用程序提供了…

MySQL语句总和之表数据操作(增删改查)

目录 1、增加 insert into 表 (字段1, 字段3, 字段5) values(value1, value2, value3) insert into 表 [(字段1, 字段2, 字段3....)] values(value1, value2,value3.....)[,(value1, value2, value3....) .....] in…

2023年即将推出的CSS特性对你影响大不大?

Google开发者大会每年都会提出有关于 Web UI 和 CSS 方面的新特性,今年又上新了许多新功能,今天就从中找出了影响最大的几个功能给大家介绍一下 :has :has() 可以通过检查父元素是否包含特定子元素或这些子元素是否处于特定状态来改变样式,也…

Python中的诡异事:不可见字符!

文章目录 前言1. 起因2. 调查3. 高能4. 释惑 前言 今天分享一件很诡异的事情,我写代码的时候遇到了不可见的字符!!! 1. 起因 今天在使用pipreqs导出项目中所依赖的库时突然报错了: pipreqs . --encodingutf-8 --forc…

AtcoderABC222场

A - Four DigitsA - Four Digits 题目大意 给定一个整数N,其范围在0到9999之间(包含边界)。在将N转换为四位数的字符串后,输出它。如果N的位数不足四位,则在前面添加必要数量的零。 思路分析 可以使用输出流的格式设…

Petrel解释二维浅地层数据

Petrel是斯伦贝谢开发的一款地质解释和建模软件,有点像地理信息系统的ArcGIS,主要用于数据分析和展示。它不是用来处理原始数据的,而是集成各种处理后的结果数据进行特征分析和目标拾取。当然,它也能读取原始数据,比如…

安装程序指南:FMSoft_uniGUI_Complete_Professional1.9.1567

解压和安装程序指南:FMSoft_uniGUI_Complete_Professional https://t00y.com/dir/1041485-3049764-93c76d?56118062 引言: 在开发软件的过程中,我们经常需要安装各种工具和框架来帮助我们实现项目的目标。本文将为您提供一个详细的指南&…

怎么入驻抖音的产业带服务商呢?

作为互联网行业中的明星企业之一,抖音电商近年来一直备受市场瞩目,甚至于某种角度而言,围绕抖音电商的研究和解读已成为一门“显学”。 如果说2021年之前,抖音试水电商业务的方式大多以主播、品牌及商家申请找cmxyci自发摸索为主…

漫谈拥塞控制: a Decade of Wasted Bandwidth?

梭子蟹终于上市了,早早起来准备去买来尝鲜,出发之前想起大概 2016,2017 年左右温州老板推荐给我的一篇好论文:The Linux Scheduler: a Decade of Wasted Cores,但有点长,就读个梗概:a Decade of…

中科亿海微ROM使用

标题 ROM(Read-Only Memory,只读存储器)是一种在FPGA(Field-Programmable Gate Array,现场可编程门阵列)中常用的存储器类型。与RAM(Random Access Memory,机存取存储器)…

用HTML+JavaScript构建C++类(Class)代码转换为MASM32代码的平台

一、需求分析 在使用MASM32编写Windows应用程序时,经常要调用Windows API接口函数 和 相应的数据结构,这些数据结构中有很多是类(Class),对于那些在MASM32没有定义的类,我们需要自己来转换。比如&#xff…

Mybatis 初识

目录 1. MyBatis入门 1.1 MyBatis的定义 1.2 MyBatis的核心 MyBatis的核心 JDBC 的操作回顾 1.3 MyBatis的执行流程 MyBatis基本工作原理 2. MyBatis的使用 2.1 MyBatis环境搭建 2.1.1 创建数据库和表 2.1.2 添加MyBatis框架支持 老项目添加MyBatis 新项目添加MyBatis 2.1.3 设…

第一份工作要怎么找呀

前言:相信看到这篇文章的小伙伴都或多或少有一些编程基础,懂得一些linux的基本命令了吧,本篇文章将带领大家服务器如何部署一个使用django框架开发的一个网站进行云服务器端的部署。 文章使用到的的工具 Python:一种编程语言&…