文档章节

【wifi智能家居】ESP8266 WIFI模块和mini Rboard实现手机wifi控制

simpower
 simpower
发布于 2014/12/13 16:38
字数 970
阅读 5114
收藏 3

更新说明:由于固件升级,很多小伙伴们收到ESP8266模块后用我们的库调不通,在此诚挚道歉。发布此篇教程的时候使用的是旧版本固件,库文件设置的波特率是115200。如果调不通的话应该收到的是新版本,使用的波特率是9600。库文件我们已经在github上更新了https://github.com/itead/ITEADLIB-ESP8266  请知悉,谢谢!

上周终于写完ESP8266 wifi 模块的库了,测试OK!今天此开出源码和实例教程,希望能帮到大家!


主要配件:

 【wifi智能家居】ESP8266 <wbr>WIFI模块和mini <wbr>Rboard实现手机wifi控制

                                  关于Mini Rboard的简单介绍:

【wifi智能家居】ESP8266 <wbr>WIFI模块和mini <wbr>Rboard实现手机wifi控制

步骤:

1. 烧写程序

烧写程序之前,我们需要用到ESP8266库,下载地址为:

       https://github.com/itead/ITEADLIB-ESP8266

温馨提示: ESP8266 wifi库文件是基于arduino IDE 1.0.5版本编译的,如遇编译不过,请尝试其他版本。

下载后放到arduino IDE的libraries文件夹里面,打开库中的uartWIFI.h文件,因为我们的mini RBoard使用的是跟UNO一样的芯片,所以要在H文件里去掉定义UNO的注释,注释掉MEGA定义

#define UNO

//#define MEGA


然后把_DBG_RXPIN__DBG_TXPIN_引脚定义改为D9D10,作为软串口。

#define _DBG_RXPIN_ 9          //D9

#define _DBG_TXPIN_ 10        //D10

然后保存uartWIFI.h文件。


烧写代码:

插上FOCA,板子的类型选择“Arduino UNO,点击烧写程序。如下图:

 【wifi智能家居】ESP8266 <wbr>WIFI模块和mini <wbr>Rboard实现手机wifi控制

#define SSID       "Itead_1(Public)" //type your own SSID name

#define PASSWORD   "27955416" //type your own WIFI password

#include "uartWIFI.h"

#include "SoftwareSerial.h"

WIFI wifi;

extern int chlID; //client id(0-4)

void setup()

{

  pinMode(4,OUTPUT);

  pinMode(5,OUTPUT);

  pinMode(6,OUTPUT);

  pinMode(7,OUTPUT);

  wifi.begin();

  bool b = wifi.Initialize(STA, SSID, PASSWORD);

  if(!b)

  {

    DebugSerial.println("Init error");

  }

  delay(8000);  //make sure the module can have enough time to get an IP address 

  String ipstring  = wifi.showIP();

  DebugSerial.println(ipstring); //show the ip address of module

  

  delay(2000);

  wifi.confMux(1);

  delay(100);

  if(wifi.confServer(1,8080))

DebugSerial.println("Server is set up");

}

void loop()

{

  

  char buf[100];

  int iLen = wifi.ReceiveMessage(buf);

  if(iLen > 0)

  {

    //mini Rboard D4 pin is relay,mini Rboard URL:http://item.taobao.com/item.htm?spm=a1z10.3.w4002-2605688463.12.EMkeTJ&id=39334222369

    if (strcmp(buf, "CH0ON") == 0)

    {

      digitalWrite(4,HIGH);  

 DebugSerial.println("CH0ON");

    }

    if (strcmp(buf, "CH0OFF") == 0)

    {

      digitalWrite(4,LOW);

 DebugSerial.println("CH0OFF");

    }

   

  }

}

黏贴代码到arduino IDE中,在SSIDPASSWORD宏定义中修改成自己的路由器WIFI名称和密码。

#define SSID       "Itead_1(Public)"        //type your own SSID name

#define PASSWORD   "27955416"            //type your own WIFI password

编译,烧写,OK


接下来我们还需要用到foca来读取串口信息,查看wifi状态。

按照以下连接方式连接FOCAESP8266mini Rboard上。

 【wifi智能家居】ESP8266 <wbr>WIFI模块和mini <wbr>Rboard实现手机wifi控制

Mini Rboard的引脚定义图:

 【wifi智能家居】ESP8266 <wbr>WIFI模块和mini <wbr>Rboard实现手机wifi控制

ESP8266的引脚定义图:

【wifi智能家居】ESP8266 <wbr>WIFI模块和mini <wbr>Rboard实现手机wifi控制 

硬件实物图:

【wifi智能家居】ESP8266 <wbr>WIFI模块和mini <wbr>Rboard实现手机wifi控制

然后打开Serial监视器,按一下复位键,等待一段时间后,会看到串口显示它的ip地址:172.16.1.20,当然你也可以登陆路由器的管理后台查看到这个wifi模块的IP地址。

【wifi智能家居】ESP8266 <wbr>WIFI模块和mini <wbr>Rboard实现手机wifi控制

现在我们还需要下载一个软件来进行无线控制。

2. 下载UDP TCP Server app

