问题标签 [esp-idf]
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++ - idf.py menuconfig 闪烁然后退出
我正在尝试使用 idf.py 将我的晶体从默认的 40 MHz 配置为 26 MHz。当我按 Enter 时,表格出现约 1 秒,然后退出
我使用的是window 10,两天前我刚刚在其主页上安装了Vscode(所以我假设它是最新版本),然后我通过Vscode(也是最新版本)设置了ESP-IDF。我正在尝试用P32芯片刷我的项目,首先,终端说它找不到idf.py,所以我将它添加到环境变量中,然后在终端中再次运行idf.py menuconfig然后上面提到的事件碰巧,这是一张照片: 在此处输入图片描述
amazon-web-services - IDF v4.2 esp-aws-iot 影子连接错误:NETWORK_SSL_READ_ERROR = -12
问题:
我正在使用 esp idf 4.2 版,并安装了 esp-aws-iot 作为组件尝试运行演示代码,但是。当我尝试调用函数 aws_iot_shadow_connect 时,我不断收到错误,具体的代码行是:
rc = aws_iot_shadow_connect(&mqttClient, &scp);
我尝试过的事情:
- 验证证书是否有效。
- 事物名称是正确的。
- 在 AWS 控制台中发现 MQTT 主机端点是正确的。
- MQTT PORT 尝试了 443 和 8883
- Wifi连接成功
- 已验证该事物已附加到证书,该证书附加到允许一切“iot:*”的策略
信息:
- ESP-IDF:v4.2-脏
- AWS IoT 开发工具包版本 3.0.1-
- 硬件:ESP-WROVER-B / 芯片版本:1
c++ - 将 WiFi 模式从 AP 切换到 STA
我正在通过ESP-IDF框架在 C/C++ 中使用ESP32-S2-Saola-1M板开发项目。一开始,我在 AP 模式下初始化 Wi-Fi,并启动 HTTP WebServer 以通过浏览器从用户那里获取 WiFi 数据。用户通过页面保存他的 Wi-Fi 数据(SSID 和 Passwd)后,HTTP 服务器应该关闭,Wi-Fi 从 AP 模式切换到 STA 模式 - 连接到用户的 Wi-Fi。我对这部分有问题。我不知道如何优雅地原则上正确地解决这个问题。那么有人可以向我描述任何解决方案或更好的想法吗?
我想到了使用带有while循环和 POST 处理程序的方法。在通过 POST 请求从页面获取数据后,处理程序保存它们并将一些 bool 属性(例如下面代码中的hasData)设置为 true,同时方法中的循环中断/停止,应用程序中的其他代码可以继续。信号量之类的东西。简单地:
- 启动 Wi-Fi(AP 模式)
- 启动网络服务器
- 等到用户发送他的 Wi-Fi 数据
- 停止网络服务器
- 停止 Wi-Fi AP 模式 -> 切换到 STA 模式
- 下一步行动……(测量、发送数据、深度睡眠等)
伪代码:
这个原则正确吗?
谢谢你的建议!
esp-idf - 通过变量初始化 adc_channel_t
我是 Esp Idf 的新手和初学者程序员,我想通过指针字符串初始化 adc adc_channel_t 但我收到错误“冲突类型限定符”
有人可以帮助我如何通过自己的变量初始化 adc_channel_t 以便我可以通过自己的函数传入该变量,我可以将通道更改为参数。
这是代码
const char *ptr ="ADC_CHANNEL_0"; 静态常量 adc_channel_t ptr;
adc1_config_channel_atten(ptr, atten);
谢谢
c - ESP-IDF 框架中的链接器错误(未定义引用)
我正在学习在 ESP32 平台上编写应用程序。当我试图编译我的代码时,我从链接器收到了这个错误:
未定义对“Serial_Init”的引用
其中 Serial_Init 是在文件serial_cli.h中声明的函数,该文件位于同一目录和工作区中。更重要的是,我在那里声明了一些宏,并且可以在我的代码中使用它们没有问题,所以我真的不明白错误来自哪里。这是serial_cli.h:
这是serial_cli.c:
最后,应用程序的主体:
下面我还包括从控制台获得的完整输出:
提前感谢您的任何反馈。
c - vs 代码 esp-idf 从标准 c 库 windows 10 导入未解析
C:\Users\Lasse\esp\esp-idf\examples\get-started\blink.vscode\settings.json 看起来像这样:
C:\Users\Lasse\AppData\Roaming\Code\User\settings.json 看起来像这样:
"C_Cpp.intelliSenseEngine": "Tag Parser" - 帮助解决非标准库导入的行
C:\Users\Lasse\esp\esp-idf\examples\get-started\blink.vscode\c_cpp_properties.json 看起来像这样:
我认为这可能与失踪有关
编译器在哪里?
wifi - ESP32:是否可以做一个桥接 ETH-WIFI
我正在使用 olimex esp32-poe-iso 并且我试图实现以下目标:
家庭路由器 ====== (WIFI) ====== (STA):esp32-poe-iso:(ETH) ====== (ETH 线)===== Jetson Nano
我不想在这里找到一段代码。我只是想确保它是可行的。我已经尝试了好几天没有运气。那里的所有文档和示例都以相反的方式解释。这对我来说很好。
家庭路由器 ====== (ETH) ====== (ETH):esp32-poe-iso:(WIFI-AP) ====== (WIFI)===== Jetson Nano 任何线索真的很感激
esp32 - GPIO32 管脚工作在模拟模式,在数字模式下总是读为 0
我在使用原型 ESP32 设备板进行 PCNT 脉冲计数时遇到了一些困难。
我有一个水位传感器(型号 D2LS-A),它通过发送到 GPIO32(20Hz、50Hz、100Hz、200Hz、400Hz)的方波信号的频率来发出状态信号。
遗憾的是,PCNT 计数器保持在 0。
为了排除故障,我尝试将 GPIO32 置于 ADC 模式(衰减 0、10 位模式)以读取原始信号(每秒对其进行多次采样),并且得到了我期望的值(0-1023)。但是使用数字 GPIO 模式尝试同样的事情,它总是返回 0,在所有样本中从不返回 1。
由于 PCNT ESP IDF 组件依赖于以数字方式读取引脚,因此计数器的增量永远不会超过 0。
所以我遇到的真正问题是:为什么 ADC 读数(0-1023 之间)没有像人们期望的那样转换为 0-1 的数字读数?
esp32 - ESP-IDF deep_sleep 和 FreeRTOS 任务
我在使用 FreeRTOS 任务的项目上工作,我想进入 deep_sleep。在进入 deep_sleep 之前我应该做些什么?或者唤醒后,RTOS 调度程序什么也没发生?