[杂谈]-ESP32中的无线通信协议

news/2024/12/22 1:29:22/

ESP32中的无线通信协议

文章目录

  • ESP32中的无线通信协议
    • 1、ESP32 无线通信协议简介
    • 2、Bluetooth Low Energy (BLE)
    • 3、**Bluetooth Classic**
    • 4、**ESP-NOW**
    • 5、Wi-Fi(客户端-服务器通信协议)
    • 6、MQTT
    • 7、**LoRa**
    • 8、**GSM/GPRS/LTE**
    • 9、总结

ESP32是一个基于微控制器的物联网平台,集成了Wi-Fi和蓝牙模块可用。和所有其他微控制器板一样,ESP32也有可以发送和接收数据的通信协议。例如UART和SPI,但它也支持很大范围无线通信协议,由于其蓝牙和 Wi-Fi。本文将详细介绍ESP32中的无线通信协议。

1、ESP32 无线通信协议简介

通信协议是一组不同的规则,允许两个或多个实体通过由于身体活动引起的任何类型的外部变化在它们之间交换数据。

同样,无线通信协议是物联网设备用于无线交换数据的一组规则。ESP32中的无线通信协议主要有如下几种:

  • Bluetooth Low Energy (BLE)
  • Bluetooth Classic
  • ESP-NOW
  • Wi-Fi (client-server communication protocols)
  • MQTT
  • LoRa
  • GSM/GPRS/LTE

下面将一一介绍这些协议。

2、Bluetooth Low Energy (BLE)

低功耗蓝牙 (BLE) 是一种节能蓝牙技术。其主要用途是使用最小功率进行短距离和低数据传输,这使其成为可穿戴设备和家庭自动化设备的理想选择。

在这里插入图片描述

与经典蓝牙始终保持开启不同,BLE 进入深度睡眠模式直到发起连接,这使得它消耗的功率比经典蓝牙低。BLE 支持点对点通信、广播模式和网状网络。以下是 BLE 的一些主要亮点:

  • 低功耗
  • 传输少量数据
  • 低带宽
  • 近距离通信

3、Bluetooth Classic

Bluetooth classic 是一种无线通信协议,允许两个设备在不需要有线支持的情况下进行通信。

在这里插入图片描述

Bluetooth classic 针对连续数据传输进行了优化,它比 BLE 消耗更多的功率。以下是 Bluetooth classic 的一些主要亮点:

  • 短距离传输
  • 大数据传输
  • 连续数据流传输

4、ESP-NOW

ESP-NOW 是乐鑫设计的一种无线通信协议,可以进行短数据包传输。

在这里插入图片描述

该协议类似于低功耗 2.4GHz 无线连接,一旦两个设备配对,它们之间就会建立点对点连接,不需要握手。以下是一些令人惊叹的 ESP-NOW 功能:

  • 快速沟通
  • 加密和未加密通信
  • 最多 250 字节的有效负载
  • 在清晰开阔的视线范围内,通信距离可达 250 米

5、Wi-Fi(客户端-服务器通信协议)

Wi-Fi(无线保真)是一种无线通信协议,通常用于局域网设备和在网络内提供互联网服务。 它允许附近的设备使用无线电波交换数据。 以下是 Wi-Fi 工作的一些主要模式:

  • HTTP 请求
  • 服务器发送的事件
  • WebSocket

在这里插入图片描述

HTTP 请求
客户端使用 HTTP(超文本传输协议)来构建 Internet 上的请求和响应。 生成请求的主要目的是访问服务器上的数据。 要生成此请求,客户端使用 URL(统一资源定位符),它是信息源的地址。

HTTP 请求允许在 ESP32 开发板之间交换数据。 一块板可以充当服务器,另一块板可以充当客户端。 ESP32 还可以通过互联网向第三方服务器发出请求,因为 ESP32 需要互联网连接。

服务器发送的事件

SSE 或服务器发送事件允许客户端使用 HTTP 通道从服务器接收自动数据流。 客户端生成SSE连接请求,服务器向客户端发送数据。 客户端可以从服务器接收更新,但在初始握手后它不能发送任何类型的数据。

当我们需要发送一些传感器读数而不需要服务器请求时,服务器发送事件很有用。 例如,定期或以通知形式发送传感器数据。

