无线通信-WIFI通信

news2024/9/20 16:06:37

文章目录

    • 1. 基础知识
    • 2. 工作模式
    • 3. AT指令
    • 4. 常用AT指令实例
    • 5. 连接原子云
    • 6. 使用usb转ttl模块测试ATK-MW8266D
    • 7. 使用STM32F103ZET6战舰开发板透传模式
    • 8. 使用STM32F103ZET6战舰板连接原子云

1. 基础知识

  • ATK-ESP-01

    ATK-ESP-01模块支持标准的IEEE802.11b/g/n协议,完整的TCP/IP协议栈。我们可以使用该模块为现有的设备添加联网功能,也可以构建独立的网络控制器。

  • 引脚定义

    ATK-ESP-01模组共接出16个接口:

在这里插入图片描述

在这里插入图片描述

  • 工作模式:

    在这里插入图片描述

  • ATK-MW8266d模块

    ATK-MW8266D模块是正点原子推出的一款高性能UART-WIFI(串口-无线)模块, ATK-MW8266D模块板载了正点原子公司自主研发的ATK-ESP-01模块,该模块通过FCC、 CE认证,可直接用于出口欧美地区的产品。

    ATK-MW8266D模块采用串口(LVTTL)与MCU(或其他串口设备)通讯,且内置TCPP协议栈,能够实验串口与WFI之间的转换。通过ATK-MW8266D模块,传统的串口设备只需要简单的串口配置,即可通过网络(WFI)传输自己的数据。

在这里插入图片描述

ATK-MW8266D模块的各个引脚的详细描述:

在这里插入图片描述

2. 工作模式

ATK-MW8266D模块支持三种工作模式,分别为:STA、AP、STA+AP。
在这里插入图片描述

  1. STA模式

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

  2. AP模式

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

  3. STA+AP模式

    该模式为STA模式与AP模式共存的一种模式,ATK-MW8266D模块既能连接至其他设备提供的无线网络,又能作为热点,供其他设备连接,以实现广域网与局域网的无缝切换,方便操作使用。

除了上述的三种工作模式外,ATK-MW8266D模块在进行UDP连接或作为TCP客户端连接时,能够进入透传模式,进入透传模式后,ATK-MW8266D将会原封不动地把从TCP服务器或其他UDP终端接收到的消息,通过UART发送至与之连接的设备。

3. AT指令

  • AT指令说明

    类型指令格式描述
    测试指令AT+<CMD>=?该命令用于查询设置指令的参数以及取值范围
    查询指令AT+<CMD>?该命令用于返回参数的当前值
    设置指令AT+<CMD>=<...>该命令用于设置用户自定义的参数值
    执行指令AT+<CMD>该命令用于执行受模块内部程序控制,且参数不可变的的功能
  • 基础AT指令

    指令描述
    AT测试 AT启动
    AT+RST重启模块
    AT+GMR查看版本信息
    ATE开关回显功能
    AT+RESTORE恢复出厂设置
    AT+UARTUART配置

    在这里插入图片描述

    在这里插入图片描述

  • WIFI功能AT指令

    指令描述
    AT+CWMODE设置WIFI模式(STA、AP、STA+AP)
    AT+CWJAP连接 AP
    AT+CWLAP扫描附近的 AP 信息
    AT+CWQAP与 AP 断开连接
    AT+CWSAP设置 AP模式的配置
    AT+CWLIF获取已接入设备的信息
    AT+CWDHCP设置 DHCP
    AT+CWAUTOCONN设置上电时是否自动连接 AP
    AT+CIPSTAMAC设置 STA模式下的 MAC 地址
    AT+CIPAPMAC设置 AP 模式下的 MAC地址
    AT+CIPSTA设置 STA 模式下的 IP 地址
    AT+CIPAP设置 AP模式下的IP地址
    AT+CWSTARTSMART开始 SmartConfig
    AT+CWSTOPSMART停止 SmartConfig
    AT+WPS设置 WPS 功能
    AT+MDNS设置 MDNS 功能
    AT+CWHOSTNAME设置主机名
  • TCP/IP相关AT指令

    指令描述
    AT+CIPSTATUS查询网络连接信息
    AT+CIPDOMAIN域名解析功能
    AT+CIPSTART建立 TCP 连接、UDP 传输或 SSL 连接
    AT+CIPSSLSIZE设置 SSL 缓冲大小
    AT+CIPSEND发送数据
    AT+CIPCLOSE关闭 TCP 连接、UDP 传输或 SSL 连接
    AT+CIFSR查询本地 IP 地址
    AT+CIPMUX设置多连接模式
    AT+CIPSERVER设置TCP服务器
    AT+CIPMODE设置透传模式
    AT+SAVETRANSLINK保存透传连接到 Flash
    AT+CIPSTO设置 TCP 服务器的超时时间
    AT+PINGPing 功能
    AT+ATKCLDSTA连接到原子云服务器
    AT+ATKCLDCLS关闭原子云服务器连接

