ESP8266 Node mcu WIFI无线控制入门_01无线远程控制LED

编程入门 行业动态 更新时间:2024-10-28 12:26:21

ESP8266 Node mcu WIFI无线控制入门方法

第一步: 使用Arduino uno 完成简单控制

1.安装Node mcu开发板编译器,步骤如下:

  1.     打开arduino IDE  ---> 文件--->首选项

    2.打开首选项,选择 附加开发板管理器网址, 添加第三方开发板管理器网址:

        添加如下网址,并点击确定.

http://arduino.esp8266/stable/package_esp8266com_index.json

3. Arduino IDE中,点击工具-->开发板-->开发板管理器

4.打开开发板管理器,搜索"esp8266",点击安装

5.将ESP8266插入电脑USB接口.

6. Arduino中选择工具-->开发板--->NodeMCU1.0

7. 选择ESP8266连接的串口端口,可以查看自己设备管理器中具体连接的串口端口号

8.编写测试代码

/*
  本实验让学生了解node mcu 这块板子拥有跟arduino 一模一样的操作方式
  先用程序测试点亮LED灯
  数字 13=D7 ;16=D0; 15=D8;14=D5;12=D6;4=D2;3=D9;2=D4;1=D10;0=D3;
*/


void setup() {

  pinMode(LED_BUILTIN,OUTPUT);     //LED_BUILTIN 板子自带测试LED灯, 可以换成其他引脚
  
}

void loop() {
  
  digitalWrite(LED_BUILTIN,LOW);
  delay(1000);
  digitalWrite(LED_BUILTIN,HIGH);
  delay(1000);

}

9.上传代码,简单测试ESP8266.

10. 这只是 简单测试ESP8266 MCU第一步.

第二步:  将ESP8266 MCU 连入WiFi 路由器, 远程控制引脚连接的LED灯.

(控制方式: 在WiFi同一网络内,使用电脑或者手机终端的浏览器,来控制ESP8266 MCU 引脚连接的LED灯)

1.Arduino IDE中编写如下代码:

/*
 *  本实验将教你如何将板子设定成HTTP服务器
 *  本服务器会依照接收到的信息去改变*引脚
 *  http://server_ip/gpio/0 会将脚位变成 低电压
 *  http://server_ip/gpio/1 会将脚位变成 高电压
 *  本服务器的ip会在序列号中显示
 */

#include<ESP8266WiFi.h>

const char* ssid = "******";    //这里输入你家的WiFi名称
const char* password = "******";   //这里输入你家的WiFi密码

WiFiServer server(80);  //开启此板子的port80

//#define GPIO2 2   

void setup() {
  Serial.begin(115200);  //开启电脑的串口号,速度设为115200
  delay(10);

  pinMode(2,OUTPUT);      //将引脚2设为输出,就是板子上面D4的脚位
  digitalWrite(2,0);      //先将这引脚设为低电压

  //接下来板子开始要连线到你家的路由器了
  Serial.println();  //打印空格
  Serial.println();  //打印空格
  Serial.println("Connecting to ");  //打印连接到你家
  Serial.println(ssid); 

  WiFi.begin(ssid,password);  //使用你家的WiFi和密码开始连接路由器

  while(WiFi.status() != WL_CONNECTED){   //这是个无限循环,还没连线成功时会一直跳出点点
    delay(500);
    Serial.print(".");
  }

  Serial.println("");// 连线成功之后会在这里,跳出连线成功
  Serial.println("WiFi connected");

  server.begin();  //服务器启动
  Serial.println("Server started");

  Serial.println(WiFi.localIP());  //列出此服务器被分配到的网络IP
}

void loop() {
  //确定是否连线中,不是的话就跳出去
    WiFiClient client = server.available();
  if(!client){
      return;
    }
//等待传到这个服务器的信息,一直等一直等
Serial.println("new client");
while(!client.available()){
    delay(1);
  }

// 收到传过来的信息之后,将收到的信息存入req
String req = client.readStringUntil('\r');
Serial.println(req);   // 打印收到的信息
client.flush();  


//开始比对收到的信息来决定作什么事
int val;
if (req.indexOf("/gpio/0") != -1)   //如果收到/gpio/0
  val = 0;
else if (req.indexOf("/gpio/1") != -1)   //如果收到/gpio/1
  val = 1;
else{
    Serial.println("invalid request");
    client.stop();
    return;
}

digitalWrite(2,val);   //依照收到的信息改变灯的亮暗

client.flush();


 // Prepare the response
  String s = "HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n\r\n<!DOCTYPE HTML>\r\n<html>\r\nGPIO is now ";
  s += (val)?"high":"low";
  s += "</html>\n";

  // Send the response to the client
  client.print(s);
  delay(1);
  Serial.println("Client disonnected");
}

2. 注意以上代码中需要更改WiFi路由器名称与密码

3.Arduino IDE 中点击上传代码.

4.Arduino IDE中,启动串口调试器 , 按esp8266板载重置按钮,

此时将在串口调试器显示,esp8266 作为服务器的ip地址.

 

5.测试代码,打开手机上浏览器. 网址栏输入 192.168.**.** /gpio/1 ,esp8266 D4引脚输出高电平, led点亮.

192.168.**.** /gpio/0 , esp8266 D4引脚输出低电平, led关闭.

 

 

 

 

 

 

 

 

更多推荐

ESP8266 Node mcu WIFI无线控制入门_01无线远程控制LED

本文发布于:2023-06-13 18:21:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1388259.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:远程控制   入门   mcu   Node   LED

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!