WebSocket
WebSocket 是使用 TCP 连接的客户端和服务器之间的双向通信。 这意味着可以在任何给定时间轻松地从客户端向服务器发送数据,反之亦然。 它是在单个 TCP 通道上的全双工通信协议。

6、MQTT

MQTT(消息队列遥测传输)专为网络支持和带宽有限的远程设备而设计。

在这里插入图片描述

MQTT 是物联网设备的完美选择。 要使用 MQTT 服务,需要一个 MQTT 代理来接收所有消息并过滤消息并将其发布到订阅的客户端。

7、LoRa

LoRa 代表通常针对物联网网络的远程无线电。 该技术使公共网络能够连接到在同一网络上运行的多个应用程序。 LoRa 是一种基于硬件的技术,它使用由 Semtech LoRa 收发器芯片生成的调制技术。

在这里插入图片描述

LoRa 具有低带宽,这意味着可以传输少量数据以进行远距离通信。 此外,它允许以更低的功耗进行远距离通信。 以下几点突出了 LoRa 的主要工作:

  • 远距离通信
  • 抗干扰能力强
  • 更少的功耗
  • 低带宽较少的数据传输量

8、GSM/GPRS/LTE

ESP32 还支持调制解调器,可以发送和接收短信、电话等数据,并且可以像我们在智能手机中一样使用 sim 卡连接到互联网。 一些调制解调器还可以为我们提供高度、位置数据和时间等数据。

在这里插入图片描述

市场上有很多模块可用于将 GSM 与 ESP32 连接,但是默认情况下有不同的板可用这些功能。

9、总结

每个微控制器进行通信都需要通信协议。 ESP32 内部的无线通信协议高度依赖 Wi-Fi 和双蓝牙技术。 拥有一套无线通信协议使 ESP32 成为物联网基础项目的理想选择。 要阅读有关通信协议的更多信息,请详细阅读文章。


http://www.ppmy.cn/news/1130349.html

相关文章

ChatGPT,AIGC 助力人力资源管理对身份证号处理

HR,行政,文员办公对于员工信息管理中有一项目非常重要的操作,便是从身份证号中提取相关信息如下: 可以用ChatGPT完成三个字段的提取与计算。 我们先让ChatGPT描述一下身份证号每一位都代表什么意思。 接下来从身份证号中提取出生…

运行软件mfc100u.dll缺失是怎么办?mfc100u.dll丢失解决方法分享

Mfc100u.dll 丢失的问题可能困扰着许多使用计算机的用户。Mfc100u.dll 是一个重要的动态链接库文件,它包含了许多功能模块,如字符串处理、数学计算、文件操作等。当 Mfc100u.dll 文件丢失或损坏时,可能会导致许多应用程序无法正常运行&#x…

算法练习5——多数元素

LeetCode 多数元素 给定一个大小为 n 的数组 nums ,返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。 你可以假设数组是非空的,并且给定的数组总是存在多数元素。 蛮力法 双重循环,不过会超时 class Solution:de…

多线程 dispatch

51423 https://blog.csdn.net/yanhaijunyan/article/details/115083522

VisualStudio配置OpenCV环境

VS2022配置OpenCV环境 记录一下Windows上VS配置OpenCV环境的过程。(VS2022 OpenCV4.8) 一、下载OpenCV 从官网或者镜像网站下载Windows版OpenCV。4.8版本的文件为opencv-4.8.0-windows.exe 双击解压到自定义目录,我这边是:E:…

系统集成|第二十章(笔记)

目录 第二十章 收尾管理20.1 项目验收20.2 项目总结20.3 系统维护20.4 项目后评价20.5 扩展 上篇:第十九章、风险管理 下篇:第二十一章、知识产权与法律法规 第二十章 收尾管理 项目收尾管理是系统集成项目管理中一个特殊的阶段,容易收到多方…

ubuntu下源码编译方式安装opencv

基础条件 ubuntu 20.04 opencv 3.4.3 opencv 源码编译的安装步骤 第一步, 首先clone源码 git clone https://github.com/opencv/opencv.git第二步,依赖包,执行下面的命令 sudo apt-get install build-essential sudo apt-get install cmak…

最新影视视频微信小程序源码-带支付和采集功能/微信小程序影视源码PHP(更新)

源码简介: 这个影视视频微信小程序源码,新更新的,它还带支付和采集功能,作为微信小程序影视源码,它可以为用户 提供丰富的影视资源,包括电影、电视剧、综艺节目等。 这个小程序影视源码,还带有…