编辑: AA003 | 2019-07-18 |
2 使用说明书
一、说明 FuIP 最新版本通用版是 2.1 包含 ARP/ICMP_Ping/TCP/UDP/ 自带例子是访问百度首页,并将获得的 html 源码串口发送出来 3.2 版 为接入 Fuhome 平台实现远程控制的专用版本.在3.1 版本基础上增 加了局域网控制功能,这样在外使用互联网,在家使用局域网均可控制哦. 需要修改的地方:
1、Fu_config.c Fu_config.h 以下是需要根据实际参数修改区域* U8 code FU_GateWay[4]={192,168,1,1};
//默认网关 IP(路由器) U8 code FU_LoaclIP[4]={192,168,1,150};
//本地 IP 地址 /* 心跳数据包 ,d 是设备 ID,m 是设备密码,均由 fuhome.net 个人中心设置所得*/ U8 code fu_update[57]={ "f=1&d=1287369152&m=1234567890&z=hello&from=sb->server" };
/* 上行回复数据包 d,m 同上,n 则是 fuhome.net 的用户名*/ U8 code fu_back[45]={ "f=b&d=1287369152&m=1234567890&n=lovelife&com=" };
由于本代码采用固定 IP 所以需要设置 如你家路由器网关 IP 是:192.168.0.1 则本地 IP 可以设置为 192.168.0.150 如果 IP 冲突,设置其他 192.168.0.1-192.168.0.255 一般家里路由器会自动给电脑,手机分配 IP 例TP 路由器分配 IP 段是从 100-200,不过一个家里就几个设备,所以
150 基本安全.其他特殊情况,请自 行设置. 心跳包、回应包内容涉及 id 、mm 、username 需要到 fuhome.net 注册. 添加设备以获得自己的对应信息.涉及数组长度超过请修改.
2、Fu_app.c 例如收到的数据如:f=a&d=1287369152&n=lovelife&com=open&from=server->sb //命令识别 //例如收到的数据如:f=a&d=1287369152&n=lovelife&com=open&from=server->sb //寻找 com 以下是可编辑区域 if (memcmp(p+5,"open",4) ==0) { led1=0;
led2=0;
memcpy(DATA,fu_back,45);
//复制数据到发送数组 DATA[45]='o';
DATA[46]='p';
DATA[47]='e';
DATA[48]='n';
DATA[49]='&';
//结束标志 Send_UDP_Data_Bag(50);
//发送 UDP 数据包 } if (memcmp(p+5,"close",5) ==0) { led1=1;
led2=1;
memcpy(DATA,fu_back,45);
//复制数据到发送数组 DATA[45]='c';
DATA[46]='l';
DATA[47]='o';
DATA[48]='s';
DATA[49]='e';
DATA[50]='d';
DATA[51]='&';
//结束标志 Send_UDP_Data_Bag(52);
//发送 UDP 数据包 } 以上是可编辑区域 自己定义命令识别和返回信息, 注意每包必须有结束标志&, 且发送的 UDP 数据包长度要根据之前 fu_back 数组长度+此处增加的数据长度.
二、测试
1、如图所示为局域网测试,命令格式见 API. 单片机设备默认 UDP 端口是
8951 插上路由器即可.
2、互联网测试 插上可通外网的路由器.
3、IP 捉包工具测试的电脑跟单片机设备通信