STM32 - Wi-Fi通讯

WiFi概述:

  1. Wi-Fi,又称“无线网路”,是Wi-Fi联盟的商标,一个基于IEEE 802.11标准的无线局域网技术。

  2. WIFI可以看成是IEEE 802.11的一种具体实现

  3. IEEE 802.11标准定义一个媒体访问控制(MAC)和几个物理层(PHY)规范,为局域内的固定,便携式和可移动终端(STA)提供无线连接,该标准还为监管机构提供了一种标准化方法,对局域网通信的一个或多个频带进行管理。

Wi-Fi的频段5G和2.4G:

  • 2.4G Wi-Fi与5G Wi-Fi最本质的区别即工作频段(无线电波的频率)不一样,5G Wi-Fi频段有更高的频率和频宽,可以提供更高的速率和更小的信道干扰。

    wifi1

Wi-Fi的信道:

  1. 目前用的频段有2个,5G和2.4G频段,每个频段又分为若干频道,又称为信道。如果把频段理解为高速公路的话,那么信道可以理解高速公路上的车道。

  2. 2.4G的信道:

    1. 在标准协议里将 2.4GHz 频段划分出 13 个相互交叠的信道,每个信道的频宽是20MHz(802.11g、802.11n每个信道占用20MHz,802.11b每个信道占用22MHz),每个信道都有自己的中心频率。

    2. 13 个信道可以找出 3 个独立信道,即没有相互交叠的信道。独立信道由于没有频率的交叠区,相邻 AP 使用这3个独立信道不会彼此产生干扰。

    3. 如下图中的1、6、11就是三个互不交叠的独立信道:

      wifi2

  3. 5G的信道:

    1. 标准协议将 5GHz 频段分为 24 个 20MHz 宽的信道,且每个信道都为独立信道。这为 WLAN 提供了丰富的信道资源,更多的独立信道也使得信道绑定更有价值。信道绑定是指将两个信道绑定成一个信道使用,能提供更大的带宽。如两个20MHz的独立信道绑定在一起可以获得40MHz的吞吐量,这好比将两条道路合并成一条使用,自然就提高了道路的通过能力。

    2. 下图中,黑色的半圆表示独立信道,红色的半圆表示标准协议推荐的信道绑定。

      wifi3

  4. 信道的穿墙能力:

    1. 5G Wi-Fi 相比 2.4G Wi-Fi 穿墙能力较弱,这是由电磁波的物理特性决定的:波长越长衰减越少,也更容易绕过障碍物继续传播。
    2. 5G 信号频率高、波长短,而 2.4G 信号频率低、波长长,所以 5G 信号穿过障碍物时衰减更大,穿墙能力比 2.4G 信号弱。

WiFi常见的概念:

  1. AP:

    1. 无线AP(Wireless Access Point)是“无线接入点”的缩写。单纯性无线AP就是一个无线的交换机,仅仅是提供无线信号发射的功能。其工作原理是将网络信号通过双绞线传送过来,经过AP产品的编译,将电信号转换成为无线电讯号发送出来,形成无线网的覆盖。

    2. 家用无线路由器可以看成是一个带路由功能的无线AP。

      wifi4

  2. STA(Station):

    1. STA 即站点,也称为无线客户端,指的是配备有无线网络接口的设备,如笔记本电脑、智能手机、平板电脑、无线打印机等。
  3. SSID(Service Set Identifier):

    1. SSID 即服务集标识符,是无线网络的名称。
    2. SSID 用于标识一个特定的无线网络,当多个接入点(AP)组成一个无线网络时,它们可以使用相同的 SSID,以便无线客户端能够识别并连接到这个网络。例如,在家庭或办公室中,无线路由器设置的网络名称就是 SSID。
  4. BSSID(Basic Service Set Identifier):

    1. BSSID 即基本服务集标识符,是接入点(AP)的媒体访问控制(MAC)地址。
    2. 每一个网络设备都有其用于识别的物理地址,称作MAC地址,一般情况下出厂会有一个默认值,可更改,也有其固定的命名格式,也是设备识别的标识符。
    3. BSSID 是针对设备说的,对于 STA 的设备来说,拿到 AP 接入点的 MAC 地址就是这个 BSSID。
  5. ESSID(Extended Service Set Identifier):

    1. ESSID 即扩展服务集标识符,实际上 ESSID 与 SSID 是相同的概念,只是在不同的语境下使用。如果有好几个无线路由器都叫这个名字,那么我们就相当于把这个 SSID 扩大了,所以这几个无线路由器共同的这个名字就叫ESSID。
    2. BSSID 就是具体的某个连锁店编号(001)或地址。SSID 就是连锁店的名字或者照片ESSID 就是连锁店的总公司或者招牌or品牌。一般SSID和ESSID都是相同的。

