由于项目需要,于是没接触过ESP8266的本人购入了一个正点原子的ESP8266WIFI模块,官方资料在这下载:http://www.openedv.com/docs/industry/iot/esp8266.html
本篇文章主要讲解TCP Client透传模式的使用,如需将WIFI作为Sever建立多连接,参考文章:ESP8266作为Sever建立多连接
目录
4. 连接路由器:AT+CWJAP="WWW","11111110"
6. 模块连接到Server:AT+CIPSTART="TCP","192.168.95.2",8081
一、模块上手
拿到模块后,里面是已经是烧有固件的,因此我们无需再烧写固件,有需要的同学可以参考其它文章,本文不多赘述。
接线只需要一个USB转TTL即可使用,接线图如下,供电采用5V,3V3我试的不太行。 打开串口,波特率为115200,发送"AT",返回"OK",模块没有问题。
注意:要勾选发送新行。
介绍几个简单指令:
AT+RST | 重启模块 |
AT+GMR | 查看版本信息 |
ATE0 | 关闭回显 |
ATE1 | 打开回显 |
AT+RESTORE | 恢复出厂设置 |
AT+UART=115200,8,1,0,0 | 串口设置,一般改个波特率就差不多 |
二、TCP Client透传模式配置
1. 设置WIFI模式为STA:AT+CWMODE=1
WIFI模式一共有三种,区别如下:
STA 模式:AT+CWMODE=1,ESP8266 模块作为从机连接路由器。
AP 模式:AT+CWMODE=2,ESP8266 模块作为热点,手机或电脑连接该热点实现控制。
STA+AP 模式:AT+CWMODE=3,两种模式的共存模式。
本文主要使用STA模式。
2. 重启生效:AT+RST
3. 查询可用AP(也就是查询可用网络):AT+CWLAP
找到自己要用的网络,这里我用手机开的热点,名字是“WWW”。
用自己的热点需要将热点的AP频段选为2.4G。
4. 连接路由器:AT+CWJAP="WWW","11111110"
第一个引号里是网络名,第二个是密码。(引号不要输成中文了)
5. 打开XNET网络调试助手
选择协议为“TCP Server”,点击连接打开端口。
注意:打开后本机IP会自动填写电脑端网络的IP地址,不用去填写和我一样的,因为这是我电脑的IP地址,端口号自己定,如果连接显示“IP地址无效或端口被占用”,说明该端口已经被占用了,换一个端口就行。
6. 模块连接到Server:AT+CIPSTART="TCP","192.168.95.2",8081
输入自己的IP地址及端口号。
7. 开启透传模式:AT+CIPMODE=1
8. 开始透传:AT+CIPSEND
开始后结果如下,串口调试助手与网络调试助手可以实现互相发送消息。
如果需要开机就直接进入透传模式,则需要在连接上wifi热点后发送:AT+SAVETRANSLINK=1,"192.168.95.2",8081,"TCP",模块上电会自动连接到指定server,并进入透传模式。
如需取消,“+++”退出透传模式后,发送AT+SAVETRANSLINK=0即可。
9. 退出透传
当发送了一组“+++”时,会自动退出透传模式,要注意的是,此时需要在串口助手上取消勾选“发送新行”,否则发送的数据为“+++\r\n”。
至此,基本的透传功能已经完成。