硬件准备:200欧电阻,LED以及NodeMCU

虽然模块仍然使用nodemcu,但是使用Arduino开发。 不再使用Lua及其固件!

arduino IDE 直接下载程序进ESP8266,相当于下载常说的固件,所以连接方式为烧写模块:GPIO0拉低;使用nodemcu就非常方便电路都连接好,直接下载即可!

6的很!!!

前提环境的配置,可参考这篇入门博客ESP8266 core for Arduino

电路连接图

#include <ESP8266WiFi.h>
#define ledPin 4                          // 定义ledPin连接到GPIO4
const char* ssid     = "XXXXXX";         // XXXXXX -- 使用时请修改为当前你的 wifi ssid
const char* password = "XXXXXX";     // XXXXXX -- 使用时请修改为当前你的 wifi 密码
const char* host = "www.yeelink.net";
const char* APIKEY = "XXXXXX";    //API KEY
int deviceId = XXXXX;
int sensorId = XXXXX;WiFiClient client;
const int tcpPort = 80;
char data[512] ;
int x = 0;
int dat = 0;void setup() {WiFi.mode(WIFI_AP_STA);                 //set work mode:  WIFI_AP /WIFI_STA /WIFI_AP_STASerial.begin(115200);pinMode(ledPin, OUTPUT);delay(10);// We start by connecting to a WiFi networkSerial.println("");Serial.print("Connecting to ");Serial.println(ssid);WiFi.begin(ssid, password);while (WiFi.status() != WL_CONNECTED) {delay(500);Serial.print(".");}Serial.println("");Serial.println("WiFi connected");Serial.print("IP address: ");Serial.println(WiFi.localIP());
}void loop() {delay(2000);if (!client.connect(host, tcpPort)) {Serial.println("connection failed");return;}// We now create a URI for the requestString url = "/v1.0/device/";url += String(deviceId);url += "/sensor/";url += String(sensorId);url += "/datapoints";// This will send the request to the serverclient.print(String("GET ") + url + " HTTP/1.1\r\n" +"Host: " + host + "\r\n" +
//               "Accept: */*\r\n"+ "U-ApiKey:" + APIKEY + "\r\n""Connection: close\r\n\r\n");unsigned long timeout = millis();while (client.available() == 0) {if (millis() - timeout > 2000) {Serial.println(">>> Client Timeout !");client.stop();return;}}// Read all the lines of the reply from server and print them to Serialwhile(client.available()){int e = client.read();if(e == '{'&&x == 0){x = 1;}else if(x == 1){data[dat] = e;
//      Serial.print(e);if(e == '}'){digitalWrite(ledPin,data[dat-1]-'0');Serial.print("button value :");Serial.print(data[dat-1]);Serial.print("\t");x = 0;dat = 0;break;}dat++;}}//  Serial.println();Serial.println("closing connection");
}//void colLED(char sta){
//    if (sta == '0') {
//      digitalWrite(ledPin, LOW);
//    }
//    if (sta == '1') {
//      digitalWrite(ledPin, HIGH);
//    }
//}

直接在程序中只修改相应的参数就行,如果未曾修改过,可参考这篇博文:http://blog.csdn.net/recclay/article/details/77891662

const char* ssid     = "XXXXXX";         // XXXXXX -- 使用时请修改为当前你的 wifi ssid
const char* password = "XXXXXX";     // XXXXXX -- 使用时请修改为当前你的 wifi 密码
const char* host = "www.yeelink.net";
const char* APIKEY = "XXXXXX";    //API KEY
int deviceId = XXXXX;
int sensorId = XXXXX;

根据实际情况修改即可,然后下载(上传)到nodeMCU里面!

可通过云端或者手机进行控制!

这时 ESP8266 WIFI 模块去读取云端 LED状态值并设置当前LED的状态。
串口输出:

波特率115200

完了之后,只要模块在下的程序的局域网内,然后你通过手机连的广域网就可以控制灯的亮灭了!

向上吧,骚年!!!

