【发布时间】:2019-01-25 03:53:48
【问题描述】:
我正在为 Arduino 构建一个单页应用程序。它以图形方式在连接 wifi 的平板电脑上显示模拟引脚值。
我已经制作了草图,但想清理它。我已经能够将草图上传到我的(Uno Wifi Rev 2)Arduino,初始化 Wifi,并用平板电脑连接到它。我可以将静态页面“框架”发送到平板电脑。 该静态框架能够使用 XMLHttpRequest 对象请求和接收 Arduino 模拟引脚值。
但是发送庞大的静态页面很笨重。教程可以做类似的事情,
client.println("<html><body>");
client.println("Hello World!");
client.println("</body></html>");
我试图弄巧成拙并创建一个 FileText.h 头文件:
#define constFileText=
"<html><body>"
"Hello World!"
"</body></html>";
并将其与:
#include "FileText.h"
client.println(constFileText);
我想做的是创建一个标准的 FileText.html:
你好世界!
然后用类似的东西处理它:
ifstream hFile ("FileText.html");
while (getline(hFile, strLine))
client.println(strLine);
这将使编辑 html 文件变得更加容易。它将消除包含所有这些 serial.println 调用的浪费。它还将消除对常量值的最大长度限制。
有什么方法可以向 Arduino 编译器提供一个文本文件,并让 Arduino 服务器将其发送给 Arduino 的客户端?
【问题讨论】:
-
您的 Arduino 上是否连接了 SD 卡?然后你可以把你的 HTML 文件放在那里。否则您可以尝试将其存储在 EEPROM 中(Atmega328p 有 1KB EEPROM)
-
不,我没有使用 SD 卡。但即使使用 SD 卡,将文件发送给客户端仍然存在挑战。 EEPROM 不工作;我计划将大部分功能放在浏览器中。我希望 Arduino 尽可能多地对模拟输入进行采样。到目前为止,我正在使用上传的 49152 字节中的 14952 字节。这包括实时图形,我希望我能够让浏览器保存数据以供以后分析。
标签: file text import arduino arduino-uno