当前位置:首页 > 单片机 > 单片机
[导读]由于项目要求要涉及到物联网,公司要采用wifi于是就采购了一块串口wifi模块,ESP8266开始拿到后首先应该掌握的就是测试,熟悉AT指令,因为串口wifi通信是采用AT指令进行通信的,在这里需要注意一点的就是:在编写程序

由于项目要求要涉及到物联网,公司要采用wifi于是就采购了一块串口wifi模块,ESP8266

开始拿到后首先应该掌握的就是测试,熟悉AT指令,因为串口wifi通信是采用AT指令进行通信的,

在这里需要注意一点的就是:在编写程序的时候,一个串口(usart2)连接ESP8266,另一个串口(USart1)通过USB-TTL连接PC机查看输出信息,

boolESP8266_Cmd(char*cmd,char*reply1,char*reply2,u32waittime){strEsp8266_Fram_Record.InfBit.FramLength=0;//从新开始接收新的数据包macESP8266_Usart("%srn",cmd);if((reply1==0)&&(reply2==0))//不需要接收数据returntrue;Delay_ms(waittime);//延时strEsp8266_Fram_Record.Data_RX_BUF[strEsp8266_Fram_Record.InfBit.FramLength]='';//增加一个结束符。printf("%s",strEsp8266_Fram_Record.Data_RX_BUF);//将USART2接收到的东西全部打印出来,接收到的保存在这个数组里,通过串口1发送出来,这样就能看到,我们发送的指令的响应,是否出错,例如:发送AT,响应是OK,USART2接收到的数据是ATOK.在交给USART1发送,在PC机的串口调试助手可以看到这些信息,if((reply1!=0)&&(reply2!=0))return((bool)strstr(strEsp8266_Fram_Record.Data_RX_BUF,reply1)||(bool)strstr(strEsp8266_Fram_Record.Data_RX_BUF,reply2));elseif(reply1!=0)return((bool)strstr(strEsp8266_Fram_Record.Data_RX_BUF,reply1));elsereturn((bool)strstr(strEsp8266_Fram_Record.Data_RX_BUF,reply2));}123456789101112131415161718192021222324252627

用的是这款,


这个是连接图,
GPIO0 默认是工作模式(不接线)。如果接了低电平就是下载模式(给模块刷固件!!),所以可以不接线,当然也可以接高电平。

反正一开始连接的时候CH_PD必须为高电平。其余的可以不接。

如果电脑的wifi上显示了你的wifi信号说明模块已经工作。

注意默认的波特率是115200!!!!!!设置好串口调试助手的波特率,再贴张图片吧防止亲们忘。

记得输入各种AT指令前,勾选上“发送新行”,然后输出READY!代表系统正

系统启动后,系统会输出一堆乱码,就是系统开机启动电平的变化状态,不影响。开机后,蓝灯会闪,红灯长亮,

来谈谈EPS8266的AT指令

先说一下EPS8266模快的两(三)种工作模式:Station 模式,AP 模式和AP 兼 Station 模式;有玩过路由器的应该知道路由器除了正常使用(AP模式)外,还可以接收其他路由器的信号(Station 模式),然后再发出来(AP 兼 Station 模式)。这两(三)种工作模式各怎样用呢!

先说一下AP模式下的通信:就设置他的模式为AP模式(就相当于普通路由器)

AT+CWMODE=? 响应返回当前可支持哪些模式

AT+CWMODE? 响应当前处于哪种模式

AT+CWMODE=2 1-Station 模式,2-AP 模式,3-AP 兼 Station 模式

步骤1 发送AT+CWMODE=2设置为AP 模式

这种模式下模块发出无线wifi信号。用电脑连接它。
步骤2 发送AT+RST 重启模块使AT+CWMODE=2模式生效

步骤3 发送AT+CIPMUX=1 启动多连接


为什么要启动多路连接模式,意思是允许多个客户端连接,当然模块最多允许5个客户端连接(每个客户端对应一个id号,0–4)。也是必须设定的,不然配置为服务器会出错

接着就是怎样与它通信。当然是网络通信,也就是TCP/UDP通信两种。{UDP–分为发送端和接收端,面向无连接的通信(速度快),只向指定的ip(每一台电脑都有自己的ip地址,向指定的ip地址发数据,数据就发送到了指定的电脑)端口(我把数据发送到电脑了,电脑中的哪个程序接收呢。不知道亲们知不知道,其实每一个网络软件都有自己的通信端口,像qq,酷狗音乐的下载端口等等。现在知道了吧,向指定的ip地址和指定的端口发数据,才能发送到指定的电脑的指定的程序上)不管你接没接收到,只管发}

{TCP–分为服务器和客户端,与udp不同的是双方建立正常的连接后,才能通信,每次通信都会检测连接正不正常,(通信可靠,速度比udp慢)}

模块作为服务器
步骤4 发送AT+CIPSERVER=1,8080开启服务器模式,端口号8080


打开电脑的网络调试助手(别忘了连接它的无线网)

对了远程主机地址为什么是192.168.4.1

你可以发送AT+CIFSR指令查看一下模块的自身ip地址

点击连接


接着就是发信息(客户端发给服务器)

接着就是发信息(服务器发给客户端)

去掉发送新行点击发送

客户端接收

模块作为客户端,PC作为服务器,最有意思的来了

模块作为客户端咱从头再来,

1,还是设置模块的工作模式为ap模式AT+CWMODE=2

2,复位一下AT+RST

3,发送AT+CIPMUX=0 启动单连接,先弄单连接后弄多连接,多连接比较有意思,想知道就慢慢的往下看

4,AT+CIPSTART=”TCP”,”192.168.4.2”,8080

TCP说明是tcp连接,如果写udp就是udp连接

192.168.4.2连接的ip地址,电脑的ip,端口号8080




接着就可以通信了

单路连接时发送指令为AT+CIPSEND=x , x为发送的字节数

看多路连接(首先提醒:一个模块可以做到四路连接)

1,还是设置模块的工作模式为ap模式AT+CWMODE=2

2,复位一下AT+RST

3,发送AT+CIPMUX=1 启动多连接

4,AT+CIPSTART=0,”TCP”,”192.168.4.2”,8080

5, AT+CIPSEND=0,20

6,去掉回车随便打些东西

7,发送

接着再发送

AT+CIPSTART=1,”TCP”,”192.168.4.2”,8080

AT+CIPSTART=2,”TCP”,”192.168.4.2”,8080

AT+CIPSTART=3,”TCP”,”192.168.4.2”,8080

AT+CIPSTART=4,”TCP”,”192.168.4.2”,8080

都连接上了!!!!!!

5, AT+CIPSEND=1,20

6,去掉回车随便打些东西

7,发送

5, AT+CIPSEND=2,20

6,去掉回车随便打些东西

7,发送

5, AT+CIPSEND=3,20

6,去掉回车随便打些东西

7,发送

5, AT+CIPSEND=4,20

6,去掉回车随便打些东西

7,发送


再用网络调试助手给模块发信息试一试

好了AP模式就讲这么多,该Station 模式了

Station模式与AP模式不同在于,Station模式需要让模块连接上家里的路由器的wifi。其余的都一样吧!

就让模块在Station模式下做服务器,然后与电脑通信(要在一个wifi下,电脑和模块连接同一个wifi信号)

1,发送AT+CWMODE=1设置为Station模式

2,AT+RST 重启生效

3,连接家里的路由AT+CWJAP=”TP-LINK_A52”,”1234567890”


发送AT+CWLAP可以查询周围的wifi信号

发送AT+CWJAP可以看一看wifi是否真的连接上

4,AT+CIPMUX=1 启动多连接

5,AT+CIPSERVER=1,8080 打开服务器端口为8080

6,AT+CIFSR 看一下你模块现在分得的ip是多少,因为只要模块连网就会重新分配ip地址。这也是网络助手里面远程主机栏要填写的ip地址



通信啥的就不多说了。

用模块做客户端

1 连接路由器AT+CWJAP=”TP-LINK_A52”,”1234567890”

2 AT+CIPMUX=0 单连接

3 AT+CIPSTART=”TCP”,”192.168.1.101”,8080

后面就是发送数据,如果出现一直连接不上关闭电脑防火墙


多连接就不演示了,

AT+CIPSTART=0,”TCP”,”192.168.1.101”,8080或

AT+CIPSTART=1,”TCP”,”192.168.1.101”,8080或

AT+CIPSTART=2,”TCP”,”192.168.1.101”,8080或

AT+CIPSTART=3,”TCP”,”192.168.1.101”,8080或

AT+CIPSTART=4,”TCP”,”192.168.1.101”,8080或

发送数据

AT+CIPSEND=0,20或

AT+CIPSEND=1,20或

AT+CIPSEND=2,20或

AT+CIPSEND=3,20或

AT+CIPSEND=4,20


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

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