WIFI技术学习
直播中

高欢

7年用户 153经验值
私信 关注
[问答]

esp8266 wifi模块CIPSEND发送返回no tail错误

问题介绍:最近在做一个wifi通信的项目,用到了esp8266的模组,GMR版本信息如下;
L:9 D:AT+GMR
L:43 D:AT version:0.60.0.0(Jan 29 2016 15:10:17)
L:29 D:SDK version:1.5.2(7eee54f4)
L:32 D:Ai-Thinker Technology Co. Ltd.
L:22 D:May  5 2016 17:30:30
其中,esp8266用作AP,TCPserver;电脑/手机连接到esp8266,TCPclient;
但是发现在1hz的通信频率下,电脑/手机给esp8266 AP 发送数据时,会出现模块返回:no tail 以及ERROR的提示,如下;
AT+CIPSEND=0,40
L:3 D:
L:9 D:no tail
L:7 D:ERROR
先介绍下我的esp8266的通信;
L:28 D:+IPD,0,12,192.168.4.2,56584:    ----- 1:模块收到一段数据;
AT+CIPSEND=0,39                              ----- 2:针对这一段数据解析后,我要发送一个39 byte的数据;写AT+CIPSEND 指令;
L:18 D:AT+CIPSEND=0,39                   ------ 3:模块回显设置的指令;
L:4 D:OK                                            ------ 4:模块返回OK;
%F1P,0,0:0,2.560950,5.464681,0.000000   ----- 5:收到 > 符号后,发送的数据;
L:4 D:>                                              ------ 6:之后打印 > 符号;
L:15 D:Recv 39 bytes                          ------ 7:模块返回 接收 39 bytes;
L:9 D:SEND OK                                   ------ 8:模块返回SEND OK;
正常流程如上;其中红色为发送,蓝色为接收
可是,当我以1hz的频率通过电脑/手机 给esp8266发送时会出现如下提示,对比上面正常流程;没有模块回显;或者是回显错误
L:28 D:+IPD,0,12,192.168.4.2,56584:
AT+CIPSEND=0,39
L:9 D:no tail
L:7 D:ERROR
或者
L:28 D:+IPD,0,12,192.168.4.2,56584:
AT+CIPSEND=0,39
L:18 D:AT+CIPSEND=0,?9
L:9 D:no tail
L:7 D:ERROR
请问不知道大家是否了解这个no tail的错误?是esp8266的AT估计本身问题么?还是1hz过于频繁?

回帖(22)

袁嫚玲

2019-5-7 05:43:20
1hz?波特率是多少?是不是数据误码了,模块解析错误?
举报

吴民峰

2019-5-7 05:59:34
arm 给esp8266 发送数据是间隔1s一次,所以是1hz;
esp8266的传输波特率是115200;
我将数据发送到另外一个debug串口中,显示数据正常;
比较怀疑2点;
1 arm到esp8266的uart线路存在干扰,导致esp8266接收到的数据异常;
2 esp8266本身固件处理的出现了问题;
不过以上2点还不知道如何确认;
举报

温益浪

2019-5-7 06:09:01
AT+CIPSEND=0,?9
看这里,问号都来了。
举报

吴樵

2019-5-7 06:18:53
是啊,所以我就像确认这2个部分;
1 arm到esp8266的uart线路存在干扰,导致esp8266接收到的数据异常;
2 esp8266本身固件处理的出现了问题;
因为我给esp8266发送的同时,我也将发送的数据发送到了debug串口如下;
AT+CIPSEND=0,39     ------ 同时打印给debug串口的数据,是正常显示的,说明数据本身没有问题;
L:18 D:AT+CIPSEND=0,?9    ----- 而esp8266回显显示的已经错误;
举报

更多回帖

发帖
×
20
完善资料,
赚取积分