关于MESH_Demo中espconn_mesh_connect()及espconn_mesh_server_init()的疑问

forever
Posts: 5
Joined: Tue Dec 06, 2016 9:58 am

关于MESH_Demo中espconn_mesh_connect()及espconn_mesh_server_init()的疑问

Postby forever » Fri Dec 23, 2016 2:51 pm

hi:
在Mesh_demo中,关于服务器的两个地方 ,按照配置顺序,先是使用espconn_mesh_server_init()进行了服务器IP和端口的配置,紧接着在mesh_enable_cb中调用espconn_mesh_connect()连接服务器(在这之前完成了各种回调函数的注册过程)。问题来了:

1、这两步有什么上下游关系?为什么使用espconn_mesh_server_init进行了服务器注册,还要用espconn_mesh_connect(struct espconn)连接到一个服务器?

2、我在做组网实验过程中,做了如下实验:espconn_mesh_connect()函数注解掉,将root节点突然失效,发现子节点可以变为root节点,并连接到server上,同时之前注册的回调函数都是可以用的。但是在同样的条件下,如果只有一个节点上电,它肯定是root节点,也可以连接到server上,但是回调函数无法使用。

context = 0x00000000, esp = 0x00000000, recv_callback = 0x00000000
context = 0x00000000, esp = 0x00000000, recv_callback = 0x00000000
context = 0x00000000, esp = 0x00000000, recv_callback = 0x00000000
context = 0x00000000, esp = 0x00000000, recv_callback = 0x00000000
context = 0x00000000, esp = 0x00000000, recv_callback = 0x00000000
context = 0x00000000, esp = 0x00000000, recv_callback = 0x00000000


请帮忙释疑,多谢~

ESP_Xutao
Posts: 134
Joined: Tue Sep 27, 2016 5:42 pm

Re: 关于MESH_Demo中espconn_mesh_connect()及espconn_mesh_server_init()的疑问

Postby ESP_Xutao » Wed Jan 04, 2017 11:20 am

你好:
espconn_mesh_server_init()是作为tcp server时的server建立,espconn_mesh_connect()是作为client去连接server。两个没有矛盾的。因为每个设备既可以作为server,也可以作为client。

Who is online

Users browsing this forum: No registered users and 4 guests