这期内容当中小编将会给大家带来有关如何使用ESP8266连接路由器,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
在连接之前,先把程序下载到arduino中,很简单,就是定义了软口。如果中间要改动程序,要把rx和tx的连线去掉,不然下载程序可能失败。
const int tx = 1; const int rx = 0; void setup() { pinMode(rx,INPUT_PULLUP); pinMode(tx,INPUT_PULLUP); } void loop() { }
下图就是ESP8266了,很小还没有一元硬币大
(0,0)和(0,3)是方形的焊点,对应左图看每个脚针,连接arduino之后如下图,连线很简单。CH_PD口建议串连一个10K的电阻。
实物图连接如下:
连接好后打开串口监视器,查看之前先将ESP8266的VCC断开一下,然后再连接,可以看到ESP8266的启动信息:
前面有一串乱码不用管,只要看到ready,就说明启动成功了。我搞了1个小时才出来这个启动信息,中间遇到了些麻烦,首先是波特率,网上有的说是9600,有的说是115200,后来得知是版本不同,波特率就不同,不过这个不重要,只要多试几次,肯定可以试出来,后来两个波特率试了N次也没出来,结果是TX和RX的线接返了。。。接对之后,ready终于出现。。。
不管前面如何,终于是连通了ESP8266,此时在电脑或者手机wifi连接窗口可以看到模块发出的wifi信号
据说这个生成的命名规则是根据MAC地址的后几位来定的,目前没深入,暂留一个悬念。
ESP8266是使用AT指令来控制的,网上很多教程都是用USB串口转TTL来配置,真心不想,买那个东西,网上看用arduino也可以配置,就是用AT指令,这个AT指令类似一个cmd指令,说白了就是API呗,模块内部有寄存器和微控制器,可以说是一个微系统,发出指令后在模块内部处理,具体的AT指令网上有很多,我感觉那些指令不用记,用的时候拿来看就是了,具体的可以百度:ESP8266 AT指令,我找了一个文档放在云盘,大家也可以下载下来看http://pan.baidu.com/s/1qWwVpPq
先来个重启指令,看看模块是否工作正常:
注意:一定要发送一个回车过去,不然不会有返回结果的。因为这个回车,我搞了半个多小时,线重连了两次,唉。。。
AT+RST
AT+RST OK 棋fL?1?@H?厙@HJ鼒 [Vendor:www.ai-thinker.com Version:0.9.2.4] ready
发出指令后会得到响应:“OK”,然后ESP8266开始重启,又看到了ready,说明一切正常,开始配置吧!
网上搜集资料得知,ESP8266有三种工作模式:
1.Station (客户端模式)
2.AP (接入点模式)
3.Station+AP (两种模式共存)
咱们先查询一下当前的模式
AT+CWMODE? +CWMODE:2 OK
模式返回是2,说明是AP模式,刚刚我们看电脑已经检测到了ESP8266发出的信号,可以让客户端接入。我现在要做的是将模块和家里的路由器连接,好让手机发送消息到模块,因此需要将模式改为1
AT+CWMODE=1 OK
发送完成,再看电脑wifi连接窗口,刚才的热点已经消失了,说明已经把模式转换为了客户端模式,为了保险起见,还是重启下模块,别搞半天了,配置没生效。。重启后再查询模式,返回为1就对了。
ok了,现在可以让模块搜索周围的信号了,使用下面的命令列出可以连接的热点(中文显示为乱码)
AT+CWLAP +CWLAP:(4,"鎴戞槸12妤肩殑鍗曡韩甯呭摜",-84,"78:eb:14:f3:9c:1a",1) +CWLAP:(4,"lion1201",-53,"20:dc:e6:d0:3b:3c",1) +CWLAP:(4,"bing2014",-73,"ec:88:8f:63:40:d4",1) +CWLAP:(4,"1",-82,"28:2c:b2:cf:7c:40",1) +CWLAP:(0,"TP-LINK_F7FF0E",-91,"0c:72:2c:f7:ff:0e",1) +CWLAP:(4,"FAST_642712",-82,"20:dc:e6:64:27:12",1) +CWLAP:(2,"Tenda_151F40",-73,"c8:3a:35:15:1f:40",3) +CWLAP:(4,"FAST_B704",-90,"78:eb:14:86:b7:04",1) +CWLAP:(4,"dashu",-80,"50:bd:5f:31:55:5a",11) +CWLAP:(3,"瀵嗙爜鏄?883125",-80,"7e:2f:68:6b:df:5e",11) +CWLAP:(4,"19890816",-63,"d8:15:0d:48:b0:4a",11) +CWLAP:(4,"YOUGUESS",-66,"78:eb:14:ea:eb:10",12) OK
连接到我的wifi,加入的语法是(AT+CWJAP=<ssid>,<pwd>),SSID就是wifi的名字,所以中文的就杯具了,你没法输入。。。
AT+CWJAP="lion1201","1888888880" OK
成功返回“OK”,失败返回“FAIL”
下面咱们瞧瞧连接上了没,查询一下当前连接的AP
AT+CWJAP? +CWJAP:"lion1201" OK
这样就对了,连接上了,通过路由器查看下模块的IP地址:
AT+CIFSR 192.168.1.104 OK
之前说了,ESP8266是有寄存器的,所以即使重启连接信息也不会丢失,重启后再查询,发现会自动连接。使用电脑ping一下这个ip,ip是可以ping通的,说明连接正常。
C:\Users\Administrator>ping 192.168.1.104 正在 Ping 192.168.1.104 具有 32 字节的数据: 来自 192.168.1.104 的回复: 字节=32 时间=65ms TTL=255 来自 192.168.1.104 的回复: 字节=32 时间=95ms TTL=255 来自 192.168.1.104 的回复: 字节=32 时间=102ms TTL=255 来自 192.168.1.104 的回复: 字节=32 时间=18ms TTL=255 192.168.1.104 的 Ping 统计信息: 数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失), 往返行程的估计时间(以毫秒为单位): 最短 = 18ms,最长 = 102ms,平均 = 70ms
通过路由器管理界面查看到模块的MAC地址为:18-FE-34-9C-8B-9D
之前通过电脑查看wifi的热点窗口,ESP8266发布的热点名称为ESP_9C8D9D,可以看出名称是MAC地址的后6位。
可以调整一下路由器的IP分发策略,让这个mac地址获得固定的ip,这样每次连接路由器之后就不用查看ip了
配置后提示要重启路由器才生效,没关系以后有时间再重启。
到此,ESP8266连接wifi路由器就完成了。
上述就是小编为大家分享的如何使用ESP8266连接路由器了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。