本帖最后由 wateras1 于 2015-4-18 14:07 编辑
最近工作需要接触到了一款性价比很高的wifi芯片,在论坛也介绍给大伙:ESP8266。对于esp8266的介绍,就不多说了,百度下都是,我使用的是网上的淘的ESP8266模块,原理图如下:
关于四个引脚(GPIO2,、GPIO0、CH_PO和CPIO16(RST))的定义如下: GPIO0:当为高电平时代表从FLASH启动,为低电平时进入系统升级状态; GPIO16:可以作为外部硬件复位(RST); CH_PD:用来选择AT指令模式; 其中需要主要的是UTXD接单片机的RX,VCC接3.3V其他引脚都通过10K电阻接VCC(默认进入AT指令模式) 当进入AT指令模式以后上电就会出现如下一堆乱码:
这就表明你的模块是可以正常工作的需要注意的是确保你的模块供电要足,不然会出现一些问题。关于电源方面的最好的解决方案是在VCC和GND之间多加几个电解电容。因为虽然模块的电流只有70-80ma,但是这个只是平均电流而已。搞过GPRS的人应该了解,像这类射频模块的瞬间电流是很大的一般都会达到几十安培,所以需要几个电容储存电荷给模块用。 好了说了这么多废话,开始进入正题: ESP8266可以配置成station 、AP、station+AP三种模式,就是说模块可以当成一个设备(client)连接路由,也可以设置成是一个路由(server),也可以既作为局域网里面的client同时又是其他client的server,具体配置如下 1、AP模式: 第一步 发送命令:AT+RST(执行指令) 指令:AT+RST 响应:OK 第二步: 发送命令:AT+CWMODE=2(设置指令) 指令:AT+CWMODE= 说明::1-Station模式,2-AP模式,3-AP兼Station模式 响应:OK 说明:需重启后生效(AT+RST),其实最新的SDK是不需要重启就可以生效,官方早期的SDK需要重启 第三布: 发送命令:AT+CWSAP="ioteeworld","0123456789",3,1
指令:AT+ CWSAP=,,, 说明:指令只有在AP模式或者ap+station开启后有效 :字符串参数,接入点名称 :字符串参数,密码最长64字节,ASCII :通道号 < ecn >:0-OPEN,1-WEP,2-WPA_PSK,3-WPA2_PSK,4-WPA_WPA2_PSK
响应:OK 然后就可以在你的手机或者是电脑通过无线网卡连接到ioteeworld上了 1: 开启服务器模式: 发送命令:AT+ CIPMUX=1 和AT+CIPSERVER=1,9001(因为只有在开启多连接模式的时候才能开启服务器模式) 然后就可以通过网络调试助手来通过“TCP Client”模式下添加“IP:192.168.4.1(模块默认的IP),端口9001(上一步设置的)” 2、Client模式: 第一步: AT+RST AT+CWMODE=1 //设置为station模式 AT+RST //重启生效 AT+CWLAP //查看可以网络 AT+CWJAP="xxxx","****" //连接自己要连接的网络,前面是SSID后面是密码,具体AT指令可以参考官方的AT集 AT+CIFSR //返回模块的IP地址说明已经正确连接到路由器 AT+CIPMUX=1 //打开多连接 AT+CIPSTART=0,"TCP","xxxxx",9001 //其中的IP号和端口号是自己在局域网内建立 AT+CIPSEND=0,10 0123456789 //发送10个字符给服务器 3、Station+Client模式: AT+RST AT+CWMODE=3 //设置为station模式 AT+CWLAP //查看可以网络 AT+CWJAP="xxxxx","****" //连接自己要连接的网络 AT+CIFSR //返回模块的IP地址说明已经正确连接到路由器返回IP地址“192.168.168.10” AT+CIPMUX=1 //打开多连接 AT+CIPSERVER=1,9001 //建立sever
|