Haribit Intern day7 手机、PC与esp32的TCP通信


PC与esp32的通信

见博文 Haribit Intern day2 AT指令测试TCP连接

反思一

当时有出现错误:esp32模块连不上TCP服务器

错因:TCP服务器所在主机与esp32不在同一网段。主机为有线网,而esp配网为无线网。故不在同一网段,无法连接。

解决方案:TCP服务器所在主机连接至WiFi,esp32也连接至同一WiFi,再次尝试esp32作为client连接server,成功连接。

在这里插入图片描述


反思二

退出透传模式,需要发送+++,有且仅有三个加号,但实验时总是失败,将+++当做了消息发送给了服务器,经查阅,发现是因为这条指令发送时必须要把发送界面下面的发送新行取消选中。发送其他指令时需要选中发送新行
在这里插入图片描述


手机与esp32的通信

通信原理

手机 esp32 建立服务器 作为客户端 AT+CIPSTART CONNECT “你好,我是esp32” “你好,我是手机” 双方通信…… 手机 esp32

步骤

1. 手机建立TCP服务器

下载app 桌岚物联,或者其他具有TCP服务器/客户端功能的网络调试助手软件。
在这里插入图片描述

打开软件 → 通讯测试TCP/IP
工作模式: 选择TCP服务器
数据格式: 选择字符
IP和端口号自动获取,点击打开


2. 模块连接手机

串口调试软件中输入指令:

AT+CIPSTART="TCP","172.16.249.155","8080"

3. 手机 → 模块

手机端通知连接成功,此时手机TCP端可以任意发送消息给模块,直接输入并发送即可


4. 模块 → 手机

模块想要向手机发送信息,有两种方式

第一种,发送前用AT+CIPSEND=X说明要发送消息的长度(X为将要发送消息的字节数),在出现>提示符后开始发送消息,必须发送 X 字节数据,否则多余的数据会被丢掉,并返回 busy p…;
这种方法弊端是每次发送消息都要发送指令说明消息长度。

第二种,透传。

AT+CIPMODE=1

OK
AT+CIPSEND

OK

>

在这里插入图片描述

注意上图,最后手机收到了来自模块的+++,就是因为没有取消勾选发送新行+++被当做消息传送给了手机。要特别注意。

在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值