ESP8266 WIFI ARDUINO单芯片 APP/微信远程控制 设备源码及说明
/*
协议:222
ESP8266 WIFI模块,实现远程控制,带两路继电器,上传传感器信息是当前控制信息,只需要最小模块能运行,程序就能运行,很方便。
不需要额外的单片机用AT模式,此方法最具性价比,开发简单
ESP8266 Fuhome.ino:
by:wxws
arduino直接编译 8266
https://github.com/esp8266/Arduino
ARDUINO IDE ESP8266专用版本下载1.6.5下载,单芯片编程很方便
http://www.fuhome.net/bbs/forum.php?mod=viewthread&tid=2180
采用Fuhome协议:三条指令就可以实现远程控制很方便
http://www.fuhome.net/api/agree/udp/
服务器IP:115.28.93.201(以fuhome.net为准,一般不会变,除非机房迁移,也可以自己写DNS获取)
udp端口:7001
控制APP下载地址:
未来之家-小米应用商店 http://app.mi.com/details?id=com.mobile.fuhome.app
该APP自带配置smartconfig功能,保持模块STA(客户端)工作方式即可,配置wifi时候只能让一个模块处于上电状态哦
*/
Fuhome远程控制终端源代码stm32+w5500+dht12温湿度
fuhome最新作品,手机微信远程控制单片机 继电器w5500+stm32+dht12温湿度传感器,之前用的是ENC28J60做的开源单片机联网协议栈FuIP。最近用的w5500 网络芯片+stm32F103 MCU 进行控制设计,一经连接路由器可自动获取/固定 IP,同时自动连接 Fuhome 未来之家实验室服务器。进而可以使用 Fuhome 提供的手机 android APP, Fuhome 设备控制页面,或者
关注微信公众号,进行控制设备自带继电器、查看温湿度传感器的测量值。
本终端 PCB 原理图+源码开源,以方便大家进行扩展和完善
1、网页控制例子,设备地址是:
深圳电饭锅,快来控制吧! 未来之家,让科技融入生活 fuhome.net http://www.fuhome.net/home/?id=9
FuIP2.3 未来之家实验室 开源单片机专用TCP/IP协议栈,自动获取IP
本程序仅供学习参考,未经作者允许,不得用于任何商业用途
FuIP专为单片机而定制的TCP/IP协议栈,适用于任何8,16,32位单片机
技术论坛:www.fuhome.net/bbs/
FuIP可用于,客户端,服务端,亦可接入fuhome.net 平台进行远程控制
版本:v2.3 2015年1月12日
龙剑奋斗
定期更新,敬请关注——开放,交流,深入,进步
Copyright fuhome.net 未来之家 实验室,让科技融入生活
FuIP v2.2 专为单片机联网而定制的TCP/IP协议栈,任何MCU均可移植
/********************************************************************/
本程序仅供学习参考,未经作者允许,不得用于任何商业用途
FuIP专为单片机而定制的TCP/IP协议栈,适用于任何8,16,32位单片机
技术论坛:www.fuhome.net/bbs/
FuIP可用于,客户端,服务端,亦可接入fuhome.net 平台进行远程控制
版本:v2.2 2014年12月5日
龙剑奋斗
定期更新,敬请关注——开放,交流,深入,进步
Copyright fuhome.net 未来之家 实验室,让科技融入生活
/********************************************************************/
键人是从51学习过来的,充分考虑了8位 16位 32位单片机平台特性,采用最易移植写法,因此特别适合任何有单片机基础的网友轻松控制家用电器等,其他扩展fuhome.net 平台会逐步完善。
V1.2版本支持与特性:
1,支持ARP请求、应答(获取目的IP的MAC)
2,支持ICMP_Ping请求,应答(ping命令)
3,支持TCP主动连接,断开,被动连接,断开,数据发送
4,支持UDP发送,接收数据
V1.3 改写了命令识别写法,使用更加简单,效率提高了。(网友yht7891984提出 )
v2.0 更新提示
1、由于单片机RAM完全够用,为了用来方便接入互联网,接收缓冲不再与发送缓冲公用
2、修复TCP连接过程的一些问题,更加兼容不同主机的数据格式。
3、增加了访问外网主机的功能,完善了TCP连接协议,这一点是重大改变。
4、命令识别,发送采用特殊函数,提升了执行效率。
(本demo直接下载到单片机,默认访问百度首页,可以从串口看到数据。
v2.1 更新日志
1、修复了ARP回应bug(网友林海雪原提出)
2、对于TCP/UDP数据不再限制于偶数长度了,奇数偶数均可。
v2.2 更新日志
1、修复了TCP发送检验bug,数据传输bug
2、结合实用,及网友建议,特此做了调整。TCP仅支持被动连接,若需要单片机主动连接(见2.1版本可以访问百度网页)
3、增加了web服务功能,可以实现用网页发送消息给单片机
4、UDP仍然支持主动,被动模式。
5、合并发送接收缓冲区,统一DATA[ ]数组。默认长度为255字节。
PS.利用fuhome.net网站平台,互联网(电脑,手机)控制单片机,详情fuhome.net/bbs/演示视频教程)
灰常简单,目前实现了远程控制(手机APP和web网页控制,并且带返回信息),传感器数据上传显示,众多爱好者一起在努力开发更多好玩的有趣的扩展
FuIP v2.1 专为单片机联网而定制的TCP/IP协议栈
/********************************************************************/
本程序仅供学习参考,未经作者允许,不得用于任何商业用途
FuIP专为单片机而定制的TCP/IP协议栈,适用于任何8,16,32位单片机
技术论坛:www.fuhome.net/bbs/
FuIP可用于,客户端,服务端,亦可接入fuhome.net 平台进行远程控制
版本:v2.1 2014年10月15日
龙剑奋斗
定期更新,敬请关注——开放,交流,深入,进步
Copyright fuhome.net 未来之家 实验室,让科技融入生活
/********************************************************************/
键人是从51学习过来的,充分考虑了8位 16位 32位单片机平台特性,采用最易移植写法,因此特别适合任何有单片机基础的网友轻松控制家用电器等,其他扩展fuhome.net 平台会逐步完善。
V1.2版本支持与特性:
1,支持ARP请求、应答(获取目的IP的MAC)
2,支持ICMP_Ping请求,应答(ping命令)
3,支持TCP主动连接,断开,被动连接,断开,数据发送
4,支持UDP发送,接收数据
V1.3 改写了命令识别写法,使用更加简单,效率提高了。(网友yht7891984提出 )
v2.0 更新提示
1、由于单片机RAM完全够用,为了用来方便接入互联网,接收缓冲不再与发送缓冲公用
2、修复TCP连接过程的一些问题,更加兼容不同主机的数据格式。
3、增加了访问外网主机的功能,完善了TCP连接协议,这一点是重大改变。
4、命令识别,发送采用特殊函数,提升了执行效率。
(本demo直接下载到单片机,默认访问百度首页,可以从串口看到数据。
v2.1 更新日志
1、修复了ARP回应bug(网友林海雪原提出)
2、对于TCP/UDP数据不再限制于偶数长度了,奇数偶数均可。
PS.利用fuhome.net网站平台,互联网(电脑,手机)控制单片机,详情fuhome.net/bbs/演示视频教程)
灰常简单,目前实现了远程控制(手机APP和web网页控制,并且带返回信息),传感器数据上传显示,众多爱好者一起在努力开发更多好玩的有趣的扩展
IP采用固定IP,
本机IP:192.168.1.150
默认网关是家庭常用的:192.168.1.1
如果家里的路由器网关是其他如:192.168.0.1,请自行修改网关IP、本机IP
内存分配机制:
以太网首部: EN_Head[14]
IP首部: IP_Head[20]
UDP伪首部: UDP_False[12]
UDP首部: UDP_Head[8]
TCP伪首部: TCP_False[12]
TCP首部: TCP_Head[20]
ARP数据: ARP_Data[28]
ICMP数据: ICMP[40]
发送数据缓冲,DATA数据: DATA[200](键人默认长度200,可改)
接收包缓冲(包含ETHERNET头,IP头,TCP/UDP首部)
Re_DATA[200](默认长度200,可改,但是为了接收,长度至少TCP>=54,UDP>=42)
(本demo占用RAM大约570Byte如果RAM有限可以合并一个使用,减少到360Byte左右,还是要看缓冲你的设定值 因为收发不同时发生)
FuIP 2.0协议栈,专为各种单片机的TCP/IP协议,接入互联网
/********************************************************************/
本程序仅供学习参考,未经作者允许,不得用于任何商业用途
FuIP专为单片机而定制的TCP/IP协议栈,适用于任何8,16,32位单片机
技术论坛:www.fuhome.net/bbs/
FuIP可用于,客户端,服务端,亦可接入fuhome.net 平台进行远程控制
版本:v2.0 2014年6月29日
龙剑奋斗
定期更新,敬请关注——开放,交流,深入,进步
Copyright fuhome.net 未来之家 实验室,让科技融入生活
/********************************************************************/
键人是从51学习过来的,充分考虑了8位 16位 32位单片机平台特性,采用最易移植写法,因此特别适合任何有单片机基础的网友轻松控制家用电器等,其他扩展fuhome.net 平台会逐步完善。
V1.2版本支持与特性:
1,支持ARP请求、应答(获取目的IP的MAC)
2,支持ICMP_Ping请求,应答(ping命令)
3,支持TCP主动连接,断开,被动连接,断开,数据发送
4,支持UDP发送,接收数据
V1.3 改写了命令识别写法,使用更加简单,效率提高了。
v2.0 更新提示
1、由于单片机RAM完全够用,为了用来方便接入互联网,接收缓冲不再与发送缓冲公用
2、修复TCP连接过程的一些问题,更加兼容不同主机的数据格式。
3、增加了访问外网主机的功能,完善了TCP连接协议,这一点是重大改变。
4、命令识别,发送采用特殊函数,提升了执行效率。
(本demo直接下载到单片机,默认访问百度首页,可以从串口看到数据。
PS:已经花了三天时间,实现了利用fuhome网站平台,互联网(电脑,手机)控制单片机,详情发布演示视频)
IP采用固定IP,
本机IP:192.168.1.150
子网掩码:255.255.255.0
默认网关是家庭常用的:192.168.1.1
如果家里的路由器网关是其他如:192.168.0.1,请自行修改网关IP、本机IP,子网掩码一般不改。
内存分配机制:
以太网首部: EN_Head[14]
IP首部: IP_Head[20]
UDP伪首部: UDP_False[12]
UDP首部: UDP_Head[8]
TCP伪首部: TCP_False[12]
TCP首部: TCP_Head[20]
ARP数据: ARP_Data[28]
ICMP数据: ICMP[40]
发送数据缓冲,DATA数据: DATA[200](键人默认长度200,可改)注:长度为偶数
接收包缓冲(包含ETHERNET头,IP头,TCP/UDP首部)
Re_DATA数据: Re_DATA[200](键人默认长度200,可改,接收TCP>=54,UDP>=42)注:长度为偶数
FuIP协议栈,用于单片机的TCP/IP协议接入网络
v1.2 占用416 Byte左右(接收缓存150) ROM不到8K 如果大家要节省,可以省去主动ping tcp udp arp 看你们的需要,不过也没啥,不需要研究就不用管,其实裁剪之后一般的STC89C52都可以正常运行。关于下载
键人(现在人都用键盘不用笔)是从51学习过来的,充分考虑了8位 16位 32位单片机平台特性,采用最易移植写法,因此特别适合任何有单片机基础的网友轻松控制家用电器等,其他扩展fuhome.net 平台会逐步完善。
V1.2版本支持与特性:
1,支持ARP请求、应答(获取目的IP的MAC)
2,支持ICMP_Ping请求,应答(ping命令)
3,支持TCP主动连接,断开,被动连接,断开,数据发送
4,支持UDP发送,接收数据
IP采用固定IP,
本机IP:192.168.1.150
子网掩码:255.255.255.0
默认网关是家庭常用的:192.168.1.1
如果家里的路由器网关是其他如:192.168.0.1,请自行修改网关IP、本机IP,子网掩码一般不改。