打印

【零知ESP8266教程】快速入门10-使用PWM进行调光

[复制链接]
364|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
roc2two|  楼主 | 2019-10-16 15:38 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

前面的分享热身完毕,接下来,我们要进入更专业电子技术的深入哦!

PWM科普:PWM,英文名Pulse Width Modulation,是脉冲宽度调制缩写,它是通过对一系列脉冲的宽度进行调制,等效出所需要的波形(包含形状以及幅值),对模拟信号电平进行数字编码。

PWM在很多场景下都能得到应用,比如调光、电机调速、音频等。在这里我们使用PWM对LED进行亮度调节,下面我们一起一步步动手制作吧。

一、工具原料
电脑,windows系统
零知ESP8266开发板
micro-usb线
LED灯一个
220Ω 电阻1个
电位计一个
面包板一个+若干跳线

二、硬件连接



三、方法步骤
1、打开零知实验室软件开发工具,然后新建项目,输入以下代码:

/**
*    文件: PWM调光测试.ino      by 零知实验室(www.lingzhilab.com)
*    -- 零知开源,让电子制作变得更简单! --
*    时间: 2018/06/26 09:55
*    说明: 使用电位器来调节LED灯的亮度
**/
  
int led        = D1;//led连接到一个具有PWM引脚功能的脚上,这里连接到具有PWM功能的D1脚
int port = A0;//连接电位器的引脚,测量模拟输入
  
int value = 0;//读取到的模拟输入值
  
// the setup routine runs once when you press reset:
void setup() {
    // put your setup code here, to run once:
        pinMode(led, OUTPUT);
        Serial.begin(9600);
}
  
// the loop routine runs over and over again forever:
void loop() {
    // put your main code here, to run repeatedly:
        value = analogRead(port);
        Serial.println(value);
        analogWrite(led, value);
        delay(100);//延时一会儿
}

2、按照之前的方式先【验证】,然后【上传】到开发板中。

四、成果展示
上面步骤成功完成后,我们就可以看到预期的结果了,在我们调节电位计的时候,LED灯的亮度随之变化。

效果视频:点我查看


使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

75

主题

85

帖子

1

粉丝