4. 常用AT指令实例

  • AP模式下作TCP服务器

    发送指令作用
    AT+CWMODE=2设置为 AP 模式
    AT+RST重启生效
    AT+CWSAP=“ATK-MW8266D”, “12345678”,1,4设置AP参数。SSID 为 ATK-MW8266D、密码为12345678、 通道为1、加密方式为WPA_WPA2_PSK
    AT+CIPMUX=1开启多连接
    AT+CIPSERVER=1,8086开启 SERVER 模式,端口号为8086
    AT+CIPSEND=0,25向 ID0 发送25字节数据包
  • AP模式下作TCP客户端

    发送指令作用
    AT+CWMODE=2设置为 AP 模式
    AT+RST重启生效
    AT+CWSAP=“ATK-MW8266D”, “12345678”,1,4设置AP参数。SSID 为ATK-MW8266D、密码为12345678、 通道为1、加密方式为 WPA_WPA2_PSK
    AT+CIPMUX=0开启单连接
    AT+CIPSTART=“TCP”, “192.168.4.XXX”,8086建立 TCP 连接到192.168.4.XXX:8086
    AT+CIPMODE=1开启透传模式(仅单连接Client时支持)
    AT+CIPSEND开始发送数据
  • AP模式下作UDP连接

    发送指令作用
    AT+CWMODE=2设置为 AP 模式
    AT+RST重启生效
    AT+CWSAP=“ATK-MW8266D”, “12345678”,1,4设置 AP参数。SSID 为ATK-MW8266D、密码为12345678、 通道为1、加密方式为WPAWPA2PSK
    AT+CIPMUX=0开启单连接
    AT+CIPSTART=“UDP”, ““192.168.4.XXX”,8086建立 UDP 连接到192.168.4.XXX:8086
    AT+CIPSEND=25向目标 UDP发送25字节数据
  • STA模式下作TCP服务器

    发送指令作用
    AT+CWMODE=1设置为STA 模式
    AT+RST重启生效
    AT+CWJAP=“ATK-MW8266D” “12345678”加入WiFi热点。SSID:ATK-MW8266D、密码:12345678
    AT+CIPMUX=1开启多连接
    AT+CIPSERVER=1,8086开启 SERVER 模式,端口号为8086
    AT+CIPSEND=0,25向 ID0发送25字节数据包
  • STA模式下作TCP客户器

    发送指令作用
    AT+CWMODE=1设置为 STA 模式
    AT+RST重启生效
    AT+CWJAP=“ATK-MW8266D”, “12345678"”加入WiFi热点。SSID:ATK-MW8266D、密码:12345678
    AT+CIPMUX=0开启单连接
    AT+CIPSTART="TCP’, “192.168.4.XXX”,8086建立 TCP 连接到192.168.4.XXX:8086
    AT+CIPMODE=1开启透传模式(仅单连接Client 时支持)
    AT+CIPSEND开始发送数据
  • STA模式下作UDP连接

    作用
    AT+CWMODE=1设置为 STA 模式
    AT+RST重启生效
    AT+CWJAP=“ATK-MW8266D”, “12345678"”加入WiFi热点。SSID:ATK-MW8266D、密码:12345678
    AT+CIPMUX=0开启单连接
    AT+CIPSTART=“UDP”, “192.168.4.XXX",8086建立 UDP 连接到192.168.4.XXX:8086
    AT+CIPSEND=25向目标 UDP 发送 25 字节数据
  • AP+STA模式下作TCP服务器

    发送指令作用
    AT+CWMODE=3设置为AP+STA 模式
    AT+RST重启生效
    AT+CWSAP=“ATK-MW8266D”,“12345678”,1,4设置 AP参数。SSID 为ATK-MW8266D、密码为12345678、
    AT+CWJAP=“ALIENTEK”,“12345678”通道为1、加密方式为WPA_WPA2_PSK 加入WiFi热点。SSID:ALIENTEK、密码:12345678
    AT+CIPMUX=1开启多连接
    AT+CIPSERVER=1,8086开启SERVER 模式,端口号为8086
    AT+CIPSTO=1200设置服务器超时时间1200s
    AT+CIPSEND=0,25向 IDO 发送数据
    AT+CIPSEND=1,25向 ID1 发送数据
  • AP+STA模式下作TCP客户器

    发送指令作用
    AT+CWMODE=3设置为AP+STA 模式
    AT+RST重启生效
    AT+CWSAP=“ATK-MW8266D”, “12345678”,1,4设置 AP参数。SSID 为 ATK-MW8266D、密码为12345678、 通道为1、加密方式为 WPA_WPA2_PSK
    AT+CWJAP=“ALIENTEK”, “12345678”加入WiFi热点。SSID:ALIENTEK、密码:12345678
    AT+CIPMUX=1开启多连接
    AT+CIPSTART=O,“TCP”, “192.168.4.XXX”,8086建立 TCP 连接到 192.168.4.XXX:8086
    AT+CIPSEND=0,25向 IDO 发送数据
    AT+CIPSEND=1,25向 ID1 发送数据
  • AP+STA模式下作UDP连接

    发送指令作用
    AT+CWMODE=3设置为 AP+STA 模式
    AT+RST重启生效
    AT+CWSAP=“ATK-MW8266D”, “12345678”,1,4设置 AP 参数。SSID 为 ATK-MW8266D、密码为 12345678、 通道为1、加密方式为WPA_WPA2_PSK
    AT+CWJAP=“ALIENTEK”, “12345678"”加入WiFi热点。SSID:ALIENTEK、密码:12345678
    AT+CIPMUX=1开启多连接
    AT+CIPSERVER=1,8086开启服务器,端口号8086
    AT+CIPSTO=1200设置服务器超时时间1200s
    AT+CIPSTART=O,“UDP”, ““192.168.1.XXX”,8086STA 作为 ID0 连接到192.168.1.XXX:8086
    AT+CIPSEND=0,25向 IDO 发送数据
    AT+CIPSEND=1,25向 ID1 发送数据

