esp8266WIFI模块教程:ATK-ESP8266——TCP网络通讯和服务器连接

news2024/9/20 5:56:47

前言

  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。

  1. STA 模式

  在此模式下,ATK-MW8266D 模块可连接其他设备提供的无线网络,例如通过 WIFI 连接至路由器,从而可以访问互联网,进而实现手机或电脑通过互联网实现对设备的远程控制。

  1. AP 模式

  AP 模式为默认的模式,在此模式下,ATK-MW8266D 模块将作为热点供其他设备连接,从而让手机或电脑直接与模块进行通讯,实现局域网的无线控制。

  1. 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+PINGPING 命令
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,支持透传模式。

  1. 设置 WIFI 模式
      AT+CWMODE=1 //设置为 STA 模式

  2. 连接路由器
      AT+CWJAP=”PADAVAN”,”122232542” //连接对象路由器的 ssid 和password

  3. 在电脑上面使用网络调试助手,创建一个 server,win+r——ipconfig获取本地IP地址(如192.168.3.65),如图所示

  4. 模块连接到 server
      AT+CIPSTART=“TCP”,“192.168.3.65”,8082

  5. 开启透传模式
       AT+CIPMODE=1

  6. 开始透传
      AT+CIPSEND

  7. 退出透传模式
    在透传模式中,若识别到单独的一包数据“ +++”,则退出透传模式。注:退出透传模式需要取消发送新行。

    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”,这样上电模块就不会再上电进入透传了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1528166.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

springboot酒店管理系统 论文【源码】

springboot酒店管理系统开发说明 开发语言:Java 框架:springboot JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7(一定要5.7版本) 数据库工具:Navicat11 开发软件&#xff1…

【SQL】1934. 确认率(IFNULL(); IF())

