WebServerBlink 使用 Arduino Uno WiFi
组件和用品
| × | 1 |
关于这个项目
WebServerBlink
在这个演示示例中,展示了如何使用 Arduino UNO WiFi 来实现一个简单的 Web 服务器,以命令 LED 的开/关。
1.硬件
- Arduino UNO WiFi
- 领导
- 220Ω 电阻器
- 电线
- 面包板
2.电路
您可以在引脚 13 上使用集成的 L LED 或使用另一个,在这种情况下,将 LED 阳极(通常是较长的引脚)串联到 220Ω 电阻器并将其连接到电路板引脚 13。
将阴极连接到GND后,如图所示。
现在将电路板插入 PC 并上传下面的草图。
3.代码
上传以下代码并通过浏览器访问 http://
#include #include /*在你的浏览器上,你输入 http:///arduino/webserver/ 或 http://.local /arduino/webserver/http://www.arduino.org/learning/tutorials/webserverblink*/void setup() { pinMode(13,OUTPUT); Wifi.begin(); Wifi.println("WebServer 服务器启动"); }void loop() { while(Wifi.available()){ process(Wifi); } delay(50);}void process(WifiData client) { // 读取命令 String command =client.readStringUntil('/'); // 是“数字”命令吗? if (command =="webserver") { WebServer(client); } if (command =="digital") { digitalCommand(client); }}void WebServer(WifiData client) { client.println("HTTP/1.1 200 OK"); client.println("内容类型:文本/html");客户端打印(); client.println(""); client.println(" "); client.print(""); client.print("Clickpin13 ON
"); client.print("Clickpin13 关闭
"); client.print(""); client.println("");客户端打印(分隔符); // 结束通信非常重要!!! }void digitalCommand(WifiData client) { int pin, value; // 读取引脚编号 pin =client.parseInt(); // 如果下一个字符是“/”,则表示我们有一个 URL // 其值类似于:“/digital/13/1” if (client.read() =='/') { value =client. parseInt();数字写入(引脚,值); } // 发送反馈给客户端 client.println("Status:200 OK\n"); client.print(F("Pin D"));客户端打印(销); client.print(F(" 设置为 "));客户端打印(值);客户端打印(停产); //字符终止符}
4.输出
- 打开浏览器并输入:http://
/arduino/webserver/ 或 http:// .local/arduino/webserver/
- 单击“开”以点亮 LED 13:
- 点击 OFF 关闭 LED 13:
- 您也可以从 Web 面板命令 LED,如下图所示:
注意:
在浏览器上输入开发板的 IP 地址或主机名.local/,以便访问 Arduino UNO WiFi 网络面板。
代码
- 网络服务器
WebServerC/C++
#include#include /*在你的浏览器上,你输入 http:// /arduino/webserver/ 或 http:// .local/arduino/网络服务器/ http://www.arduino.org/learning/tutorials/webserverblink */void setup() { pinMode(13,OUTPUT); Wifi.begin(); Wifi.println("WebServer 服务器启动"); }void loop() { while(Wifi.available()){ process(Wifi); } delay(50);} void process(WifiData client) { // 读取命令 String command =client.readStringUntil('/'); // 是“数字”命令吗? if (command =="webserver") { WebServer(client); } if (command =="digital") { digitalCommand(client); }} void WebServer(WifiData client) { client.println("HTTP/1.1 200 OK"); client.println("内容类型:文本/html");客户端打印(); client.println(""); client.println(" "); client.print(""); client.print("Clickpin13 ON
"); client.print("Clickpin13 关闭
"); client.print(""); client.println("");客户端打印(分隔符); // 结束通信非常重要!!! } void digitalCommand(WifiData client) { int pin, value; // 读取引脚编号 pin =client.parseInt(); // 如果下一个字符是“/”,则表示我们有一个 URL // 其值类似于:“/digital/13/1” if (client.read() =='/') { value =client. parseInt();数字写入(引脚,值); } // 发送反馈给客户端 client.println("Status:200 OK\n"); client.print(F("Pin D"));客户端打印(销); client.print(F(" 设置为 "));客户端打印(值);客户端打印(停产); //字符终止符 }
示意图
制造工艺