WiFi模块:

  1. ESP32-C3模块的特点:

    1. 高性能处理器:
      1. ESP32-C3 搭载 RISC-V 32位单核处理器,时钟频率高达160 MHz。
    2. 丰富的内存资源:
      1. 内置 400KB SRAM 和 384KB ROM,支持 SOC(片上系统)模式开发,为程序运行和数据存储提供了充足的空间,能够满足不同应用场景下的需求
    3. 多种外设接口:
      1. 具有22个可编程 GPIO管脚、内置 400 KB SRAM,支持通过 SPI、Dual SPI、Quad SPI 和 QPI 接口外接多个 flash,满足各类物联网产品功能需求。
    4. 行业领先的射频性能:
      1. ESP32-C3 集成 2.4 GHz Wi-Fi 和支持长距离的 Bluetooth 5(LE),有助于构建覆盖范围更广、射频性能更强的物联网设备。它还支持蓝牙 Mesh(Bluetooth Mesh)协议和乐鑫 Wi-Fi Mesh,在较高的工作温度下仍能保持卓越的射频性能。此外,ESP32-C3 的耐高温特性也使其成为照明和工控领域的理想选择。
    5. 完善的安全机制:
      1. ESP32-C3 支持基于 RSA-3072 算法的安全启动和基于 AES-128/256-XTS 算法的 flash 加密功能,确保设备安全连接;创新的数字签名模块和 HMAC 模块确保设备身份安全;支持加密算法的硬件加速器确保设备在本地网络和云上安全传输数据。
    6. 成熟的软件支持:
      1. ESP32-C3 沿用乐鑫成熟的物联网开发框架 ESP-IDF。ESP-IDF 已成功赋能了数以亿计的物联网设备,并历经了严格的测试和发布周期。开发人员基于其成熟的软件架构,凭借对 API 和工具的熟悉,将更容易构建 ESP32-C3 应用程序或进行程序迁移。ESP32-C3 也支持在从机模式下工作,可通过 ESP-AT 和 ESP-Hosted SDK 为外部主机 MCU 提供 Wi-Fi 与 Bluetooth LE 连接功能
  2. ESP32-C3的使用:

    1. ESP32-C3本身就可以作为一个单片机使用,但是可以把ESP32-C3作为一个Wi-Fi/蓝牙模块使用。

    2. 当STM32与ESP32-C3使用串口进行通讯时,STM32可以给ESP32-C3发送命令,这种命令叫ESP-AT指令。

    3. ESP-AT指令:

      1. ESP-AT 是乐鑫开发的可直接用于量产的物联网应用固件,旨在降低客户开发成本,快速形成产品。通过 ESP-AT 指令,可以快速加入无线网络、连接云平台、实现数据通信以及远程控制等功能,真正的通过无线通讯实现万物互联。

      2. ESP-AT 是基于 ESP-IDF 实现的软件工程。它使 ESP32-C3 模组作为从机,MCU 作为主机。MCU 发送 AT 命令给 ESP32-C3 模组,控制 ESP32-C3 模组执行不同的操作,并接收 ESP32-C3 模组返回的 AT 响应。

      3. ESP-AT 提供了大量功能不同的 AT 命令,如 Wi-Fi 命令、TCP/IP 命令、Bluetooth LE 命令、Bluetooth 命令、MQTT 命令、HTTP 命令、Ethernet 命令等。

      4. AT 命令以 “AT”开始,代表 Attention,以新的一行(CR LF)为结尾。输入的每条命令都会返回 OK 或 ERROR 的响应,表示当前命令的最终执行结果。

      5. 注意:所有 AT 命令均为串行执行,每次只能执行一条命令。因此,在使用 AT 命令时,应等待上一条命令执行完毕后,再发送下一条命令。如果上一条命令未执行完毕,又发送了新的命令,则会返回 busy p…

      6. 默认配置下,MCU 通过 UART 连接至 ESP32-C3 模组、发送 AT 命令以及接收 AT 响应。但是,用户也可以根据实际使用情况修改程序,使用其他的通信接口,例如 SDIO。同样,用户也可以基于 ESP-AT 工程,自行开发更多的 AT 命令,以实现更多的功能。

        wifi5

  3. ESP32-C3支持的WiFi工作模式:

    1. 基站模式,即 STA 模式或 Wi-Fi 客户端模式,此时 ESP32 连接到接入点 (AP)。相当于 ESP32 是手机,连接你家里的路由器。

      wifi6

    2. AP模式,即 Soft-AP 模式或接入点模式,此时基站连接到 ESP32。相当于ESP32是手机,给别人开热点。

      wifi7

    3. AP-STA共存模式,ESP32 既是接入点,同时又作为基站连接到另外一个接入点。相当于你手机蹭别人的wifi网,又给自己人开热点。

      wifi8

    • 上述模式的各种安全模式为WPA、WPA2 及 WEP 等。
    • 此模块还具有Scan扫描接入点功能,包括主动扫描和被动扫描。
    • 还可以使用混杂模式监控 IEEE802.11 Wi-Fi 数据包。

参考链接: