В настоящее время я пытаюсь получить значение (Yes!
) от Arduino до текстового файла (data.txt
).Запись данных в текстовый файл из Arduino с помощью обработки
Проблема в том, что данные не читаются из серии Arduino's Serial. Когда я попытался просто распечатать значение в строке processing
, я вышел с пустыми руками.
Ниже мой код для Arduino
//Just a basic program to write to the Serial the word/phrase; `Yes!`.
void setup()
{
Serial.begin(9600);
}
void loop()
{
Serial.println("Yes!");
}
Ниже мой код processing
:
import processing.serial.*;
Serial mySerial;
PrintWriter output;
void setup() {
mySerial = new Serial(this, Serial.list()[0], 9600);
output = createWriter("data.txt");
}
void draw() {
if (mySerial.available() > 0) {
String value = mySerial.readString();
if (value != null) {
output.println(value);
}
}
}
void keyPressed() {
output.flush(); // Writes the remaining data to the file
output.close(); // Finishes the file
exit(); // Stops the program
}
Да, этот код был найден с thisstackoverflow
вопрос.
Любая помощь была бы принята с благодарностью!
Вам потребуется выполнить некоторую отладку. У вас есть только одно последовательное соединение? Что возвращается из 'Serial.list()'? Какой оператор 'if' не вводится? Используйте инструкции печати, чтобы узнать. Что произойдет, если вы просто распечатаете консоль вместо файла? –
Ничего не происходит, когда я печатаю на консоли, он не читает значения правильно. Что произойдет, если у меня будет несколько последовательных соединений? – EDCisBack
Какова длина массива, возвращаемого 'Serial.list()'? Какой оператор 'if' не вводится? –