怎样用ESP8266WiFi模块控制通过WiFi网络连接到Arduino数字I/O引脚的LED

电子说

1.2w人已加入

描述

概述

ESP8266 WiFi模块是制造商和业余爱好者社区的有趣补充,因为它允许我们将WiFi和互联网集成到我们的DIY项目中。

在考虑大型物联网项目之前,让我们开始探索ESP8266 WiFi模块,并使用ESP8266和Arduino实现一个名为WiFi Controlled LED的小型但有用的项目。

我已经在开始使用ESP8266和ARDUINO 项目中向您介绍了ESP8266 WiFi模块。首先参考该项目,以了解ESP8266 WiFi模块的基本信息,其引脚图,引脚配置以及如何将ESP8266与Arduino接口。

重要事项注意:

在ESP8266 WiFi模块的第二个项目中,我向您展示了如何刷新AT命令固件到ESP8266 WiFi模块的ROM上。

首先实施该项目非常重要,即确保ESP8266 WiFi模块上安装了AT固件。

如果您已将ESP8266 WiFi模块编程为其他程序(例如Blink),则必须刷新固件。如果您的ESP模块已经具有AT命令固件,则保持原样。

使用ESP8266和Arduino的WiFi控制LED背后的概念

在深入了解项目的详细信息(如电路图,组件,连接和代码)之前,让我带您了解WiFi控制LED背后的概念ESP8266和Arduino。

项目背后的想法非常简单。将LED连接到Arduino板。此LED必须通过WiFi连接,即通过智能手机或笔记本电脑连接到本地网络。

为此,请使用ESP8266 WiFi模块并通过串行通信将其连接到Arduino 。 Arduino将命令ESP8266模块连接到WiFi网络并从客户端接收数据(HTML页面)。

根据客户端发送的信息(使用在Web浏览器的帮助下,Arduino将打开或关闭LED。就是这样。

电路图

使用ESP8266的WiFi控制LED的电路图和Arduino项目如下图所示。

Arduino

所需组件

Arduino UNO [在此处购买]

ESP8266 WiFi模块[在此处购买]

LED [购买]

330Ω电阻(1/4瓦)[购买]

1KΩ电阻(1/4瓦)[购买]

2.2KΩ电阻(1/4瓦)[在此处购买]

按钮[在此处购买]

连接线[在此处购买]

迷你面包板[在此购买]

电路设计

我使用过的软件串口功能Arduino并将其数字引脚2和3设为RX和TX。这些引脚必须连接到ESP8266 WiFi模块的TX和RX引脚。

注意:我使用了由1KΩ组成的电平转换器在将Arduino的TX引脚(引脚3)连接到ESP8266的RX引脚之前,电阻和2.2KΩ电阻。

LED连接到数字I/O引脚Arduino的11个。 (这是我们将通过WiFi控制的LED)。

进入与ESP8266相关的其余连接时,它的VCC和CH_PD引脚连接到3.3 Arduino和GND的V连接到Arduino的GND引脚。按键连接在ESP8266的RESET和GND之间。

ESP8266的GPIO引脚即GPIO0和GPIO2都保持开路状态,因为我们不会使用这些引脚这个项目。

代码

以下是要上传到Arduino的代码。它将在ESP8266模块中配置WiFi,并检查HTML页面中的数据(稍后将讨论)。

用于发送数据的HTML代码ESP8266

为了创建项目的界面,我创建了一个简单的基于HTML的网页。此网页的HTML代码如下所示。

下载此HTML代码(将其另存为.html文件)。

此HTML网页使用JavaScript库“jQuery.js”。从此处下载此库,并将其放在与.html文件相同的文件夹中。

因此,您的网页文件夹包含两个文件:一个“webpage.html”文件和“jQuery.js”文件。使用任何Web浏览器打开HTML文件。界面如下所示。

Arduino

使用ESP8266和Arduino项目处理WiFi控制LED

在完成所有必要的连接后,将上面提供的Arduino代码上传到您的Arduino Board。上传代码后,打开Arduino的串行监视器。您可以在ESP8266 WiFi模块上看到设置的进度。

Arduino

上图中的一些信息看起来垃圾,但我保证传输正确的数据。如果您得到一个干净的响应,您可以在上图中突出显示的位置找到ESP8266模块的IP地址。

由于我找不到来自的IP地址串口监视器,我不得不使用另一个名为“高级IP扫描仪”的工具查找它。

Arduino

现在,打开您之前保存的网页,并在提供的IP地址字段中输入此IP地址。输入IP地址后,您可以单击页面上的按钮打开和关闭LED。

Arduino

结论

这里设计了一个名为WiFi Controlled LED的简单项目,使用ESP8266和Arduino,连接到Arduino的LED通过WiFi控制(在同一个内部)网络)。

在同一个WiFi网络中连接的任何设备都可以借助简单的HTML网页控制LED。

该项目的下一步或高级版本将通过互联网控制LED,即从世界任何地方控制(包括PORT转发)。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分