ESP8266 wiFI 可以用作连接周边的无线设备,也可以作为发送器供其他设备连接通常在产品中,我们经常用作无线的接收使用,也可能会用作在线升级使用等。
说点题外话:虽然在线升级已经较为成熟,但我不推荐在一些重要的产品中推荐这种在线OTA升级,像汽车、智能家居等这种代码直接由软件架构生成的底层逻辑代码类型。 因为如果,底层结构或者一些代码逻辑被破解之后,很容易造成安全隐患,这种事情发生过不少,而且这种人,是最难被抓捕的。 除非哪天,所有的系统网络是被破解或者很难针对的算法出现以及普及。 我认为才是安全的。
1- ESP8266 初体验
esp8266是一种无线网络设别,内部集成常用的网络配置,只要不是太精密的产品,是都可以应用的。 同时他本身就是一个MCU,在没有其他外在MCU的情况下也是可以开发使用的。 当然,这只是其中一款而已。 具体的产品特性如下:
我们主要是讲如何使用,原理在这里不在多说,只需要数据手册就可以了。
1.1 硬件连接
我们在电脑上使用USB转串口进行连接。 具体的连接方式请根据自己手中的设备进行连接,几乎所有的无线通信都是使用AT命令来进行操作的。 连接如下图:
就是上面这个逻辑图。 然后我们连接好之后根据手册看看会返回那些有用的信息
1.2 尝试
1 AT指令
我们在发送区发送AT。 如果得到OK,那么说明是可以正常通信的。
2 AT固件版本
发送AT+GMR
3 软件重启
这种会重启模块,打印出OK后会相关的配置信息。
4重置出厂设置
1.3 通信测试
接下来我们进行一些通信测试,下面这些是写代码的时候常常用到的指令
1.3.1 模式配置
TCP Server 为 AP 模式,TCP Client 为 Station 模式。
1-配置WIFI模式:其他模式是一样的这里是两种模式都配置了。 输入:AT+CWMODE=3
1.3.2-连接路由器
AT+CWJAP="SSID","password"下面这个图说明连接成功了,如果没有请检查密码和SSID,请注意中间不能有空格
1.3. 3-查询 ESP8266 设备的 IP 地址
AT+CIFSR
把下面这个记录下来,在写代码的时候需要,后面会总结。
[21:44:56.358]收←◆AT+CIFSR+CIFSR:APIP,“192.168.4.1”+CIFSR:APMAC,“be:dd:c2:b3:a0:f1”+CIFSR:STAIP,“192.168.0.102”+CIFSR:STAMAC,“bc:dd:c2:b3:a0:f1”
4. ESP8266 设备作为 TCP client 连接到服务器
在这里我们需要一个服务,如下:
然后我们对其进行连接:下面这种就是成功了。 如果出现 error CLOSED,需要检查是否在同一局域网下,以及要把这个串口工具添加到入站规则同时添加8080这个端口(具体的请百度)
如果建立成功就可以通信了,如下图:
下面这些才是我们需要的:
在
// 1. 配置 WiFi 模式
AT+CW模式=3 // 软AP+站模式
// 2. 连接路由器
AT+CWJAP=“SSID”,“password” // SSID 和路由器的密码
// 3. 查询 ESP8266 设备的 IP 地址
AT+CIFSR
// 响应
[21:44:56.358]收←◆AT+CIFSR
+CIFSR:APIP,“192.168.4.1”
+CIFSR:APMAC,“be:dd:c2:b3:a0:f1”
+CIFSR:STAIP,“192.168.0.102”
+CIFSR:STAMAC,“bc:dd:c2:b3:a0:f1”
还行
// 4. ESP8266 设备作为 TCP client 连接到服务器
AT+CIPSTART=“TCP”,“192.168.0.107”,8080 //协议、服务器 IP 和端口
// 5. ESP8266 设备向服务器器发送数据
AT+CIPSEND=4 // 设置将要发送的日期长度,例如 4 个字节
>测试 // 输入数据,无 CR
// 响应
记录 4 字节
发送确定
// 6. 当 ESP8266 设备接收到服务器器发来的数据,将提示如下信息:
+IPD,n:xxxxx // 接收 n 字节, data=xxxxx```
如何实现AT命令的编写,以后在说,这段时间太忙了。
-
mcu
+关注
关注
146文章
17144浏览量
351145 -
模块
+关注
关注
7文章
2705浏览量
47464 -
无线网络
+关注
关注
6文章
1435浏览量
65939 -
WIFI
+关注
关注
81文章
5297浏览量
203680 -
ESP8266
+关注
关注
50文章
962浏览量
44989
发布评论请先 登录
相关推荐
评论