题目描述 leetcode题目:1934. 确认率 Code select Signups.user_id,ifnull(confirmation_rate1, 0) as confirmation_rate from Signups left join(select user_id,round(sum(if(actionconfirmed, 1, 0))/count(*), 2) as confirmation_rate1from Confirmationsgr…

蓝桥杯-24点-搜索

题目 思路 --暴力递归全组合的方法。只有4个数,4种计算方式,共有4 * 3 * 2 * 1 * 4种不同的情况,可以写递归来实现。 --每次计算都是两个数之间的运算,因此4个数需要3次计算,第一次计算前有4个数,第二次有…

Python:filter过滤器

filter() 是 Python 中的一个内置函数,用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表。该函数接收两个参数,一个是函数,一个是序列,序列的每个元素作为参数传递给函数进行判定&…

耐腐蚀高纯特氟龙塑料量瓶进口聚四氟乙烯材质PFA容量瓶

PFA容量瓶,也叫特氟龙量瓶,是用于配制标准浓度溶液的精确实验室器皿,是有着细长颈、梨形肚的耐强腐蚀平底塑料瓶,颈上有标线,常用来直接配制标准溶液和准确稀释溶液以及制备样品溶液。因其有着不易碎、材质纯净、化学稳…

Android studio开发中Virtual Device模拟器的设置和屏幕错位等问题

Android SDK开发中Virtual Device模拟器的设置和使用 本文介绍android studio2023 3.1.13版本中模拟器的设置和在cordova开发中的运行方法 对于老版android studioAVD模拟器的使用,参见:Android SDK手机应用开发中第三方模拟器、真机运行方法以及AVD模拟…

camelot pdf提取表格实践(记录)

参考: 巧用Python的camelot库批量提取PDF发票信息 关于文本pdf的表格抽取 AttributeError: module ‘camelot‘ has no attribute ‘read_pdf‘及类似问题解决办法 camelot 参数 https://blog.csdn.net/INTSIG/article/details/123000010 报错解决: Mod…

简析|创业老隋分享的人力RPO项目如何?

在当今社会,创业热潮席卷而来,各类项目层出不穷。近日,创业老隋分享的人力RPO项目引起了广泛关注。那么,这个项目究竟如何呢?是否靠谱?经过深入了解和分析,我认为这个项目是靠谱的。 首先,从项目的背景和…

2.1(TCP)

TCP—传输控制协议 是一种面向连接的可靠传输协议。可靠、有序、无丢弃和不重复。 特点: TCP是面向连接(虚连接)的传输层协议每一条TCP连接有且只能有两个端点。可靠、有序、无丢弃和不重复。TCP协议提供全双工通讯。 发送缓存 存放发送方…

Linux--Docker容器引擎

1、Docker是什么 Docker是在Linux容器里运行应用的开源工具,是一种轻量级的 “虚拟机”。诞生于2013年,最 初的发起者是dotCloud公司。后来改名为Docker Inc,专注于Docker相关技术和产品的开发。Docker 项目目前已经加人啊Linux基金会&#x…

迅雷网盘推广拉新怎么申请授权怎么赚钱?

迅雷网盘作为国内知名的云存储服务提供商,拥有庞大的用户群体和稳定的服务质量。为了进一步扩大市场份额,迅雷网盘推出了拉新项目,通过给予推广者一定的佣金,鼓励他们向更多的人推广迅雷网盘。 网盘功能强大:作为国内比…

【送外卖的你】送外卖对程序员的职业发展有影响吗

送外卖对程序员的职业发展可能会有一些影响,具体取决于个人情况和职业目标。以下是一些可能的影响: 1. 时间管理:送外卖可能需要花费较多的时间和精力,这可能会对程序员的工作时间和项目进度产生一定的影响。需要合理安排时间&…

Zookeeper(三)一致性算法Paxos

目录 1. Paxos算法是什么2. Paxos算法产生背景2.1. 拜占庭将军问题2.2. Paxos算法由来2.3 产生背景 3. 算法详解3.1 角色 & 提案提案 (Proposal)角色 3.2. 问题描述3.2.1. 一致性算法的前置条件3.2.2. 不同角色通过发送消息进行通信 3.3. 推导过程3.3.1. 只有一个Acceptor3…

【四 (6)数据可视化之 Grafana安装、页面介绍、图表配置】

目录 文章导航一、Grafana介绍[✨ 特性]二、安装和配置1、安装2、权限配置(账户/团队/用户)①用户管理②团队管理③账户管理④看板权限 3、首选项配置4、插件管理①数据源插件②图表插件③应用插件④插件安装方式一⑤安装方式二 三、数据源管理1、添加数…

程序计数器

程序计数器 JVM中的程序计数器(Program Counter Register)并非是广义上所指的物理寄存器,是对物理PC寄存器的一种抽象模拟 PC寄存器(程序计数器) PC寄存器用来存储指向下一条指令的地址,也即将要执行的指令代码。由执行引擎读取下一条指令。 它是一块很…

机器人在果园内行巡检仿真

文章目录 创建工作空间仿真果园场景搭建小车模型搭建将机器人放在仿真世界中创建工作空间 mkdir -p ~/catkin_ws/src cd ~/catkin_ws仿真果园场景搭建 cd ~/catkin_ws/src git clone https://gitcode.com/clearpathrobotics/cpr_gazebo.git小车模型搭建 DiffBot是一种具有两个…

视频技术2:把rtsp转为各种格式,包括webrtc

前题是启动ABLMediaServer,把ini里的hls_enable1 1、添加rtsp到视频服务器 http://127.0.0.1:7088/index/api/addStreamProxy?secret035c73f7-bb6b-4889-a715-d9eb2d1925cc&vhost_defaultVhost_&appMedia&streamCamera_00001&enable_hls1&ur…

HTML5+CSS3小实例:具有悬停效果的3D闪耀动画

实例:具有悬停效果的3D闪耀动画 技术栈:HTML+CSS 效果: 源码: 【HTML】 <!DOCTYPE html> <html lang="zh-CN"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, init…

电学基础知识

目录 电流 前言 电流的产生 电流的单位安培&#xff08;A&#xff09; 电路和电池 开路和闭路 电灯泡原理 对电池容量的理解 毫安时 毫瓦时 直流电和交流电 AC交流电 DC直流电 直流电和交流电对比 电压 对电器的电压和电流的理解 电阻 电压电阻电子的关系 欧…

Vulnhub - Raven2

希望和各位大佬一起学习&#xff0c;如果文章内容有错请多多指正&#xff0c;谢谢&#xff01; 个人博客链接&#xff1a;CH4SER的个人BLOG – Welcome To Ch4sers Blog Raven2 靶机下载地址&#xff1a;https://www.vulnhub.com/entry/raven-2,269/ 0x01 信息收集 Nmap扫描…