首页 / 行业
怎样用ESP8266WiFi模块生成将用于LED衰落的脉冲宽度调制信号
2019-07-29 14:33:00
概述
我们已经看过几个使用各种微控制器(或IC)的PWM教程,如8051,Arduino,Raspberry Pi和IC 555.使用PWM技术,我们控制了LED的强度(增加或减少了亮度),改变了直流电机的速度(增加或减少速度),还旋转了伺服电机。
现在在ESP8266 PWM教程中,我将控制连接到ESP8266 WiFi模块的GPIO2引脚的LED的亮度,即使用ESP8266进行LED衰落。
ESP8266中的PWM
ESP8266EX微控制器即所有ESP8266模块(如ESP-01,NodeMCU等)的核心SoC由四个组成专用PWM输出接口。 ESP8266EX中与PWM对应的引脚如下:
ESP8266EX中的PWM引脚
引脚名称Pin Number
MTDI10
MTDO13
MTMS9
GPIO416
如果您发现,我们的ESP8266 ESP-01 WiFi模块中没有这四个引脚。那么我们如何在ESP8266中实现PWM呢?
这个问题的答案非常简单:使用软件编程,即准确使用微控制器的定时器。
ESP8266 WiFi模块中的PWM可以通过定时器中断实现。 PWM信号的频率可以是1Hz到1KHz之间的任何值(有人说,最低频率是100Hz!)。
如何在ESP8266中实现PWM?
ESP8266中PWM生成的软件实现与Arduino中的非常相似。由于我们使用Arduino IDE对ESP8266进行编程,因此负责产生PWM信号的功能是analogWrite(与我们在Arduino中使用的功能相同)。
analogWrite函数有两个参数:引脚号和PWM值。代替引脚编号,输入要通过其使用PWM输出的引脚编号。
进入PWM值,此处需要输入基于的值PWM的分辨率。对于Arduino,分辨率为8位,因此您必须输入介于0和255之间的值。
对于ESP8266,ESP8266中的PWM使用10位分辨率。因此,您必须输入0到1023之间的值。这里,PWM值“0”表示0%占空比,PWM值“1023”表示100%占空比。 0到1023之间的任何值都将成为占空比。
注意:
如果ESP8266中的一个引脚被分配了analogWrite来产生PWM信号,则它不能用作数字输出引脚,即你不能使用digitalWrite();该引脚上的功能。
为了将该引脚用作数字引脚,您需要写入analogWrite(引脚号,0)以释放它。
用于LED衰落的ESP8266 PWM教程电路图
下图是使用Arduino作为USB转串口转换器编程ESP8266 WiFi模块的电路图以及使用PWM信号的LED衰落。
所需组件
ESP8266 WiFi模块(ESP-01)
Arduino UNO
按钮
SPDT开关(滑动开关)
电阻器(1KΩ和2.2KΩ)
小型LED(5mm或3mm)
连接线
面包板
电路设计
连接LED(我使用的是8mm LED,你可以使用5mm或3mm LED和限流电阻istor)到ESP8266 WiFi模块的GPIO2引脚。
VCC和CH_PD连接到3.3V电源,GND连接到GND。 ESP8266 WiFi模块的RST(复位)引脚通过按钮连接到GND。
现在,ESP8266的RX和TX引脚连接到RX和TX Arduino UNO。请注意,电路图中ESP8266的RX引脚并未直接连接到Arduino的RX引脚,而是通过电平转换器(由1KΩ和2.2KΩ电阻组成)。
最后,GPIO0引脚。该引脚负责在ESP8266中启用编程模式。将GPIO0引脚连接到SPDT滑动开关,即连接到其中心端子,并将两个端子中的一个连接到GND。另一个端子用作GPIO引脚。
代码
ESP8266的代码PWM LED衰落教程如下:
工作
正确连接所有连接后按照电路图,在ESP8266中启用编程模式,即将GPIO0开关滑动到GND位置并按下RST按钮。
使用Arduino IDE上传代码(首先选择Generic板上的ESP8266模块以及正确的端口号。)
上传程序后,将GPIO0引脚滑动到GPIO位置并按下RST按钮一次。现在,代码将开始运行,最初您可以看到LED通过5步到最大强度缓慢增加亮度。
此后,淡入淡出动作开始于LED褪色进出,即从低到高,从高到低是循环。
应用
ESP8266 PWM教程只是ESP8266 WiFi模块PWM功能的演示。
使用ESP8266中的PWM技术,可以实现多个项目,如伺服电机控制,网络控制伺服,直流电机速度控制等
最新内容
手机 |
相关内容
什么是带阻三极管,带阻三极管的基本
什么是带阻三极管,带阻三极管的基本结构、工作原理、电阻比率、常用型号、应用、检测、操作规程及发展历程,三极管,检测,工作原理,什么是高压接触器,高压接触器的组成
什么是高压接触器,高压接触器的组成、特点、原理、分类、常见故障及预防措施,高压,分类,闭合,用于,操作,损坏,AD694ARZ高压接触器是什么是射流继电器,射流继电器的基本
什么是射流继电器,射流继电器的基本结构、技术参数、工作原理、负载分类、如何选用、操作规程及发展历程,继电器,工作原理,分类,负什么是互感器,互感器的组成、特点、
什么是互感器,互感器的组成、特点、原理、分类、操作规程及发展趋势,发展趋势,分类,输入,计量,用于,信号,AD574AKD互感器是一种用于什么是NFC控制器,NFC控制器的组成、
什么是NFC控制器,NFC控制器的组成、特点、原理、分类、常见故障及预防措施,控制器,分类,模式,移动支付,数据,信号,NFC(Near Field Com位移传感器结构类型及工作原理与应
位移传感器结构类型及工作原理与应用,工作原理,类型,结构,位移传感器,常见,效应,FDV302P位移传感器是一种用于测量物体位移或位置的重庆东微电子推出高性能抗射频干扰
重庆东微电子推出高性能抗射频干扰MEMS硅麦放大器芯片,芯片,推出,算法,抑制,音频,信号,重庆东微电子有限公司最近推出了一款高性能射频连接器使用技巧与注意事项
射频连接器使用技巧与注意事项,连接器,选择,频率,类型,连接,传输,射频连接器是一种用于连接射频电路的电子元件,常用于无线通信系统