当前位置:首页 > 物联网 > 网络协议
[导读]   TCP Client模式   ESP8266工作在station模式下,需确认ESP8266已经连接AP(路由器)并分配到IP地址,启用client连接   ESP8266工

  TCP Client模式

  ESP8266工作在station模式下,需确认ESP8266已经连接AP(路由器)并分配到IP地址,启用client连接

  ESP8266工作在soft-AP模式下,需确认连接ESP8266的设备已被分配到IP地址,启用client连接

  ESP8266 TCP Client模式配置流程

  程序实现内容:

  1.在staTIon模式下,ESP8266作为client、server进行TCP连接

  2.实现数据的发送、接收(同时回传)

  实现思路:

  TCP网络通信分层为:应用层、网络层、数据链路层、物理层;

  1. 设置ESP8266为staTIon模式,在数据链路层连接AP,获取IP地址;

  2. 在网络层进行TCP连接:作为client连接远程server,作为server监听远程client信息;

  数据链路层:

  1. 设置ESP8266为staTIon模式:wifi_set_opmode(STATION_MODE);

  2. 配置连接到AP的相关参数,在该步骤中,需要知道AP的名称( ssid )、密码( password ): 官方所给的SDK中,该配置执行后,wifi模块自动与AP进行连接

  

  为确保ESP8266已同AP建立稳定的连接并且已获取到IP地址,可注册该事件的回调函数进行判定:

  1.注册回调函数

  

  2.注册定时器,对回调函数中的flag_sta_conip进行判定以确定是否已获得IP地址

  

  网络层:

  1. 检测ESP8266是否已同AP建立稳定连接,若是,则开始建立TCP client连接:

  

  建立TCP client连接(在该设置中,需要知道远程server的IP地址及端口号),同时注册连接、收发数据的回调函数:

  

  2. ESP8266开启server服务(在该步骤中,通过对espconn_accept()函数返回值的判定,TRUE则关闭设置server开启的定时器,FALSE则继续保持开通,直到开启成功)

  

  接收数据的回调函数:

  

  发送数据的回调函数:

  

  实现效果:

  

  

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