5. 连接原子云

原子云即原子云服务器,是正点原子推出的互联网云服务平台,它可以实现数据的远程监控、转发和管理等功能,在未来也会持续更新更多的功能以满足用户的需求。原子云域名为:cloud.alientek.com,端口号为:59666。

使用步骤:

  1. 登录"https://cloud.alientek.com/"创建并登录账号

    在这里插入图片描述

  2. 点击设备管理->新增设备->ESP8266

    在这里插入图片描述

  3. 设置新增设备名称和密码

    在这里插入图片描述

  4. 点击新增,创建完成

    在这里插入图片描述

  5. 点击分组管理->新增分组

    在这里插入图片描述

  6. 选中序号->移入->保存

    在这里插入图片描述

6. 使用usb转ttl模块测试ATK-MW8266D

  • 硬件连接:

    在这里插入图片描述

  • 打开串口调试助手,发送AT指令进行测试

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

7. 使用STM32F103ZET6战舰开发板透传模式

  • 硬件连接:

    在这里插入图片描述
    过程中发现很多问题,然后一直无法完成硬件初始化,是因为线路连接问题,这里USART3的跳线帽要连接到 GBC;USART1要把PA9、PA10连接到RXD和TXD,使用USB数据线连接USB_UART,wifi模块插入方式如上 图所示。

  • 软件设置:

    //1.恢复出厂设置
    atk_mw8266d_send_at_cmd("AT+RESTORE", "ready", 3000);
    //2.AT测试
    atk_mw8266d_send_at_cmd("AT", "OK", 500);
    //3.STA模式
    atk_mw8266d_send_at_cmd("AT+CWMODE=1", "OK", 500); 
    //4.软件复位
    atk_mw8266d_send_at_cmd("AT+RST", "OK", 500);
    //5.关闭回显
    atk_mw8266d_send_at_cmd("ATE0", "OK", 500);
    //6.连接EIFI
    sprintf(cmd, "AT+CWJAP=\"%s\",\"%s\"", ssid, pwd);
    atk_mw8266d_send_at_cmd(cmd, "WIFI GOT IP", 10000);
    //7.获取IP地址
    atk_mw8266d_send_at_cmd("AT+CIFSR", "OK", 500);
    //8.连接TCP服务器
    sprintf(cmd, "AT+CIPSTART=\"TCP\",\"%s\",%s", server_ip, server_port);
    atk_mw8266d_send_at_cmd(cmd, "CONNECT", 5000);
    //9.开启透传模式
    atk_mw8266d_send_at_cmd("AT+CIPMODE=1", "OK", 500);
    //10.开始发送数据
    atk_mw8266d_send_at_cmd("AT+CIPSEND", ">", 500);
    

    从上述软件配置过程可以看出,基本与我们使用usb转ttl相同。

  • 注意事项:

    1. 模块的wifi要与电脑的wifi连接到同一个AP上面

    2. 修改代码:

      在这里插入图片描述

  • 实验结果:
    在这里插入图片描述

    从实验结果分析,已经建立连接,并开启透传模式,成功发送数据。

