前言
ATK-MW8266D 模块是正点原子推出的一款高性能 UART-WIFI(串口-无线)模块,ATK-MW8266D 模块板载了正点原子公司自主研发的 ATK-ESP-01 模块,该模块通过 FCC、CE 认证,可直接用于出口欧美地区的产品。
ATK-MW8266D 模块采用串口(LVTTL)与 MCU(或其他串口设备)通讯,且内置 TCP/IP协议栈,能够实验串口与 WIFI 之间的转换。通过 ATK-MW8266D 模块,传统的串口设备只需要简单的串口配置,即可通过网络(WIFI)传输自己的数据。 ATK-MW8266D 模块支持 LVTTL 串口,兼容 3.3Vh 和 5V 单片机系统,可以很方便得与其他产品进行连接。同时,该模块支持还多种工作模式:WIFI STA、WIFI AP、WIFI STA+WIFI AP,从而能够快速地构建串口-WIFI 的数据传输方案,方便其他设备使用互联网传输数据。
引脚定义说明
名称 | 说明 |
---|---|
VCC | 电源(3.3V~5V) |
GND | 电源地 |
TXD | 模块串口发送引脚(TTL电平,不能直接接RS232电平!),可接单片机的RXD |
RXD | 模块串口接收引脚(TTL电平,不能直接接RS232电平!),可接单片机的TXD |
RST | 复位(低电平有效) |
IO_0 | 用于进入固件烧写模式,IO_0低电平:固件烧写模式 ;高电平:运行模式(默认) |
AT指令介绍
ATK-MW8266D 模块出厂默认为 AT 指令状态,可通过 UART 与模块进行通讯,UART通讯的默认配置参数,如下表所示:
ATK-MW8266D 模块支持三种工作模式,分别为:STA、AP、STA+AP。
- STA 模式
在此模式下,ATK-MW8266D 模块可连接其他设备提供的无线网络,例如通过 WIFI 连接至路由器,从而可以访问互联网,进而实现手机或电脑通过互联网实现对设备的远程控制。
- AP 模式
AP 模式为默认的模式,在此模式下,ATK-MW8266D 模块将作为热点供其他设备连接,从而让手机或电脑直接与模块进行通讯,实现局域网的无线控制。
- STA+AP 模式
该模式为 STA 模式与 AP 模式共存的一种模式,ATK-MW8266D 模块既能连接至其他设备提供的无线网络,又能作为热点,供其他设备连接,以实现广域网与局域网的无缝切换,方便操作使用。
除了上述的三种工作模式外,ATK-MW8266D 模块在进行 UDP 连接或作为 TCP 客户端连接时,能够进入透传模式,进入透传模式后,ATK-MW8266D 将会原封不动地把从 TCP服务器或其他 UDP 终端接收到的消息,通过 UART 发送至与之连接的设备。
指令 | 描述 |
---|---|
AT | 测试指令 |
AT+RST | 重启模块 |
AT+GMR | 查看版本信息 |
ATE | 开关回显功能 |
AT+RESTORE | 恢复出厂设置 |
AT+UART | 设置串口配置 |
AT+CWMODE | 选择 WIFI 应用模式 |
AT+CWJAP | 加入 AP |
AT+CWLAP | 列出当前可用 AP |
AT+CWQAP | 退出与 AP 的连接 |
AT+CWSAP | 设置 AP 模式下的参数 |
AT+CWLIF | 查看已接入设备的 IP |
AT+CWDHCP | 设置 DHCP 开关 |
AT+CWAUTOCONN | 设置 STA 开机自动连接到 wifi |
AT+CIPSTAMAC | 设置 STA 的 MAC 地址 |
AT+CIPAPMAC | 设置 AP 的 MAC 地址 |
AT+CIPSTA | 设置 STA 的 IP 地址 |
AT+CIPAP | 设置 AP 的 IP 地址 |
AT+CWSTARTSMART | 启动智能连接 |
AT+CWSTOPSMART | 停止智能连接 |
AT+WPS | 设置 WPS 功能 |
AT+MDNS | 设置 MDNS 功能 |
AT+CWHOSTNAME | 设置 ATK-ESP-01 Station 的主机名字 |
AT+CIPSTATUS | 获得连接状态 |
AT+CIPDOMAIN | 域名解析功能 |
AT+CIPSTART | 建立 TCP 连接或注册 UDP 端口号 |
AT+CIPSSLSIZE | 设置 SSL Buffer 容量 |
AT+CIPSEND | 发送数据 |
AT+CIPCLOSE | 关闭 TCP 或 UDP |
AT+CIFSR | 获取本地 IP 地址 |
AT+CIPMUX | 启动多连接 |
AT+CIPSERVER | 配置为服务器 |
AT+CIPMODE | 设置模块传输模式 |
AT+SAVETRANSLINK | 保存透传到 Flash |
AT+CIPSTO | 设置服务器超时时间 |
AT+PING | PING 命令 |
AT+CIPDINFO | 接收网络数据时是否提示对端 IP 和端口 |
AT+CIPSNTPCFG | 设置时域和 SNTP 服务器 |
AT+CIPSNTPTIME | 查询 NTP 时间 |
AT+ATKCLDSTA | 连接到原子云服务器 |
AT+ATKCLDCLS | 关闭原子云服务器连接 |
AT+SAVETRANSLINK | 保存透传到 Flash |
调试前准备
准备一个ATK-ESP8266,一个usb转ttl模块,硬件连接:
连接电脑
原子云服务器连接
(1)创建设备
在创建设备之前,需登入原子云的网址 https://cloud.alientek.com/创建并登入账号。创建和登入账号的过程比较简单,这里不做过多介绍,登入原子云后,如下图所示:
在原子云平台创建设备,首先点击原子云首页左侧导航栏中的“设备管理”,随后在出现的页面中,点击“新增设备”,如下图所示:
接着在弹出的窗口中,根据 ATK-MW8266D 模块的设备类型选择“ESP8266”,随后根据个人喜好填入“设备名称”和“密码”(这里的密码在就是 ATK-MW8266D 模块通过 AT 指令连接原子云时需要的密码),如下图所示:
最后,点击“新增”按钮,即可创建设备,设备创建好后,如下图所示:
创建好设备后,系统会自动为设备生成编号,这个设备编号就是 ATK-MW8266D 模块使用 AT 指令连接原子云时需要的设备 ID。
(2)连接原子云
创建好设备后,就能后根据设备的编号和密码并通过 AT 指令操作 ATK-MW8266D 模块连接原子云了。具体的 AT 指令如下所示:
AT+CWMODE=1 /* 使能 ATK-MW8266D 模块的 STA 模式,以连接路由器的 AP /
AT+CWJAP=”PADAVAN”,”122232542” / 连接路由器的 AP,以访问互联网 /
AT+ATKCLDSTA=”80745715229992155590”,”66666666” / 连接原子云服务器 */
实际在串口调试助手中的操作,如下图所示:
当串口调试助手显示“CLOUD CONNECTED”后,说明已成功连接上原子云服务器,此时在原子云的设备管理界面,也能够看到对应的设备显示为“已连接”的连接状态,如下图所示:
当 ATK-MW8266D 模块成功连接原子云服务器后,即进入了透传模式,此时就能够在原子云的对应设备的“消息收发”操作界面通过原子云服务器发送消息至 ATK-MW8266D模块,同时,也能后在该界面下,查看到接收自 ATK-MW8266D 模块的消息,如下图所示:
TCP 网络通讯连接
注:ATK_ESP8266 模块仅在 TCP Client 和 UDP,支持透传模式。
设置 WIFI 模式
AT+CWMODE=1 //设置为 STA 模式连接路由器
AT+CWJAP=”PADAVAN”,”122232542” //连接对象路由器的 ssid 和password在电脑上面使用网络调试助手,创建一个 server,win+r——ipconfig获取本地IP地址(如192.168.3.65),如图所示
模块连接到 server
AT+CIPSTART=“TCP”,“192.168.3.65”,8082开启透传模式
AT+CIPMODE=1开始透传
AT+CIPSEND退出透传模式
在透传模式中,若识别到单独的一包数据“ +++”,则退出透传模式。注:退出透传模式需要取消发送新行。
TCP通讯示例:
注意:如果需要模块上电自动连接到某个 IP 并进入透传模式,这个时候需要在模块连接到wifi 热点之后 ,发送AT+SAVETRANSLINK=1,“192.168.1.xxx”,8082,“TCP”,设置模块为上电自动连接到 TCP Server :192.168.1.xxx ,8082 , 并进入透传模式 。当发送AT+SAVETRANSLINK 指令后,模块断电再上电会自动进入透传模式,此时发送 AT 指令模块是不会回复的(即使透传的服务器不存在,模块也会进入透传模式的)。模块要恢复到 AT 指令模式参考图 2.3.9.4 先退出透传模式,然后勾选发送新行,再发送“AT+SAVETRANSLINK=0”,这样上电模块就不会再上电进入透传了。