问题标签 [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.
c++ - 在函数中获取原始类型的指针
我有一个联合(ValueDefinition),其中包含不同数据类型的指针以及创建它的函数。使用 String 可以正常工作:
但是,当我对例如 uint8_t 执行相同操作时,它会编译,但在运行时出现此错误:
这是 uint8_t 的代码:
我究竟做错了什么?我在没有“new”和 malloc 的情况下尝试了它,但我仍然得到同样的错误。
编辑:根据要求,ValueDefinition 的定义:
c++ - 是否可以通过 Windows C++ 应用程序中的唯一地址检测蓝牙设备?
我必须编写一个应用程序,它必须识别“ESP32”设备并从 Windows C++ 应用程序发送/接收数据。
Q1:我正在使用WSALookupServiceBegin()
API 查找 BT 设备,它没有按预期工作。API 返回 10108,直到我在 Windows 蓝牙窗口中手动单击“添加设备”。是否有任何其他 API/服务可以发现设备附近的 BT,或者我是否WSALookupServiceBegin()
错误地使用了 API?是WSALookupServiceBegin()
从蓝牙缓存中获取设备数据吗?我有这个疑问,因为 API 只有在 Windows 中手动搜索后才能正常工作。
Q2:是否可以在 Windows 下仅使用 BT 设备的 Mac ID 连接到任何蓝牙设备?
请在下面找到代码。
输出 :
connect() 调用失败。WSAGetLastError=[10049]
arduino - Arduino Wire 库返回错误代码 7(库中未定义)
我正在使用 ESP32 尝试从 IMU(MPU-6050)读取数据。我正在使用 Arduino 网站上提供的代码,但略有不同;我正在检查 endTransmission 上的错误代码并正在打印它(我开始这样做是因为我从读取 MPU 寄存器的调用中得到了所有零值)。在第一次调用初始化 MPU 时,我收到一个成功错误代码。但是在那之后永远打电话我收到错误代码7。奇怪的是,当我跟踪Wire库时,我发现没有定义错误代码7。有问题的函数只有 4 个可能的返回值,而 7 个不是其中之一。
这是代码的全部内容。
initialError 为零(成功),另一个错误为 7 ( ? )。任何人都知道这里发生了什么以及如何纠正?
microcontroller - 微控制器(esp32)是否使用 x86 或 arm,我可以在这些 MCU 中安装 Linux
我正在研究微控制器,所以我想知道像 esp32 和 esp8266 这样的微控制器以及其他类似的微控制器是建立在 x86 还是 arm 架构上的?我尝试在互联网上搜索,但没有得到足够的线索
如果它使用这两种架构中的任何一种,是否有机会在这些控制器中安装 Linux,我想到了这一点,因为 freeRTOS 说它是微控制器的操作系统,我认为不是
但不知何故,如果它是一个操作系统,那么其他操作系统(如 Linux)呢,它们今天有机会安装在 MCU 中吗?甚至未来五年他们还有机会吗?
api - Arduino API 身份验证
我正在做一个项目,三天以来我遇到了一个问题。我正在使用 ESP32 做这个项目,并希望将其自动连接到 WIFI 并获取 API 信息。第一部分没问题,我做到了没有任何问题。但它没有获取 API 信息。我的 API-Link 是这样的:
它需要一个用户和密码:
我试图阅读互联网上的所有 BASIC-Auth 示例。但我找不到解决方案...我收到此错误:
例如,我使用了以下代码:
php - esp32 和 php XXTEA 字符串加密
我正在使用带有"HTTPClient.h"
库的 esp32(Arduino 平台不是 esp-idf)向我的 PHP 服务器发送带有参数的 get 请求。
我想加密参数值并在我的 PHP 代码中解密它们,反之亦然(我的服务器将 JSON 数据发送回我的 esp32)。
我尝试将 XXTEA 协议与这些库一起用于PHP和esp32。
但是加密的字符串不会在 PHP 上正确解密。
例子:
当我用密钥"HELLO WORLD"
对我进行加密时,我得到了这个:esp32
"ENCRYPTION KEY"
35bd3126715874f741518f4d
当我在 PHP 上解密它时,它返回空白。
此外,当我在我的 PHP 服务器上加密它时,我得到了这个:
T1YNYC4P4R2Y5eCxUqtjuw==
我的 esp32 草图如下所示:
我的 PHP 代码如下所示:
有没有办法在 PHP 和 之间进行加密字符串通信esp32
?
提前致谢。
esp32 - 从 ESP32 上传文件到 Nextion-Display
有没有办法将文件从 ESP32 直接上传到 Nextion Display?我想用 ESP 32 WIFI 下载图片或 TFT 文件并将其上传到显示器。如果我能用 TFT 文件做到这一点,那就太好了!
c - ESP32 直接端口操作
亲爱的 StackOverflowers,
我正在尝试将来自 Adafruit(链接)的 HX8357D 3.5" TFT 与 esp32 一起使用。TFT 驱动程序有两个接口:SPI 和 8 位并行。Adafruit(链接)提供的库仅支持 esp32 上的 SPI。我需要有更高的显示速度,所以我决定自己尝试添加对 esp32 的支持。我对这种编程完全没有经验,但我喜欢这个挑战。
我通过对 Arduino Uno/Mega 支持进行逆向工程来了解 8 位接口的工作原理。要添加对 esp32 的支持,我需要一种方法来直接操作控制 esp32 的 gpio 端口的寄存器。我在互联网上环顾四周,但很少有关于如何做到这一点的例子。Espressif 的技术参考手册(链接)包含所需的所有信息,但我不够熟练,无法弄清楚如何将其转换为代码。
要对 esp32 进行编程,我使用 esp32 Arduino 内核。这个例子 (链接) 展示了如何将 gpio 引脚设置为输出,并直接使用寄存器将它们设置为 HIGH 和 LOW。问题是我需要能够将 8 个引脚设置为输出,向它们写入数据,使它们成为输入,然后从中读取数据,所有这些都使用寄存器而不是使用 pinMode、digitalRead 和 digitalWrite 函数。
它在 Arduino Uno/Mega 上的工作方式对我来说很清楚,有三个寄存器控制一个端口:
- DDR* 读/写
- PORT* 设置 gpio HIGH/LOW
- 如果 gpio 为 INPUT,则 PIN* 读取 HIGH/LOW。
但是这在 esp32 上是如何工作的,我如何利用寄存器来创建这个 8 位并行通信?
如果有人在这个主题上比我有更多的专业知识,我将非常感谢您的解释。提前致谢。
c - ESP32 使用 SPI 连接到单独的 IC
我正在尝试使用 ESP IDF 为 C 语言中的 S1V30120 dectalk 文本合成 IC 编写包装器。我在以下代码中遇到了问题。
我很确定连接应该处于全双工模式,并且我相信设置正确。返回的信息应该是 20 个字节,但我收到了错误
目前我正在关注两段可能有帮助的代码。
在 esp idf 中使用 SPI 的示例: https ://github.com/espressif/esp-idf/blob/3276a1316f66a923ee2e75b9bd5c7f1006d160f5/examples/peripherals/spi_master/main/spi_master_example_main.c
在 Arduino ide 中使用 dectalk ic 的示例: https ://electronza.com/arduino-due-s1v30120-text-speech-code/2/
dectalk ic 协议表: https ://github.com/MikroElektronika/Click_TextToSpeech_S1V30120/blob/master/datasheet/S1V30120%20Protocol%20Specification.pdf
以及 esp idf 的 SPI 文档: https ://gitdemo.readthedocs.io/en/latest/api/peripherals/spi_master.html
协议表还说明了在我以前从未见过的事务之后发送 16 个字节的 0x00 的内容。
我希望我对所有这些信息足够透彻,我提前感谢任何可以提供帮助的人!
nodemcu - 闪烁 ESP Wroom-02 的问题
所以我在刷 ESP Wroom-02 Wifi 芯片时遇到问题。我得到的是带有内置微型 USB 端口的那种,因此我可以将笔记本电脑的电缆直接连接到 WiFi 芯片并对其进行编程。板上还有两个标记为 Flash 和 Reset 的按钮。
我也浏览了 Espressif 的官方文档和在线指南。我想要的只是测试各种 AT 命令。
我正在使用 Espressif 自己的 ESP Flash 下载工具。设置如:
因此,在尝试了文件和设置的各种组合之后(同时遵循官方手册和在线指南),有时我会从串行监视器中看到“-> 就绪”这句话,但是当我发送命令 AT 或 AT+GMR 时,我得到支持“-> 错误”。
可能是什么问题?我真的很感激这方面的一些帮助。如果你们中的任何人成功使用乐鑫提供的固件刷入 Wroom-02,并在发送 AT 或 AT+GMR 等命令时得到正确回复,请分享刷入固件时使用的设置(例如内存地址)用于各种文件和 Spi Flash 配置)。
非常感谢提前!
这就是我使用串行终端连接它并点击重置按钮时得到的结果。