问题标签 [esp32]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
8547 浏览

esp32 - 两个 ESP32 之间的串行通信

我找到了基本 arduino 到 arduino 串行通信的示例,但无法让那些在 ESP32 板上工作的示例。我试图在两个 ESP32 之间做同样的事情。两者是连接的:

简单的草图:

完成这项工作还需要什么?

0 投票
1 回答
2521 浏览

esp8266 - ESP32 深度睡眠唤醒,禁用 RF

我曾经使用带有深度睡眠选项的 esp8266 来使用定时器唤醒并像这样使用禁用的 RF 唤醒 ESP.deepSleep(TimeInMicro, WAKE_NO_RFCAL); 但是现在我使用的是 esp32。我找到了如何使用定时器唤醒它,但我找不到使用禁用 RF 唤醒的选项。我的问题是这个选项在 esp32 中是否可行,如何实现?

谢谢

0 投票
2 回答
873 浏览

arduino - 在 ESP8266 上使用 DeepSleep 进行精确计时

我有一个 ESP8266,我用它通过 MQTT 记录天气数据。因为我想节省一些电量,所以我决定使用 DeepSleep。由于我想记录数据,如果我可以每分钟发送新条目会很好。

这曾经与我的旧草图一起工作,我在循环部分中有所有数据采集任务,并且我保持与 WiFi 和 MQTT 服务器的连接打开。

但这不适用于 DeepSleep。每次唤醒后我都需要重新连接,每次唤醒后,ESP8266 基本上都会重新启动。

因为这不会在每次唤醒时花费完全相同的时间,所以我想知道是否有办法让 ESP8266 登录完全相同的时间戳并在其间进入 DeepSleep?

这是 DeepSleep 算法的代码示例:

这是来自 PhpMyAdmin,为了更好地可视化问题:

在此处输入图像描述

如果不能用 ESP8266 完成,ESP32 可能有帮助吗?

0 投票
1 回答
1554 浏览

microcontroller - SPI 事务提前终止 - ESP-IDF

使用 ESP-IDF (ESP32 SDK) 的 ESP32 应用程序与同一 SPI 总线上的两个 SPI 从机(ILI9341 TFT 驱动器,NRF24L01+ RF 收发器)进行通信。总的来说,它工作得很好。然而,从射频收发器接收到的一些数据被截断,即只有前几个字节是正确的,其余的都是垃圾。

该问题或多或少是可重现的,并且仅在接收截断数据之前立即与其他从机(TFT 驱动程序)进行 SPI 通信时才会发生。

有问题的 SPI 事务是一个全双工事务,它在接收 10 个字节的同时发送一个命令字节和 10 个虚拟字节。它使用 VSPI 总线和 DMA 通道 1。如果出现问题,只有前几个字节是正确的,而后 2 到 6 个字节是无效的(0 或虚拟字节的值)。

我深入研究了 SDK 代码 ( ),添加了调试代码,并在 DMA 的结构spi_master.c中观察到了一个令人惊讶的值:lldesc_t

在事务开始时,它用length = 0x0c和初始化size = 0x0c。0x0c 是 12 个字节,即四舍五入到下一个字的 10 个字节。

在事务结束时,值为length = 0x07size = 0x0c(长度可能略有不同)。所以事务只读取 7 个字节然后以某种方式终止。或者更确切地说,DMA 操作终止。

  • 您是否同意数据表明提前终止?
  • 提前终止的原因可能是什么?
  • 是否有一些寄存器可以指示问题的原因?

代码非常简单:

0 投票
3 回答
1862 浏览

esp32 - 发送 LoRa 数据的最佳格式(JSON、RAW??)以及安全性如何

使用 arduino ESP32 通过 LoRa 无线电信号传输 GPS 和 ID 数据的最佳格式(最有效)方式是什么。我已经设置了一个收音机并构建了 JSON 字符串,但对于如此低带宽的格式,我怀疑有更好更有效的方法。

还有什么是处理安全性的最佳方法,只是 base64 并加密您自己的数据,还是有标准化的格式?

0 投票
2 回答
1832 浏览

tcp - ESP32 TCP 客户端

我想在 Windows 上设置 TCP 服务器,在 ESP32 上设置 TCP 客户端。主要想法是将字符串发送到 ESP32 更改它并将其发送回服务器,但我对所有这些东西真的很陌生,并且一直坚持在 ESP32 上设置 TCP 客户端。示例或参考将非常有帮助。

0 投票
3 回答
5628 浏览

nfc - ESP32 无法检测到 PN532 NFC 模块

过去几天我一直在努力让 Elechouse PN532 V3 模块通过 I2C 与 ESP32 一起工作。PN532 模块本身适用于 Raspberry Pi。

这是电路(实际上并未使用 SparkFun ESP32 板,仅供参考) ESP32电路

这是我要运行的代码

最后是串行输出:Didn't find PN53X board
任何想法我做错了什么?

编辑:图书馆即时通讯使用https://github.com/elechouse/PN532和 ESP32 开发板是 Wemos Lolin32 Lite 克隆。

0 投票
2 回答
457 浏览

html - 从网络获取数据,转换为变量

我有一个 ESP32,我使用 Arduino 来控制一些带有 Web 服务器的继电器。

现在我正在检查继电器状态,如下所示:

部分:

将被复制并为每个可能的变化更改 100 个。

当我得到更多的继电器时,这不是一个很好的方法。每个继电器都有一个 1 或 0 来启动和停止。
有没有办法拆分100来控制继电器?就像1&0&0从我的网络服务器推送一样?
有没有办法拆分1&0&0r1=1&r2=0&r3=0分成变量来控制继电器(引脚)?

0 投票
2 回答
1218 浏览

arduino - 字符串和子字符串 - Arduino,esp32

我在做什么错 line = client.readStringUntil('\r');if (line.substring(0) == "1");

当我运行此代码时,串行打印线给我:000 但继电器 1 给我:Rel 1 关闭图表 - 检查你给我的内容....如果我强制 line=001; 串行打印给我 1,而不是 001,我现在有 2 个继电器还有一点开始OTA更新。将添加更多继电器。我在混淆什么,我该如何纠正?

0 投票
3 回答
2716 浏览

arduino - ESP32 接入点

我有 2 个 ESP32 板,我想在 Arduino IDE 中使它们成为服务器/客户端。只有两块板,中间没有路由器。

到目前为止,我已经按照教程进行操作,并且已经能够从手机连接到 ESP32。

但是,我无法从其他 ESP32 连接。代码如下:

发生的事情是它只是说它无法连接。IP地址是默认的,我在服务器端仔细检查了!为什么我可以通过手机而不是 ESP32 连接?

此外,我将如何在两者之间进行通信?我尝试在线阅读,但似乎每个人都在做电话到 ESP 的通信,而不是 ESP 到 ESP。我也尝试阅读 Kolbans 先生关于 ESP32 的书,但没有成功。我对此很陌生,感觉被卡住了。