问题标签 [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.
arduino - ESP32 WPS 开机重新连接
我正在尝试开发一种物联网设备,它应该使用 HTTP/REST API 提供一些功能。我决定使用 ESP32 芯片(在“ESP32 开发板”上)。
现在我想实现一个易于使用的 WLAN 配置。我不想像许多其他示例那样在我的源代码中存储凭据;所以我决定使用WPS。
我尝试使用此处的源代码实现一个基本的 Web 服务器: https : //randomnerdtutorials.com/esp32-web-server-arduino-ide/ - 然后我从 EPS32 扩展附带的 Wifi/WPS 示例中添加了 WPS 功能对于 Arduino IDE。
现在 WPS 已经工作了,即当开发板通电时,它处于 WPS 连接模式并等待路由器接受 WPS 连接。它成功获取 SSID 并连接到 WLAN。
但是当我关闭 ESP32 电源并重新上电时,我必须再次执行 WPS 重新连接程序。我希望重新连接,它存储凭据并且能够在 ESP32 设备在以后的任何时间开机时再次连接到同一个 WLAN。我想我必须存储一些凭据并使用它们重新建立连接 - 但是我从哪里获得凭据,以及如何重新连接?
我确实在网上搜索了“ESP32 WLAN WPS 重新连接”和类似术语,但只找到了非 wps(SSID + 密码)连接的重新连接策略。我还检查了 WiFi 库文档和 esp_wps 库文档,但没有找到合适的。
那是WLAN WPS连接源:
c++ - Arduino如何计算对象数组内的外部中断?
问题
我开始玩 Arduino IoT (ESP32)。我从 SD 卡上的文件中读取了 GPIO 配置。我有外部中断的问题。我需要计算给定 GPIO 上的中断数。
我写了一个存储GPIO配置的类,并将这个类的对象放在一个全局数组中。如何计算给定引脚上的中断,以便通过使用适当的对象方法获得结果?
我尝试了不同的解决方案,但问题在于 ISR 方法,它必须是静态的。此方法无法访问对象字段,因此我不知道在哪里以及如何增加中断计数器。
我把代码分成几个文件。我只附上解决这个问题所必需的。
这支撑了我的项目。请帮忙。
主文件:
GPIO_CONFIG.h
GPIO_CONFIG.cpp
@EDIT 2018/01/04 08:10 我对文件添加了一些更改:
主 .ino 文件
GPIO_CONFIG.h
GPIO_CONFIG.cpp
解决方案
在这里,我放置了必须修改的短片段:
GPIO_CONFIG.cpp
从isrptr[gp_index] = &isr;
到isrptr[gp_index] = isr;
从if(&isrptr[i] == &gpio[i].isr){
到if(isrptr[i] == gpio[i].isr){
stability - ESP32(包括 SDK)对于制作商业产品是否稳定?
我正在为 wifi 项目研究 ESP32,尽管有 CC3200 (TI) 之类的替代品,因为它的价格。但我怀疑 ESP32 的硬件或 SDK 的可靠性。
我在开发简单项目时发现了一些错误。我向 ESP 报告了这些,但他们只是将其交付给开发团队,没有额外的回应。
想用TI这样的大公司产品,但是ESP32的价格竞争力太强了。
我想听听那些使用 ESP32 开发商业产品的人的意见。
uart - Guru Meditation 错误:ESP32 中禁止 Core 0 存储
https://github.com/shubhamshirsode/ESP32_BYN.git
上面的 URL 代码在带有 SoftSerial 的 ESP8266 上运行,但是当我在 ESP32 LORA Heltec 模型上运行时。它给了我“大师冥想错误:禁止核心 0 商店”
我的问题是如果可以,我们可以在 ESP32 中使用软件串行,然后告诉我上面的代码有什么问题。
如果没有,请给我另一个解决方案。
我想通过 ESP32 heltec 模型上的 Modbus RTU 协议获取数据。
预先感谢。
nodemcu - 在 ESP32 上闪烁 NodeMCU
ESP8266 和 ESP32 菜鸟在这里。我买了几个ESP32 模块,并试图在它们上安装 NodeMCU(它们只附带了一些示例代码)。
我使用云构建器创建了一个固件映像,并尝试将其闪存到设备上(后来,我自己也构建了它,结果相同)。经过一些实验,我发现引导加载程序希望固件从闪存中的 0x1000 开始,而不是 0x0000(我阅读了原始闪存内容以确认这一点),所以我在 0x1000 处刷新了固件。我可以使用read_flash
(或其他方法)确认固件已正确刷新。但是当我连接到串行端口以查看输出是什么时,我一开始就得到了这个:
然后一遍又一遍地循环:
在这一点上,我对可能出现的错误非常迷茫,感谢您的帮助。
c - 为什么我的 ESP32 开机后一直在复位?
我已经连接了我的 ESP32,在我给它供电后,它会继续重启并显示以下消息:
我已经连接了许多设备,其中键盘连接在 GPIO [6、7、8、15、4、16、17、15] 上,RTC 和 LCD 串行适配器都连接在引脚 [21、22] 上。所有设备均由 ESP32 的 5V 引脚供电。
现在,奇怪的是,在重置时,如果我按键盘上的数字 1 (4x4) 或断开它,重置停止并且即使重新连接后一切都按预期工作。LCD 串行适配器也是如此。所有其他设备不影响 ESP32。
任何关于可能导致这种特殊行为的见解都将不胜感激。
arduino-ide - 如何将 ESP32 支持安装到 Arduino IDE 中?
这里的页面链接告诉我如何让 Arduino 能够为我的 ESP 板创建草图:
https://github.com/espressif/arduino-esp32/blob/master/docs/arduino-ide/windows.md
打开指向
ARDUINO_SKETCHBOOK_DIR
并执行的 Git Bash 会话git submodule update --init --recursive
我已经ARDUINO_SKETCHBOOK_DIR
从 Arduino IDE 中识别出来了。所以我确实有一条从C:\
驱动器指向这个目录的路径。失败的是当我打开 GIT Bash 并将当前目录更改为我定义为的目录ARDUINO_SKETCHBOOK_DIR
并输入命令时,GIT bash 抱怨“没有这样的文件或目录”。实际上这个目录仍然是空的。
只是为了我的问题的完整性。我已按照页面上的说明进行操作,我给出了我不知道如何继续前进的链接!
c++ - 将字符串转换为 MAC 地址
在 SPIFFS 的文件中,我以“XX:XX:XX:XX:XX:XX”的形式保存了有关 mac 地址的信息。当我读取文件时,我需要将它从 STRING 切换为十六进制值数组。
但我在某处的代码中错了
当我放入AA:00:00:00:00:01
文件时,我的 ESP8266 设置29:D5:23:40:00:00
我需要帮助,谢谢
arduino - 使用 LoRa RA-02(SX1278) 从 Arduino 发送到 ESP32 时数据损坏
我正在尝试通过 LoRa 将数据从 Arduino 发送到 ESP32。我正在使用 2 个带有天线的相同 Ra-02 Aithinker 模块。我为 Arduino “LoRa”使用常用库,为 ESP32移植相同的库。我没有实现所有功能,因为我只需要最简单的设置。
这是移植库的代码:
罗拉.h:
洛拉.c:
在 Arduino 上,我这样发送:
在 ESP32 上,我收到这样的信息:
但问题是我收到了这个:
有人可以建议修复以正确接收数据吗?
顺便说一句,从 ESP32 到 ESP32 的数据正确。我还在两边都转储了 SX1278 寄存器——它们是相同的。
arduino - esp32 重启路由器/esp32 时稳定的 wifi 连接、丢失连接、坏连接等
您好,有人管理过稳定的 wifi 连接,可以处理各种问题,例如断电、路由器重启、wifi 丢失并管理机器以正确重新连接吗?此代码不会以稳定的方式工作:
这在覆盆子上非常稳定且容易,因为 pi 可以处理它,但在 esp32 上,示例代码根本无法处理可能出现的所有问题。如果您遇到无法调试的问题,非常令人沮丧。