ESP8266 PWM教程|LED使用ESP8266

脉冲宽度调制或PWM是一种向LED和电动机等负载传递功率的技术(PWM也可以用于编码消息)。在此ESP8266 PWM教程中,我将教您如何使用ESP8266 WiFi模块生成脉冲宽度调制(PWM)信号,该信号将用于LED褪色。

概述

我们已经看到了几个使用各种微控制器(或IC)的PW伟德老虎机手机版M教程8051,,,,Arduino,Raspberry Pi和IC 555.使用PWM技术,我们控制了LED的强度(增加或降低了其亮度),改变了直流电动机的速度(提高或降低速度)并旋转了伺服电动机。

现在,在此ESP8266 PWM教程中,我将控制连接到ESP8266 WiFi模块的GPIO2引脚的LED的亮度,即使用ESP8266的LED褪色。

ESP8266中的PWM

ESP8266EX微控制器,即是所有ESP8266模块的核心(例如ESP-01,Nodemcu等)的核心,由四个专用的PWM输出接口组成。ESP8266EX中与PWM相对应的引脚如下:

ESP8266EX中的PWM引脚

引脚名称

引脚号

mtdi

10

mtdo

13

mtms

9

GPIO4

16

如果您观察到,我们的ESP8266 ESP-01 WiFi模块中所有这四个引脚都不可用。那么我们如何在ESP8266中实现PWM?

答案非常简单:使用软件编程,即使用MicroController的计时器。

ESP8266 WiFi模块中的PWM可以在计时器中断的帮助下实现。PWM信号的频率可以在1Hz至1kHz之间(有人说,最小频率为100Hz!)。

如何在ESP8266中实施PWM?

ESP8266中PWM生成的软件实现与Arduino非常相似。由于我们使用Arduino IDE来编程ESP8266,因此负责产生PWM信号的函数是模拟值(我们在Arduino中使用的功能相同)。

AnalogWrite函数具有两个参数:PIN号和PWM值。代替销号,输入要使用PWM输出的引脚的数量。

进入PWM值,您需要根据PWM的分辨率输入值。如果是Arduino,则分辨率为8位,因此您必须输入0到255之间的值。

如果是ESP8266,ESP8266中的PWM使用10位分辨率。因此,您必须输入0到1023之间的值。在这里,PWM值“ 0”表示0%占空比和PWM值“ 1023”表示100%占空比。0到1023之间的任何值都将使占空比。

笔记:

  • 如果已将ESP8266中的PIN分配给模拟Write生成PWM信号,则不能用作数字输出引脚,即您不能使用DigitalWrite();在该引脚上功能。
  • 为了将PIN用作数字引脚,您需要编写AlalogWrite(PIN号,0)才能释放它。

ESP8266 PWM LED褪色的PWM教程的电路图

以下图像是使用Arduino作为USB到串行转换器编程ESP8266 WiFi模块编程的电路图,还使用PWM信号LED褪色。

ESP8266 PWM教程电路图

需要组件

  • ESP8266 WiFi模块(ESP-01)
  • Arduino Uno
  • 按钮
  • SPDT开关(滑动开关)
  • 电阻(1kΩ和2.2kΩ)
  • 小LED(5mm或3mm)
  • 连接电线
  • 面包板

电路设计

连接LED(我使用了8mm LED,您可以将5mm或3mm LED带有电流限制电阻器)与ESP8266 WiFi模块的GPIO2引脚。

VCC和CH_PD连接到3.3V电源,GND连接到GND。ESP8266 WiFi模块的RST(重置)引脚通过按钮连接到GND。

现在,ESP8266的RX和TX引脚已连接到Arduino Uno的RX和TX。请注意,在电路图中,ESP8266的RX引脚不是直接连接到Arduino的Rx引脚,而是通过级别转换器(由1KΩ和2.2KΩ电阻组成)。

最后,GPIO0引脚。该PIN负责在ESP8266中启用编程模式。将GPIO0引脚连接到SPDT幻灯开关,即其中心端子,并将两个端子之一连接到GND。另一个端子用作GPIO引脚。

代码

下面给出了ESP8266 PWM LED褪色教程的代码。

在职的

按照电路图正确正确进行所有连接后,在ESP8266中启用编程模式,即将GPIO0开关滑到GND位置并按下RST按钮。

使用Arduino IDE上传代码(首先,在董事会中选择通用ESP8266模块以及正确的端口号)。

上传程序后,将GPIO0引脚滑到GPIO位置,然后按下RST按钮。现在,代码将开始运行,最初您可以看到LED通过5个步骤慢慢提高其亮度,以达到最大强度。

此后,衰落的动作开始了,LED逐渐消失,即低至高和高低是一个循环。

申请

  • ESP8266 PWM教程只是ESP8266 WiFi模块的PWM函数的演示。
  • 使用ESP8266中的PWM技术,您可以实施多个项目,例如伺服电动机控制,Web控制伺服,直流电动机速度控制等。

一个回应

发表评论

您的电子邮件地址不会被公开。

电子豪华粉丝
<\/i>","library":""}}" data-widget_type="nav-menu.default">
Baidu
map