打开手机的Google play,搜索UDP TCP Server,安装该软件。(不能翻墙和没有google账户和不能安装google play的小伙伴自行安装VPNgoogle play所需app

 【wifi智能家居】ESP8266 <wbr>WIFI模块和mini <wbr>Rboard实现手机wifi控制

打开该软件,点击右上角的settings,将Target IP设置为wifiIP地址,本文为172.16.1.12,以每次分配的实际IP为准。UPD/TCP选择TCPTarget Port设置为8080TCP connection behavior设置为“Initiate connectionand keep open”。

【wifi智能家居】ESP8266 <wbr>WIFI模块和mini <wbr>Rboard实现手机wifi控制 


【wifi智能家居】ESP8266 <wbr>WIFI模块和mini <wbr>Rboard实现手机wifi控制

 

然后返回上一级,点击Button Settings。设置buttons的数量为8个(适用于4通道的Rboard),分别在button的名字和命令上修改成:“CH0ON, “CH1ON, “CH2ON, “CH3ON, “CH0OFF,CH1OFF, “CH2OFF, “CH3OFF”。这分别代表设置对应继电器通道的开关状态。此次测试用的mini Rboard只需要用到“CH0ON”和“CH0OFF”这一个通道。

 【wifi智能家居】ESP8266 <wbr>WIFI模块和mini <wbr>Rboard实现手机wifi控制

返回主页面,我们可以看到按钮的名称已改变,点击对应的按钮后,会看到mini Rboard上对应的通道设置为按钮上的状态。

【wifi智能家居】ESP8266 <wbr>WIFI模块和mini <wbr>Rboard实现手机wifi控制

测试视频:

分享:    


本文转载自:http://blog.sina.com.cn/s/blog_ade378ae0102v2xz.html

simpower
粉丝 28
博文 669
码字总数 50544
作品 0
海淀
程序员
私信 提问
加载中

评论(1)

WiFi模块
WiFi模块
物联网解决方案,2.4G射频模块, ESP8266 ESP-12F ESP8285 ESP-F espduino开发板 ESP32开发板 智能彩灯WiFi调光控制模块 智能电动窗帘控制 智能电源WiFi控制 智能扫地机器人WiFi模块 智能WiFi插座 WiFi模块生产厂家电话/微信15986635722 刘松
【 ESP8266+arduino pro mini 】之+智能灯

【开源硬件】机智云智能硬件创新大赛 http://club.gizwits.com/thread-2646-1-1.html 作品说明及使用场景 智能灯泡作为一种门槛最低的智能家居设备,市场前景无疑是光明的。你可以使用手机控...

物联网小能手
2016/08/22
1K
1
智能家居WIFI模块开发

[背景] 智能家居应用场景,云端控制 [需求] 1、由WIFI模块向服务器发注册信息和心跳包 2、WIFI模块收到APP通过socket发的信息后,由WIFI模块解析信息,并控制WIFI模块的各IO口等。 3、控制协...

kyq001
2016/05/13
36
0
智能家居与SmartConfig技术

智能家居,所有的设备都是通过Wifi连接自己家里的局域网(至于这些设备没有界面操作,如何连接wifi?有一个比较流行的牛逼技术,叫SmartConfig)。SmartConfig又名快连。 第三方smart confi...

desaco
03/07
0
0
WIFI智能配网 - SmartConfig

要开始IoT项目的第一步是什么?当然不是硬件,而是硬件与硬件的连接!即使有各种各样的通信协议没有好的连接方式绝对不行。那外设上没有的屏幕,没有键盘怎末输入密码怎末选择网络?对,这就...

rayliang
2017/03/14
0
0
Esp8266学习之旅① 搭建开发环境,开始一个“hellow world”串口打印。

欢迎来到物联网智能家居顶量级别wifi模块Esp8266学习之旅。 本系列博客学习由非官方人员 半颗心脏 潜心所力所写,仅仅做个人技术交流分享,不做任何商业用途。如有不对之处,请留言,本人及时...

xh870189248
2017/09/14
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Android面试常客之Handler全解

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/fnhfire_7030/article/details/79518819 前言:又到了一年...

shzwork
31分钟前
4
0
position sticky 定位

本文转载于:专业的前端网站➫position sticky 定位 1、兼容性 https://caniuse.com/#search=sticky chrome、ios和firefox兼容性良好。 2、使用场景 sticky:粘性。粘性布局。 在屏幕范围内时...

前端老手
37分钟前
4
0
CentOS 7 yum 安装 PHP7.3 教程

参考:https://www.mf8.biz/centos-rhel-install-php7-3/ 1、首先安装 EPEL 源: yum install epel-release 安装 REMI 源: yum install http://rpms.remirepo.net/enterprise/remi-release......

dragon_tech
52分钟前
4
0
Linux物理网卡聚合及桥接

Linux内部实现的bridge可以把一台机器上的多张网卡桥接起来,从而把自己作为一台交换机。同时,LInux bridge还支持虚拟端口,即桥接的不一定都是物理网卡接口,还可以是虚拟接口。目前主要表...

xiangyunyan
53分钟前
4
0
一起来学Java8(一)——函数式编程

在这篇文章中,我们将了解到在Java8下如何进行函数式编程。 函数式编程 所谓的函数式编程就是把函数名字当做值进行传递,然后接收方拿到这个函数名进行调用。 首先来看下JavaScript如何进行函...

猿敲月下码
今天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部