Я пытаюсь сделать монитор завода с помощью Arduino и обработки. Обработка записывает html-файл на основе входного сигнала датчика Arduino. WinSCP контролирует файл, созданный для изменений, и напрямую загружает через FTP при изменении файла.Обработка: Напишите HTML-файл с входа arduino
На платформе Arduino посылает следующую обработку через последовательный:
45
0
31
40
x
Используя следующий код в обработке я пишу HTML-страницу с этими данными:
import processing.serial.*;
Serial myPort;
String dataReading = "";
int lol = 0;
String string0 = "<h1>Jurze Plants <img src=\"https://html-online.com/editor/tinymce/plugins/emoticons/img/smiley-laughing.gif\" alt=\"laughing\" /></h1>";
String string1 = "Moisture Level: ";
String string2 = " %<br> Motorstate: ";
String string3 = "<br> Temperature: ";
String string4 = " °C<br> Humidity: ";
String string5 = "%<br>";
void setup() {
size(500, 500);
myPort = new Serial(this, "COM4", 9600);
myPort.bufferUntil('x');
}
void draw() {
}
String [] dataOutput = {};
void serialEvent(Serial myPort) {
dataReading = myPort.readString();
if (dataReading!=null) {
dataOutput = split(dataReading, '\n');
String [] tempfile = {string0,string1,dataOutput[1],string2,dataOutput[2],string3,dataOutput[3],string4,dataOutput[4],string5 };
println("saving to html file...");
saveStrings("data/index.html",tempfile);
}
}
HTML-код я получаю первый раз:
<h1>Jurze Plants <img src="https://html-online.com/editor/tinymce/plugins/emoticons/img/smiley-laughing.gif" alt="laughing" /></h1>
Moisture Level: 46 %<br>
Motorstate: 0 <br>
Temperature:31.00 °C <br>
Humidity: 35.00% <br>
Хотя после получения данных от Arduino для второй раз это выглядит так:
<h1>Jurze Plants <img src="https://html-online.com/editor/tinymce/plugins/emoticons/img/smiley-laughing.gif" alt="laughing" /></h1>
Moisture Level: %<br>
Motorstate: 46 <br>
Temperature:0 °C <br>
Humidity: 31.00% <br>
Я думаю, что что-то не так с массивом? Любая помощь будет высоко оценена! : D
[espruino] (http://www.espruino.com/) для победы !!! –
Вы могли бы показать свою функцию 'split'? –
@ JérômeTeisseire 'dataOutput = split (dataReading, '\ n');' – Jurze