Esp8266学习2. Node-mcu基于Arduino IDE2.0.3设置及基本操作
Posted 编程圈子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Esp8266学习2. Node-mcu基于Arduino IDE2.0.3设置及基本操作相关的知识,希望对你有一定的参考价值。
Esp8266学习2. Node-mcu基于Arduino IDE2.0.3设置及基本操作
一、准备工作
1. 下载Aruino IDE
这里使用 2.0.3 版本。
https://www.arduino.cc/en/Main/Software
下载后安装。
2. 准备Node-MCU开发板
二、设置
1. 填写开发板网址
点击 File-Preferences,到Additional boards manager URLs,填写:
https://arduino.esp8266.com/stable/package_esp8266com_index.json
点击OK。
2. 开发板设置
点击菜单 Tools-Board-Boards Manager
搜索ESP8266,点击Install。
3. 连接开发板
把开发板连接到电脑,
点击Tools-Port-选择对应的开发板端口。
点击Select Board:
选择NodeMUC 1.0开发板。
提示下载库时点击YES。
三、测试点亮LED程序
1. 加载示例程序
点击File-Examples-01.Basics-Blink,加载程序如下:
/*
Blink
Turns an LED on for one second, then off for one second, repeatedly.
Most Arduinos have an on-board LED you can control. On the UNO, MEGA and ZERO
it is attached to digital pin 13, on MKR1000 on pin 6. LED_BUILTIN is set to
the correct LED pin independent of which board is used.
If you want to know what pin the on-board LED is connected to on your Arduino
model, check the Technical Specs of your board at:
https://www.arduino.cc/en/Main/Products
modified 8 May 2014
by Scott Fitzgerald
modified 2 Sep 2016
by Arturo Guadalupi
modified 8 Sep 2016
by Colby Newman
This example code is in the public domain.
https://www.arduino.cc/en/Tutorial/BuiltInExamples/Blink
*/
// the setup function runs once when you press reset or power the board
void setup()
// initialize digital pin LED_BUILTIN as an output.
pinMode(LED_BUILTIN, OUTPUT);
// the loop function runs over and over again forever
void loop()
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
2. 编译运行
点击如下菜单 :
第一个按钮是编译,第二个按钮烧写。烧写完成控制台提示:
烧写后可以看到开发板的LED灯在闪烁。
四、一些基本网络操作
1. 连接到热点
引用库 <ESP8266Wifi.h>
代码:
#include <ESP8266WiFi.h>
#ifndef STASSID
#define STASSID "你的WIFI账号"
#define STAPSK "你的WIFI密码"
#endif
// SSID的账号与密码赋值
const char* ssid = STASSID;
const char* password = STAPSK;
// 必须指定WIFI工作模式
WiFi.mode(WIFI_STA);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED)
delay(500);
Serial.print(".");
Serial.println("");
Serial.println("WiFi connected");
Serial.println("Get IP address: ");
// 获取本地IP地址
Serial.println(WiFi.localIP());
2. 使用WiFiClient
- WiFiClient client : 初始化类
- connect(host, port) : 创建连接
- client.readStringUntil(‘\\r’) : 读取一行
- client.read() : 从缓冲区读取数据
- client.connected() : 连接状态
- client.println(“”) :发送数据
- client.available() :缓冲区是否有数据
- client.stop() : 关闭连接
3. 创建http请求
使用WiFiClient类用来管理TCP连接。
// 使用 WiFiClient 类创建TCP连接
WiFiClient client;
if (!client.connect(host, port))
Serial.println("connection failed");
delay(5000);
return;
// 发送数据给服务器
Serial.println("sending data to server");
if (client.connected()) client.println("hello from ESP8266");
// 定义接收的超时时间
unsigned long timeout = millis();
while (client.available() == 0)
if (millis() - timeout > 5000)
Serial.println(">>> Client Timeout !");
client.stop();
delay(60000);
return;
// 把收到的数据打印出来
Serial.println("receiving from remote server");
// not testing 'client.connected()' since we do not need to send data here
while (client.available())
char ch = static_cast<char>(client.read());
Serial.print(ch);
// 关闭连接
Serial.println();
Serial.println("closing connection");
client.stop();
以上是关于Esp8266学习2. Node-mcu基于Arduino IDE2.0.3设置及基本操作的主要内容,如果未能解决你的问题,请参考以下文章
Esp8266学习2. Node-mcu基于Arduino IDE2.0.3设置及基本操作
Esp8266开发板 Node-mcu基于Arduino IDE 开发环境设置
Esp8266开发板 Node-mcu基于Arduino IDE 开发环境设置
Esp8266学习4. 基于Arduino的PWM与红外信号处理