W801使用UDP通讯方式,和电脑连接的一个模块是服务端,需要其他多个模块客户端向服务端传输数据,如何IP地址每次开关机随机,客户端没有办法知道服务端的IP地址,请教方法!
设置固定IP的话,把DHCP关闭,之后手动写上将要设置的IP地址即可,以官方demo 为例 在函数 demo_connect_net 中 ,修改如下
ip_param = tls_mem_alloc(sizeof(struct tls_param_ip));
if (ip_param)
{
ip4_addr_t loop_ipaddr, loop_netmask, loop_gw;
tls_param_get(TLS_PARAM_ID_IP, ip_param, FALSE);
ip_param->dhcp_enable = FALSE;
IP4_ADDR(&loop_gw, 192,168,0,1);
IP4_ADDR(&loop_ipaddr, 192,168,0,116);
IP4_ADDR(&loop_netmask, 255,255,255,0);
memcpy(ip_param->ip , &loop_ipaddr ,sizeof(loop_ipaddr));
memcpy(ip_param->netmask , &loop_netmask ,sizeof(loop_netmask));
memcpy(ip_param->gateway , &loop_gw ,sizeof(loop_gw));
tls_param_set(TLS_PARAM_ID_IP, ip_param, FALSE);
tls_mem_free(ip_param);
}
这样的话 再次连接路由的话 就是你设定的IP地址了