【ESP8266之Arduino开发】二、实战YeeLink平台远程控制小灯相关推荐

  1. 利用HFS软件一分钟搭建好ESP8266基于Arduino开发环境

    利用HFS一分钟搭建好ESP8266基于Arduino开发环境

  2. 为 Esp8266 配置 Arduino 开发环境并测试WiFi

    为 Esp8266 配置 Arduino 开发环境 date: 2020-04-16 lastmod: 2021-09-21 安装驱动 为了让电脑可以正确识别开发板,需要装设备驱动(免驱插上就会自动安 ...

  3. 图解Esp32/ESP8266进行组网开发所需了解的那些小概念

    图解Esp32/ESP8266进行组网开发所需了解的那些小概念 图解日程生活中常见网络操作背后的小概念 前情提要 过程中涉及的进行组网开发所需的小概念 漫画展示 预告:一个基于ESP32和ESP826 ...

  4. STM32LL库系列教程【二】——点亮LED小灯

    开发板:秉火-霸道V1 芯片:STM32F103ZET6 GPIO: PB0 STM32LL库系列教程--LL库工程配置流程 STM32LL库系列教程[一]--安装CubeMx软件 STM32LL库系 ...

  5. 查看gpio状态_基于Arduino开发,借助blinker平台,让NodeMCU实现8路继电器APP端状态监视和控制...

    基于Arduino开发,借助blinker物联网平台,让NodeMCU实现8路继电器APP端状态监视和控制 先上开发板功能图: 本文利用了NodeMCU上的D0-D3,D5-D9,总共 8个 GPIO ...

  6. 利用Arduino开发板制作RGB全彩LED灯

    制作所需组件 RGB LED灯 1 个 220欧电阻 3 个 Arduino开发板 1 块 面包 1 块 跳线 4 根 电路原理图 电路图搭建过程 将RGB LED灯接入面包板 将3个电阻的一端引脚分 ...

  7. ESP32/ESP8266安装arduino开发板失败的方法(附合宙esp32用blinker固件连接小爱同学提示“要操作的设备好像出问题了等一会再试吧”的解决方法

    如果要挂梯子连GitHub的链接下就太麻烦了 我们直接用中文论坛老哥传好的包 esp32 https://www.arduino.cn/thread-81194-1-1.html esp8266 如果 ...

  8. NB-IOT专栏(QS-100模块二次开发)-onenet云平台+微信小程序实现下行数据控制设备开关

    前言 最近公司老总买了NB-IOT的模块,老总考虑到STM32芯片的价格涨的很快,而我们的内容做的不是很复杂,再加上支持一下本地企业,QS-100模块到价格超级实惠,决定使用QS-100模块作为通信模 ...

  9. 微信小程序+云开发项目实战:商品类小程序(化妆品门店)

    化妆品门店 目录 云开发简介 页面之间导图 登陆页面开发 新建集合(表) 用户注册 购物车里购买商品 确认支付 判断支付密码 云函数修改数据 update_goods delete_carts 汇总 ...

最新文章

  1. linux命令grpck,不可不知的的grpck命令【每日一个知识点第184期-Linux】
  2. delphi Tpagecontrol 动态增加页面
  3. STL 之replace,replace_if,replace_copy,replace_copy_if
  4. ViewState提交后丢失,竟然是OnInit搞的鬼
  5. 11月1日至11日 全国处理快件47.76亿件
  6. 实验题目用正交多项式做小二乘曲线拟合
  7. 全自动与半自动手表的区别_半自动和全自动的区别在哪里?
  8. T61 拆机4短报警 续
  9. 语料库mysql_国内语料库建设一览表
  10. 机器学习笔记 - 使用Face recognition、OpenCV、Python进行人脸识别
  11. c语言flag跳出循环,四种方法跳出多层循环(return goto flag try)
  12. 卸载360天擎企业版需要密码
  13. SQL中的交叉连接-cross join
  14. 探访北大最AI的食堂!刷脸打饭,机器认识200多道菜
  15. Unity 用于控制摄像机的旋转、远近
  16. 使用cmd命令远程重启服务器
  17. POI删除Excel中数据有效性
  18. 在iOS应用中使用字体图标及制作字体库
  19. 2015年工作中遇到的问题:71-80,Tomcat-Redis-浮点数-HTTPS
  20. 【英语-基础词根词缀】

热门文章

  1. excel、kml相互转换升级日志
  2. 中国工程院院士王国法:想实现煤炭完全无人化开采
  3. python的setup如何安装_python的setup如何安装
  4. 通信系统原理[郭宇春]——数字基带传输——课后习题答案
  5. 关押罪犯 并查集~~~
  6. fedora Linux 配置阿里云开源镜像站
  7. linux下的云盘软件下载,360安全云盘linux版下载
  8. E生保长期医疗险详细解读
  9. 如果被亚马逊AWS扣费,应该怎么办啊?(亚马逊AWS服务还是很棒的)
  10. linux termios 之 VMIN VTIME