百问网七天物联网智能家居第1篇

TCP传输 分服务端和客户端,需要提前建立连接,后续才能传输。

UDP不区分服务端和客户端,不需要提前建立连接。

1.ESP8266作为TCP客户端ESP8266去连接TCP服务器适用于数据的上报的场景,这种情况下,ESP8266连接服务端(手机),要知道服务器那端的IP地址, 我们新增一个手机去控制设备,就要重新告诉ESP8266我们手机的IP。 模式图如下。

该模式适用于数据的上报的场景,不适合我们这个项目的模式。

2. ESP8266作为TCP服务端:其它设备(手机、电脑)来连接TCP服务器(ESP8266),适用于多设备控制同一个设备,适合我们项目的模式。这种情况下,其它设备要知道服务器的IP地址就能连接传输数据,也就是知道ESP8266的IP地址即可。模式拓扑结构:

3. UDP模式: UDP传输,知道对方IP地址,就可以直接发数据。 这里UDP传输又分固定远端远端可变,两种模式。如果使用固定远端,就需要知道双方的IP地址, 在我们这个智能家居项目场景里面,是不合适的, 我们不方便获取新手机的IP地址。如果使用可变远端,手机发送数据给ESP8266后,ESP8266下次自动和最近一次通信的设备发送数据,也就是刚才的手机。 这样我们就无需告诉ESP8266我们手机的IP地址, 但还会存在一个问题。刚开始的时候,ESP8266无法给手机发数据,因为不知道手机的IP地址,只能手机先发送数据给ESP8266后,才能再发数据给手机。

4. 透传:就是在作为TCP客户端传输或UDP传输的情况下, 进入这个透传模式,就收发的都是原始数据 不会加数据封装,接收数据就不是IPD开头那种。

先创建TCP/UDP连接,再进入透传模式 之后手机用TCP/UDP发数据,发什么,模块转发给我们MCU就是什么。

我们发送任何东西,比如AT+RST给ESP8266,它也转发给手机。。。 除非发送+++退出。

       后续项目将会选择ESP8266作为TCP服务端远端可变的UDP模式两种模式来实现选择第1种时候微信小程序连接IP和端口时候,会发送一串数据,依次可以判断是否连接。选择第2种时候,要通过微信小程序,先发送开灯或者关灯指令,让ESP8266先获取手机的IP信息,才能够在开发板上用按键控制门铃信息的发送。

 

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值