8. 使用STM32F103ZET6战舰板连接原子云

  • 硬件连接:

    与透传模式硬件连接图相同。

  • 软件设置:

    //1.恢复出厂设置
    atk_mw8266d_send_at_cmd("AT+RESTORE", "ready", 3000);
    //2.AT测试
    atk_mw8266d_send_at_cmd("AT", "OK", 500);
    //3.STA模式
    atk_mw8266d_send_at_cmd("AT+CWMODE=1", "OK", 500); 
    //4.软件复位
    atk_mw8266d_send_at_cmd("AT+RST", "OK", 500);
    //5.关闭回显
    atk_mw8266d_send_at_cmd("ATE0", "OK", 500);
    //6.连接EIFI
    sprintf(cmd, "AT+CWJAP=\"%s\",\"%s\"", ssid, pwd);
    atk_mw8266d_send_at_cmd(cmd, "WIFI GOT IP", 10000);
    //7.获取IP地址
    atk_mw8266d_send_at_cmd("AT+CIFSR", "OK", 500);
    //8.连接原子云
    sprintf(cmd, "AT+ATKCLDSTA=\"%s\",\"%s\"", id, pwd);
    ret = atk_mw8266d_send_at_cmd(cmd, "CLOUD CONNECTED", 10000);
    //9.接收原子云发送的数据
    atk_mw8266d_uart_rx_restart();
    
  • 注意事项:

    在这里插入图片描述

  • 实验结果:

    在这里插入图片描述

    原子云向单片机发送的信息,我们代码中设置了发送数据控制LED0的亮灭,发送1控制LED0点亮,然后回传灯亮。

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

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

相关文章

scriptlet failed, exit status 1

执行命令&#xff1a;rpm -evh percona-release-1.0-29.noarch 报错信息&#xff1a; mv: cannot stat ‘/etc/yum.repos.d/percona-telemetry-release.repo’: No such file or directory error: %preun(percona-release-1.0-29.noarch) scriptlet failed, exit status 1 …

