完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我正在开发一个使用 NodeMCU ESP8266 和 DFPlayer Mini MP3 播放器的项目。
我想通过使用 AP 模式的 ESP8266 从手机控制 MP3 播放器。 ESP8266 中的软件在 PROGMEM 中有一个存储为数组数据的歌曲标题列表 我想将播放的歌曲标题发送到 NodeMCU esp8266 托管的网页中的文本框。 我到处搜索和研究都没有运气。 有很多关于从网页发送到软件的例子,但我需要转向另一个方向。 这个任务使用什么方法? |
|
相关推荐
1个回答
|
|
您可以使用以下步骤将播放的歌曲标题发送到 NodeMCU ESP8266 托管的网页中的文本框:
1. 在NodeMCU ESP8266上设置一个HTTP服务器。您可以使用 ESP8266WebServer库来完成这个任务。 2. 设置 HTTP 服务器的处理程序以接收请求并从 jsonObj 中获取传递的歌曲名称。 3. 在 ESP8266 的 PROGMEM 存储器中查找包含所有歌曲名称的数组。遍历数组以查找与传递的歌曲名称匹配的名称并将其保存到一个字符串中。 4. 使用 ArduinoJSON库将字符串转换为 JSON 对象,其中歌曲名称是键和名称是值。 5. 将 JSON 对象作为响应发送回请求的客户端。 6. 在客户端上创建一个简单的 HTML 页面,其中包含一个文本框,以便将响应显示在其中。 7. 使用 AJAX技术从客户端向服务器发送请求,并在文本框中显示响应。 以下是一个简单的示例代码: ```c++ #include #include #include const char* ssid = "your_network_SSID"; const char* password = "your_network_PASSWORD"; ESP8266WebServer server(80); char songTitles[][30] PROGMEM = {"Song 1", "Song 2", "Song 3", "Song 4"}; void handleRequest() { if (server.method() == HTTP_GET) { String songName = server.arg("songName"); String output = ""; for (int i = 0; i < 4; i++) { char buffer[30]; strcpy_P(buffer, (char*)pgm_read_word(&(songTitles[i]))); if (songName == buffer) { DynamicJsonDocument jsonDoc(1024); JsonObject json = jsonDoc.to json[buffer] = "Playing"; serializeJson(jsonDoc, output); break; } } server.send(200, "application/json", output); } } void setup() { Serial.begin(115200); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(1000); } Serial.println("Connected to WiFi"); server.on("/playSong", handleRequest); server.begin(); } void loop() { server.handleClient(); } ``` HTML 代码示例: ```html ``` 在这个示例中,当单击“Play Song”按钮时,将调用 playSong() 函数。该函数获取文本框中的歌曲名称并向服务器发送请求。服务器将遍历数组以查找匹配的歌曲并将其作为 JSON 响应发送回客户端。客户端将使用 AJAX 技术接收响应并将其显示在文本框中。 |
|
|
|
只有小组成员才能发言,加入小组>>
1108 浏览 1 评论
574浏览 6评论
477浏览 5评论
有没有办法在不使用混杂模式的情况下实现Wifi驱动程序接收缓冲区访问中断呢?
460浏览 5评论
461浏览 4评论
435浏览 4评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-19 13:03 , Processed in 1.085182 second(s), Total 76, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号