OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2835|回复: 7

ESP8266纯透传程序问题

[复制链接]

7

主题

35

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
349
金钱
349
注册时间
2018-7-19
在线时间
50 小时
发表于 2018-9-5 20:38:55 | 显示全部楼层 |阅读模式
10金钱
38TE@I@@%R5Q]3CYTM~TS.png 这是我用WIFI_Init()的时候 YA2LJ4)}]X8}XWRT{6Q_100.png 这是WIFI_Init()函数的AT指令配置 T0M8914A}O4KI(039PTV.png 这个是用WIFI_Init()函数时串口的显示,很显然程序没有进入下面的while语句。(我不知道是什么原因) E67EB925669AE3C2844B2C745E9ABB8A.jpg 这是我用串口验证代码的硬件连接 ~N02AHTJAX)I6ODC`7G9`{H.png 这是将WIFI_Init()函数的语句拿到主函数中后 $]RP]@2_R`F[XO~EBXF]`PU.png 这是注释掉的WIFI_Init()函 ZLUR)}56_FKW{$GUZB.png 这是我将WIFI_Init()函数的语句拿到主函数中后串口的测试结果很显然程序执行了while 4PFE2A{W2KG{%4Q9QRC74TQ.png 这个是我用虚拟服务器测试的虽然串口测试的结果正确但是服务器无论U3_printf里面写什么服务器上都只能接收到一个A而且只接收一次
(我不知道是什么原因)
198A6C7A073EE0F7805F4D84E7CEE7DB.jpg
这是我连WIFI模块的图



(9.1)简单ESP8266程序.zip

2.78 MB, 下载次数: 30

这个是代码

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

7

主题

35

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
349
金钱
349
注册时间
2018-7-19
在线时间
50 小时
 楼主| 发表于 2018-9-5 20:46:18 | 显示全部楼层
先谢谢各位为我解答的大佬们
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2018-9-6 01:25:03 | 显示全部楼层
帮顶
回复

使用道具 举报

2

主题

12

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
285
金钱
285
注册时间
2018-9-5
在线时间
54 小时
发表于 2018-9-6 09:24:02 | 显示全部楼层
把while(ESP8266_send_cmd("AT","OK",20));  之类的语句改成 if(ESP8266_send_cmd("AT","OK",20)==0);   你再试试
回复

使用道具 举报

60

主题

124

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
478
金钱
478
注册时间
2017-11-22
在线时间
136 小时
发表于 2018-9-6 10:24:19 | 显示全部楼层
luoyejian818 发表于 2018-9-6 09:24
把while(ESP8266_send_cmd("AT","OK",20));  之类的语句改成 if(ESP8266_send_cmd("AT","OK",20)==0);    ...

为什么要改,我觉得没问题,
回复

使用道具 举报

57

主题

1680

帖子

3

精华

资深版主

Rank: 8Rank: 8

积分
4306
金钱
4306
注册时间
2018-6-30
在线时间
808 小时
发表于 2018-9-6 10:34:36 | 显示全部楼层
帮顶
回复

使用道具 举报

2

主题

12

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
285
金钱
285
注册时间
2018-9-5
在线时间
54 小时
发表于 2018-9-6 11:02:39 | 显示全部楼层
zhangjinhui 发表于 2018-9-6 10:24
为什么要改,我觉得没问题,

while 不是要等到1才进行下面的么  这个 ESP8266_send_cmd(); 发送命令成功的时候  是返回0的
回复

使用道具 举报

7

主题

35

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
349
金钱
349
注册时间
2018-7-19
在线时间
50 小时
 楼主| 发表于 2018-9-6 13:12:54 | 显示全部楼层
luoyejian818 发表于 2018-9-6 11:02
while 不是要等到1才进行下面的么  这个 ESP8266_send_cmd(); 发送命令成功的时候  是返回0的

这个while里面的是一直等待,如果接收到正确的应答消息这个 ESP8266_send_cmd()就会返回0跳出while循环。我测试过了如果将WIFI_Init里面的代码放到主函数里,是可以连上服务器的,但是U3_printf()无论写什么服务器都是接受A而且每次复位只接收一次。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-19 10:36

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表