面试必备!15个SSH服务器经典问题,助你轻松过关斩将!

SSH(Secure Shell)是Linux系统中最常用的远程管理工具之一&#xff0c;掌握它是每个运维工程师的必备技能。在面试中&#xff0c;关于SSH服务器的相关问题经常会被问到。本文将列出15个常见的SSH服务器面试题&#xff0c;并提供简要解答&#xff0c;帮助你在面试中脱颖而出。 什…

使用 Puppeteer 在 PHP 中解决 reCAPTCHA 以进行网页抓取

您是否在抓取数据时遇到 reCAPTCHA 障碍&#xff1f;我也遇到过。这些 CAPTCHA 挑战会将简单的抓取任务变成一大障碍。但别担心&#xff0c;我有一个解决方案可以帮助您轻松绕过这些障碍。 在本博文中&#xff0c;我将引导您使用 Puppeteer&#xff08;一个功能强大的 Node.js…

【Java设计模式】Bridge模式:在Java中解耦抽象与实现

文章目录 【Java设计模式】Bridge模式&#xff1a;在Java中解耦抽象与实现一、概述二、Bridge设计模式的别名三、Bridge设计模式的意图四、Bridge模式的详细解释及实际示例五、Java中Bridge模式的编程示例六、Bridge模式类图七、Java中何时使用Bridge模式八、Java中Bridge模式的…

如何使用ssm实现毕业生交流学习平台+vue

TOC ssm306毕业生交流学习平台vue 绪论 1.1 研究背景 现在大家正处于互联网加的时代&#xff0c;这个时代它就是一个信息内容无比丰富&#xff0c;信息处理与管理变得越加高效的网络化的时代&#xff0c;这个时代让大家的生活不仅变得更加地便利化&#xff0c;也让时间变得…

某系统任意用户创建漏洞

初来人间不知苦&#xff0c;潦倒半生一身无&#xff0c;转身回望来时路&#xff0c;方知生时为何哭。 漏洞描述 某系统存在任意用户创建漏洞&#xff0c;发送特定的请求包攻击者可以创建管理员账户登录后台 漏洞实战 出现漏洞的文件为 userproce.php&#xff0c;出现漏洞的…

汽车免拆诊断案例 | 马自达CX-3无音频输出

故障现象&#xff1a; 使用触摸屏打开收音机时&#xff0c;单选按钮打开收音机&#xff0c;但无法访问菜单。使用中控台中的旋转控制旋钮时&#xff0c;也会遇到相同的情况。 没有音频输出到车上的任何扬声器&#xff0c;包括卫星导航、蓝牙或语音识别。音量调节也不起作用&a…

食家巷大烤馍,美味超实在

在美食的世界里&#xff0c;总有一些味道能勾起我们内心深处的温暖回忆&#xff0c;食家巷大烤馍便是其中之一。 每一个食家巷大烤馍都是匠心的结晶。首先&#xff0c;精选优质的面粉&#xff0c;确保了烤馍的基础品质。这些面粉经过严格的筛选&#xff0c;颗粒细腻&#xff0c…

2024/8/28 英语每日一段

“Its great were getting these investments, but you actually cant materialize the benefits of these investments if the cities actually cant afford to run it,” he said. All of the eight cities say the planned expansions, such as new light rail lines in Ott…

掌握高效管理技巧:9款顶级待办事项软件

本文将介绍9款优质待办事项清单工具&#xff1a;1.PingCode&#xff1b;2.Worktile&#xff1b;3.滴答清单 (TickTick)&#xff1b;4.日事清&#xff1b;5.效能工作任务&#xff1b;6.印象笔记&#xff1b;7.MyLifeOrganized&#xff1b;8.Quire&#xff1b;9.OmniFocus。 在当…

CTFhub通关攻略-SSRF篇【1-5关】

