一:Arduino安装ESP8266

https://www.arduino.cn/thread-76029-1-1.html(内容截图如下:最简单方法)

选用NodeMCU .0即可

二:简单测试

void setup() {
// put your setup code here, to run once:
pinMode(LED_BUILTIN,OUTPUT); //测试灯
} void loop() {
// put your main code here, to run repeatedly:
digitalWrite(LED_BUILTIN,LOW);
delay();
digitalWrite(LED_BUILTIN,HIGH);
delay();
}
LED_BUILTIN中builtin是内建意思,为内建LED灯,可直接用于测试

三:引脚对应

引脚编号 对应数字
D0 16
D1 5
D2 4
D3 0
D4 2
D5 14
D6 12
D7 13
D8 15
D9 3
D10 1

四:简单使用案例:无线控制LED开关

#include <ESP8266WiFi.h>  //引入模块

#ifndef STASSID
#define STASSID "Tenda_064E38"
#define STAPSK "YM123456789"
#endif const char* ssid = STASSID;
const char* password = STAPSK; // Create an instance of the server
// specify the port to listen on as an argument
WiFiServer server(80); //开启板子的80端口 void setup() {
//https://blog.csdn.net/rong81590509/article/details/77010216
//在波特率为9600~38400之间,波特率的增长倍数与传输速率的增长倍数基本相同,但是在波特率大于192000以上时,传输速率基本没有任何提高。
//从115200开始实际与理论相差较大 11.25kb/s
//不要9600,因为9600下速率太慢0.9kb/s
Serial.begin(115200); //开启电脑的序列埠,设置为115200
// 测试D4接口
pinMode(, OUTPUT);
digitalWrite(, ); //设置为低电压 //告诉电脑连接到那个wifi了
Serial.println();
Serial.println();
Serial.print(F("Connecting to "));
Serial.println(ssid); //开始连接
WiFi.mode(WIFI_STA);
//WIFI模块的STA模式和AP模式有什么区别:AP是接入点,可以让用户接入。STA--Station无线终端,不接受无线接入,可以连接到无线AP,无线网卡工作在STA下
WiFi.begin(ssid, password); //开启WIFI //若是没有连接上:则一直打印....
while (WiFi.status() != WL_CONNECTED) {
delay();
Serial.print(F("."));
} //打印连线成功
Serial.println();
Serial.println(F("WiFi connected")); //开启伺服器
server.begin();
Serial.println(F("Server started")); //告诉电脑自己的IP
Serial.println(WiFi.localIP());
} void loop() {
//每次循环进入:都需要确认本板子是否有效(是否连上AP),成功则返回客户端连接自己的句柄
WiFiClient client = server.available();
if (!client) {
return;
} //成功就打印成功
Serial.println(F("new client"));
//若是客户端一直连接没有信息传入,则等待 //设置客户端连接超时时间。若在指定时间连接不上的为超时
client.setTimeout(); // default is 1000
//看客户端是否发送信息,不然一直等待
while(!client.available())
{
delay(1);
} //读取第一行\r为换行符--->为请求
String req = client.readStringUntil('\r'
);
Serial.println(F("request: "));
Serial.println(req);
//client.flush(); //刷新流 // Match the request
int val;
if (req.indexOf(F("/gpio/0")) != -) { //若是匹配到/gpio/0
val = ; //关闭
} else if (req.indexOf(F("/gpio/1")) != -) { //若是匹配到/gpio/1
val = ; //打开
} else {
Serial.println(F("invalid request"));
val = digitalRead(); //若是无用,则读取当前状态不变
} //修改状态
digitalWrite(, val); //向客户端句柄写入数据
client.print(F("HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n\r\n<!DOCTYPE HTML>\r\n<html>\r\nGPIO is now "));
client.print((val) ? F("high") : F("low"));
client.print(F("<br><br>Click <a href='http://"));
client.print(WiFi.localIP());
client.print(F("/gpio/1'>here</a> to switch LED GPIO on, or <a href='http://"));
client.print(WiFi.localIP());
client.print(F("/gpio/0'>here</a> to switch LED GPIO off.</html>")); //客户端断开连接(对象释放了)
Serial.println(F("Disconnecting from client"));
}
本程序为单进程,不支持同步处理连接,易出现客户端死等。待改进

