1.ESP8266概述
官方网址:ESP8266 Wi-Fi MCU I 乐鑫科技 (espressif.com.cn)
ESP8266模块---wifi模块
产品特点:
2.ESP8266中的wifi:
ESP8266EX ⽀持 TCP/IP 协议,完全遵循 802.11 b/g/n WLAN MAC 协议,⽀持分布式控制功能 (DCF) 下的基本服务集 (BSS) STA 和 SoftAP 操作。⽀持通过最⼩化主机交互来优化有效⼯作时⻓,以实现功耗管理。
应用方向:
外观尺寸大小:
今天主要是使用wifi功能,最终联网
3.AT指令集的概念:
AT指令是应用于终端设备与PC应用之间的连接与通信的指令。AT 即Attention。每个AT命令行中只能包含一条AT指令;对于AT指令的发送,除AT两个字符外,最多可以接收1056个字符的长度(包括最后的空字符)。
格式:
AT+CMD
4.ESP8266引脚:
复位:
使能管脚:
电源部分:
串口配置部分:
启动模式:
程序正常运行,我们需要保证使能位和RST,必须拉高
5.ESP8266联网步骤
AT+CWMODE=1 :设置工作模式(STA模式)
AT+RST :模块重启(生效工作模式)
AT+CWJAP="111","11111111" :连接当前环境的WIFI热点(热点名,密码)
AT+CIPMUX=0:设置单路连接模式
AT+CIPSTART="TCP","xxx.xxx.xxx.xxx",xxxx :建立TCP连接
AT+CIPMODE=1 :开启透传模式
AT+CIPSEND :透传模式下,传输数据
+++:退出透传模式
如何将以上指令通过串口发送至ESP8266????
1.串口3配置
2.中断配置
USART3接收中断:主机用于接收ESP8266的应答信号和有效数据,用中断主要是为了避免数据阻塞。
USART3空闲中断:用于判断数据是否接收完成,因为每次接受的数据长度都不一样,所以目前只能用空闲中断。
USART1接收中断:用于接收上位机传输过来的数据
USART1空闲中断:上位机发送的数据是否结束
发送指令的函数
ESP8266_Cmd ( "AT", "OK",NULL,500)
参数1:AT--发送的指令
参数2:ESP8266的应答信号
参数3:ESP8266的应答信号
参数4:500--延时时间
代码编写部分:
指令详解
热点和服务器地址设置:
服务器:安信可透传云
整体链接流程:
[16:16:08.100]收←◆配置ESP8266联网流程 AT测试..... [16:16:10.107]收←◆ AT测试次数 0...... [16:16:10.606]收←◆000 00AT OK AT测试启动成功 0...... 正在配置ESP8266模式 [16:16:11.113]收←◆000 00AT+CWMODE=1 OK 正在配置WIFI热点信息 [16:16:11.620]收←◆000 00AT+CWJAP="iPhone010","66666666" [16:16:28.874]收←◆000 00WIFI CONNECTED AT+CWJAP="iPhone010","66666666" busy p... [16:16:29.385]收←◆000 00AT+CWJAP="iPhone010","66666666" busy p... WIFI GOT IP [16:16:30.908]收←◆000 00AT+CWJAP="iPhone010","66666666" busy p... OK 正在配置单链接 [16:16:31.413]收←◆000 00AT+CIPMUX=0 OK 正在配置服务器端信息 [16:16:31.925]收←◆000 00AT+CIPSTART="TCP","122.114.122.174",36408 CONNECT OK 进入透传模式 [16:16:34.978]收←◆000 00AT+CIPMODE=1 OK [16:16:35.481]收←◆000 00AT+CIPSEND OK >进入透传模式成功 开始传输数据