01关 内网访问 根据题意&#xff0c;它让我们去尝试访问127.0.0.1的flag.php&#xff0c;我们点进题目链接 有一个url参数可以进行输入&#xff0c;我们直接访问127.0.0.1的flag.php 这样就得到了flag 02 伪协议读取文件 点开题目链接发现有一个url的参数可以进行填写 题中说让…

【贪心 决策包容性 】757. 设置交集大小至少为2

本文涉及知识点 贪心 决策包容性 LeetCode757. 设置交集大小至少为2 给你一个二维整数数组 intervals &#xff0c;其中 intervals[i] [starti, endi] 表示从 starti 到 endi 的所有整数&#xff0c;包括 starti 和 endi 。 包含集合 是一个名为 nums 的数组&#xff0c;并…

redis核心数据结构源码分析

dictEntry和redisObject 在 Redis 的实现中&#xff0c;当一个键值对被创建并存储时&#xff0c;键通常是一个字符串&#xff0c;而值则是一个 redisObject。因此&#xff0c;在 dictEntry 结构中&#xff0c;key 成员指向的是一个字符串&#xff0c;而 v.val 成员则指向一个 …

《深入理解JAVA虚拟机(第2版)》- 第2章 - 学习笔记

第二章 Java内存区域与内存溢出异常 2.1 概述 JVM是自动内存管理 2.2 运行时数据区 所谓运行时数据区是JVM在运行Java程序的时候将所管理的内存划分为几块不同的数据区域&#xff0c;分为&#xff1a;程序计数器、Java虚拟机栈、本地方法栈、Java堆、方法区&#xff0c;如下…

樊振东代言LV旗下品牌,媒介易解读冠军代言背后的商业逻辑

​近日&#xff0c;法国奢侈品巨头LVMH旗下的德国知名拉杆箱品牌RIMOWA宣布&#xff0c;中国乒乓球奥运冠军樊振东成为其品牌挚友。这一合作不仅是RIMOWA对樊振东在巴黎奥运会上出色表现的认可&#xff0c;也标志着品牌与体育冠军联手打造品牌形象的趋势日益显著。 樊振东&…

Moco求解最优化问题使用教程

理论部分 最简单的例子&#xff0c;流程 输出结果分析 理论部分 moco最终是调用CasAdi求解器来进行求解 对不常见的几个符号表达式含义进行解释&#xff1a; 多刚体动力学公式代表系统中&#xff0c;f_inertial (惯性力和科里奥利力)&#xff1b;f_app (外力和接触力)&…

SQL注入-ctfshow

首先还是对sql的具体分析和讲解 原理&#xff1a; SQL注入是一种安全漏洞&#xff0c;它允许攻击者通过在应用程序的输入中插入或者操作SQL命令来改变后端数据库的查询和操作。SQL注入的主要原因是代码中直接将用户输入与SQL命令拼接在一起&#xff0c;没有进行适当的验证或清…

网络安全可以从事哪些岗位岗位职责是什么网络安全专业的就业前景

网络安全可以从事哪些岗位 伴随着社会的发展&#xff0c;网络安全被列为国家安全战略的一部分&#xff0c;因此越来越多的行业开始迫切需要网安人员&#xff0c;也有不少人转行学习网络安全。那么网络安全可以从事哪些岗位?岗位职责是什么?相信很多人都不太了解&#xff0c;…

『功能项目』着色器光透魔法球Shaders【09】

我们打开上一篇08技能释放的项目&#xff0c; 本章要做的事情是为魔法球增添一个光透效果shaders。 首先在Assets中创建一个Shaders文件夹 接着将场景中的灯光调暗一些&#xff08;避免灯光太强压过将要设置半透明光透效果的魔法球&#xff09; 将新Resources中的Shpere拖拽至…

MQTT服务器-mosquitto配置

我们要使用ESP8266使得STM32能够和服务器之间传递数据&#xff0c;需要有一台MQTT服务器。当然读者可以使用腾讯云、阿里云、OneNet等平台提供的MQTT服务更方便一些。 逻辑是这样的&#xff1a;我们首先需要一台服务器A作为中转站&#xff0c;然后我们的STM32作为客户端能够发…