ESP8266开发之旅 WebServer篇② PWM Slider Web Server —— 控制LED亮度(PWM)

71 篇文章 3197 订阅 ¥19.90 ¥99.00
本文介绍了如何使用ESP8266(NodeMCU)建立一个Web Server,通过局域网内的手机浏览器展示一个滑动条(Slider),改变滑动条的值来调整LED的亮度。当滑动条移动时,它会发送HTTP GET请求到ESP8266,调整PWM占空比以改变LED亮度。要实现这一功能,需要安装ESPAsyncTCP和ESPAsyncWebServer库。
摘要由CSDN通过智能技术生成

授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力。希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石。。。

快速导航
单片机菜鸟的博客快速索引(快速找到你要的)

重点说一下,麻烦三连点赞,你的点赞是博主创作的前进动力

1、前言

建立一个独立的 ESP8266 Web Server 去控制LED亮度(PWM)。

这个 ESP8266(NodeMcu) Web Server会在手机上访问浏览器,并且是局域网有效

在这里插入图片描述
在这里插入图片描述

好的,以下是一个简单的网页控制esp8266亮度的程序示例: ```c++ #include <ESP8266WiFi.h> #include <WiFiClient.h> #include <ESP8266WebServer.h> #include <ESP8266mDNS.h> // WiFi信息 const char* ssid = "你的WiFi名称"; const char* password = "你的WiFi密码"; // 创建一个Web服务器 ESP8266WebServer server(80); // LED灯引脚 const int ledPin = 2; // 初始亮度为0 int brightness = 0; void setup() { // 初始化串口 Serial.begin(115200); // 初始化LED灯 pinMode(ledPin, OUTPUT); digitalWrite(ledPin, LOW); // 连接WiFi WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(1000); Serial.println("Connecting to WiFi..."); } Serial.println("Connected to WiFi"); // 开启MDNS if (MDNS.begin("esp8266")) { Serial.println("MDNS responder started"); } // 设置Web服务器路由 server.on("/", handleRoot); server.on("/slider", handleSlider); server.onNotFound(handleNotFound); // 启动Web服务器 server.begin(); Serial.println("Web server started"); } void loop() { // 处理Web服务器请求 server.handleClient(); // 更新LED亮度 analogWrite(ledPin, brightness); } // 处理根路由请求 void handleRoot() { server.send(200, "text/html", "<html><head><title>ESP8266 LED</title></head><body><h1>ESP8266 LED</h1><p><a href=\"/slider\">点此调整亮度</a></p></body></html>"); } // 处理滑条路由请求 void handleSlider() { String sliderValue = server.arg("value"); brightness = sliderValue.toInt(); server.send(200, "text/html", "<html><head><title>ESP8266 LED</title></head><body><h1>ESP8266 LED</h1><p><a href=\"/slider\">点此调整亮度</a></p><p>亮度:" + sliderValue + "</p></body></html>"); } // 处理未知路由请求 void handleNotFound() { server.send(404, "text/plain", "404: Not Found"); } ``` 在上面的示例中,我们使用了ESP8266WebServer库来创建一个Web服务器,然后设置了两个路由: 1. 根路由("/"),用于显示一个简单的HTML页面,包含一个指向滑条路由的链接; 2. 滑条路由("/slider"),用于处理滑条的值,并将其转换为亮度,然后将亮度值显示在HTML页面上。 要运行这个程序,你需要将WiFi名称和密码替换为你自己的,然后将LED灯连接到ESP8266的GPIO2引脚上,并将滑条连接到ESP8266的GPIO5引脚上。 注意:为了使MDNS正常工作,你需要打开你的路由器的mDNS功能(如果支持的话)或者在你的计算机上安装Bonjour服务(如果你使用的是Windows操作系统)。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

单片机菜鸟哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值