在本指南中,我们将向您展示如何使用ESP-NOW通信协议在两个ESP32板之间建立双向通信。 例如,两个ESP32板将交换传感器读数(在空旷的范围内可达220米〜722英尺)。

介绍ESP-NOW

ESP-NOW是乐鑫开发的无连接通信协议,具有短数据包传输的功能。此协议使多个设备无需使用Wi-Fi即可相互通信。

这是一种快速的通信协议,可用于在ESP32板之间交换小消息(最大250字节)。 ESP-NOW具有多种用途,您可以采用不同的安排进行单向或双向通信。

在本文中,我们将向您展示如何在两个ESP32板之间建立双向通信。

项目概述

下图显示了我们将构建的项目的高级概述。

  • 在此项目中,我们将有两个ESP32开发板。每个板都连接到OLED显示器和BME280传感器
  • 每个板都从其相应的传感器获取温度,湿度和压力读数
  • 每块板通过ESP-NOW将其读数发送到另一块板
  • 当电路板接收到读数时,会将其显示在OLED显示屏上
  • 发送读数后,如果成功发送了消息,则开发板将在OLED上显示;否则,将显示错误消息
  • 每个板都需要知道另一个板的MAC地址才能发送消息

在此示例中,我们使用了两个板之间的双向通信,但是您可以在此设置中添加更多板,并使所有板相互通信。

先决条件

安装库

所需零件

获取单板的MAC地址

原理图

ESP32双向通讯ESP-NOW代码

将以下代码上传到每个板上。在上传代码之前,您需要输入另一块板(您要向其发送数据的板)的MAC地址。

代码如何工作

演示

详情参阅 - 亚图跨际

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