ESP32将两个或多个SDK示例项目合并为一个

2024-06-01 09:39:26 发布

您现在位置:Python中文网/ 问答频道 /正文

tl;dr——如何将一对SDK项目组合在一起,并使“menuconfig”系统正常工作


我有一个关于ESP32模块的简单项目:让ESP32提供一个新的专用WiFi网络,允许智能手机直接连接到ESP32。连接后,手机可以将其web浏览器指向ESP32的IP地址(硬编码为192.168.1.1),ESP32将接受来自手机的HTTP连接。因此,用户将拥有一个简单的界面,通过该界面可以使用HTML数据输入表单、按钮等与ESP32交互

注意,此连接仅限于ESP32,本项目不需要任何互联网连接

幸运的是,该模块的SDK包含了很多示例,我已经设法使web服务器和WiFi接入点工作,但不是同时工作。这是两个示例项目(“…示例/协议/http_服务器/simple”和“…示例/wifi/getting_started/softAP”)

到目前为止,我已经设法发现WiFi接入点软件在“后台”运行,甚至在main()函数结束后仍在继续。这意味着我应该能够从另一个示例中引入web服务器代码,并在main()函数中执行它。我确信这是可行的(如果我错了,请纠正我)

问题是:

这两个示例项目中的每一个都包含一个“idf.py menuconfig”命令,该命令允许用户快速更改任何重要设置,如WiFi SSID或HTTP基本身份验证密码

在这两个项目合并之后,我希望保留这个菜单系统,因为它非常有用,并且在某种程度上减少了在重新编译之前修改代码所涉及的人为错误

有没有一种简单的方法可以将两个SDK示例项目中的menuconfig系统组合成一个单独的系统,用于完全配置一个由两个代码基组合而成的项目

进一步信息:我正在Ubuntu 20虚拟机上使用ESP-IDF开发工具包,通过USB连接到ESP32


Tags: 模块项目代码用户服务器webhttp示例