Arduino---ESP8266 WIFI模块的更多相关文章

  1. ARDUINO MEGA2560 经过ESP8266 WIFI模块上传温湿度数据到 OneNet 服务器

    简述 原来写了一个C++的wifi库但是发现用c++ arduino这小身板有点扛不住,代码比较大,使用String类型数据处理速度慢,而且很容易无缘无故跑飞.而且封装成库后使用还需要修改arduin ...

  2. 用ESP8266 WIFI模块连接服务器,并实现与服务器相互通讯

    最近在做一个智能锁的项目,该项目要求实现在任何地方(当然是要有网络的)可以在手机上用APP开锁.而我负责的部分主要是实现底层与服务器连接,并且要能相互通讯.考虑了很多问题,最终选择了用ESP8266 ...

  3. ESP8266 wifi 模块配置,Wechat+APP控制实现

    首先刷入安信可的AiCloud 2.0 SDK文件,AiCloud 2.0具体信息参见AiCloud 1.0 和AiCloud 2.0对比 APP见如下二维码下载. 1.安信可AiCloud 2.0 ...

  4. 【stm32】基于hal库使用野火指南者esp8266 WIFI模块进行TCP传输

    UART.c #include "stm32f1xx_it.h" #include "LED.h" #include "UART.h" #i ...

  5. ESP8266串口模块的基本使用【转】

    本文转载自:http://www.shaoguoji.cn/2017/01/15/ESP8266-usage/ ESP8266是一款超低功耗的UART-WiFi 透传模块,拥有业内极富竞争力的封装尺寸 ...

  6. Arduino 基于 ESP8266 配置WIFI模块

    Arduino 基于 ESP8266 配置WIFI模块 使用ESP8266作为服务器,使用浏览器访问该服务器,从而控制LED灯 选择 [文件]->[示例]->[ESP8266WIFI]-& ...

  7. 中国移动OnetNet云平台 使用WIFI模块ESP8266 TCP非透传模式传输数据流步骤

    测试使用工具: WIFI模块型号:ESP8266 https://item.taobao.com/item.htm?spm=a1z10.1-c.w137712-175513579.2.btbD9X&a ...

  8. 中国移动OnetNet云平台 使用WIFI模块ESP8266 TCP透传模式传输数据流步骤

    测试使用工具: WIFI模块型号:ESP8266 https://item.taobao.com/item.htm?spm=a1z10.1-c.w137712-175513579.2.btbD9X&a ...

  9. Beaglebone Black– 智能家居控制系统 LAS - 刷 WiFi 模块 ESP8266 Firmware 和 ESP8266 直接收发 GPIO 信号

    用 Windows 来刷 ESP8266 固件有很多中文教程,来试试直接用 BBB 刷吧.目标是 NodeMCU,ESP-01 可用,就是我买的那个. 接线方式在上一篇.当 echo ‘BB-UART ...

  10. 解析-ESP01模块开发Arduino物联网wifi开关模块

    本文将解析<完美图解物联网Iot实操 ESP8266>中 第五章 P177页 动手做的代码2(使用SPIFFS文件系统的代码) 首先我们先动手使用Arduino IDE编译并且上传代码,上 ...

随机推荐

  1. es6 class extends

    Class和普通构造函数有何区别   JS构造函数 function MathHandle(x, y){ this.x = x; this.y = y; } MathHandle.prototype. ...

  2. G1垃圾收集器官方文档透彻解读【官方解读】

    在前几次中已经对G1的理论进行了一个比较详细的了解了,对于G1垃圾收集器最权威的解读肯定得上官网,当咱们将官网的理解透了,那基本上网上对于G1的说明其实最终都是来自于官网,所以接下来会详细来解读Ora ...

  3. 使用docker简单启动springboot项目

    1.搭建docker环境 需要linux系统必须是centOS7以上 执行一下命令: yum install epel-release –y yum clean all yum list 2.安装 y ...

  4. 关于LinkedList for OpenJDK

    概述      LinkedList采用底层采用双向链表结构,与ArrayList的数组结构不一样.LinkedList因数据结构不一样,不需要申请连续内存,可以利用碎片内存.元素保存数据内容外还需要 ...

  5. 如何下载oracle jdk|oracle jdk下载慢,要登录等等问题

    wget -c --no-cookies --no-check-certificate --header "Cookie: oraclelicense=accept-securebackup ...

  6. centos 安装mysql5.7.18.tar.gz

    1.解压mysql.tar.gz tar -zxvf mysql--linux-glibc2.-x86_64.tar.gz  2.添加mysql用户组和mysql用户,命令如下: groupadd m ...

  7. HTML 004 属性

    HTML 属性 属性是 HTML 元素提供的附加信息. HTML 属性 HTML 元素可以设置属性 属性可以在元素中添加附加信息 属性一般描述于开始标签 属性总是以名称/值对的形式出现,比如:name ...

  8. 008_软件安装之_MATLAB2017B

    链接:https://pan.baidu.com/s/1haZPRu0-ks8kWBFDHuhNJw提取码:vo9e复制这段内容后打开百度网盘手机App,操作更方便哦

  9. HTML 文字剧中

    HTML 内想使文字剧中的办法  就是 text-align:center 剧中前效果图 剧中后效果图 代码:

  10. Mongodb 分片 手动维护chunk

    去年的笔记 For instance, if a chunk represents a single shard key value, then MongoDB cannot split the ch ...