完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我正在开发一个室外远程控制系统,带有来自ESP8266 AP的专用WLAN。带有 TCP 客户端的平板电脑应连接到它,以便在 ESP 上设置一些 GPIO。根据我的理解,ESP 上的 TCP 服务器应该从平板电脑客户端获取命令进行进一步处理。不涉及额外的路由器。
现在,AP工作正常,平板电脑可以登录WLAN并获得正确的IP地址。但是客户端与服务器的连接将被拒绝。所以我的问题是: ESP 应该具有 SOFTAP 或 STAtiONAP 的哪种模式? TCP服务器是必要的还是其他解决方案可行? TCP服务器应该有哪个IP地址,我尝试了AP的地址和不同的地址,但没有成功? 我使用 None-OS SDK 2.0。 |
|
相关推荐
1个回答
|
|
要在ESP8266上运行AP TCP服务器,您需要按照以下步骤操作:
1. 选择正确的模式:对于您的需求,您应该使用ESP8266的SOFTAP模式。这将允许您创建一个独立的WLAN,而无需连接到其他路由器。 2. 初始化ESP8266:首先,您需要初始化ESP8266并设置AP模式。以下是一个示例代码片段,用于设置ESP8266为AP模式: ```cpp #include #include ESP8266WebServer server(80); const char *ssid = "YourSSID"; // 设置您的SSID const char *password = "YourPassword"; // 设置您的密码 void setup() { WiFi.softAP(ssid, password); // 设置AP模式 server.begin(); // 启动Web服务器 } void loop() { server.handleClient(); // 处理客户端请求 } ``` 3. 创建TCP服务器:在ESP8266上创建TCP服务器,以便接收来自平板电脑的TCP客户端连接。以下是一个示例代码片段,用于创建TCP服务器: ```cpp #include #include #include #include ESP8266WiFiMulti wifiMulti; WebSocketsServer webSocket = WebSocketsServer(81); void setup() { wifiMulti.addAP("YourSSID", "YourPassword"); if(wifiMulti.run() == WL_CONNECTED) { Serial.println("Connected"); Serial.println("IP address: "); Serial.println(WiFi.softAPIP()); // 获取AP的IP地址 } webSocket.begin(); webSocket.onMessage([](uint8_t num, WStype_t type, uint8_t * payload, size_t length) { // 处理收到的消息 }); } void loop() { webSocket.loop(); } ``` 4. 设置平板电脑的TCP客户端:在平板电脑上创建一个TCP客户端,连接到ESP8266的IP地址。您可以使用任何支持TCP连接的编程语言或库。 5. 通信:一旦平板电脑的TCP客户端连接到ESP8266的TCP服务器,您就可以发送和接收数据。在ESP8266上,您可以在`onMessage`回调函数中处理收到的数据,并根据需要设置GPIO。 总之,您应该使用SOFTAP模式,并创建一个TCP服务器来接收来自平板电脑的TCP客户端连接。ESP8266的IP地址应该是AP的IP地址,您可以在设置AP模式后通过`WiFi.softAPIP()`获取。 |
|
|
|
只有小组成员才能发言,加入小组>>
1143 浏览 1 评论
578浏览 6评论
479浏览 5评论
有没有办法在不使用混杂模式的情况下实现Wifi驱动程序接收缓冲区访问中断呢?
463浏览 5评论
464浏览 4评论
440浏览 4评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 10:57 , Processed in 0.873813 second(s), Total 47, Slave 41 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号