Проблема с данными с COM-порта

Unhappy_cat

✩✩✩✩✩✩✩
14 Июн 2021
3
0
Привет читающим.
Делаю программу для диплома, чтобы выводить данные с Arduino на комп(собсна в саму программу).

Пишу на Processing( на шарпах и плюсах всё ещё хуже). Имеется такая проблема, подключение с Arduino имеется,данные в принципе выводит все. Но! Они выводятся в несколько раз. Т.е. повторяется одно и тоже сообщение до принятия новых значений.
(скрин происходящего)
566644.png
Немного данных - Скорость везде стоит 9600. Подключается через переднюю панель ПК(через заднюю всё также).Скетч самый просто для проверки.

Если есть предположения с чем это связано или кто-то сталкивался и есть решение, помогите...
 

Unhappy_cat

✩✩✩✩✩✩✩
14 Июн 2021
3
0
Оформи код соответствующим тэгом
Самые просты
Выкладывай скетчи


Скетч с процессинга________________________________________


import processing.serial.*;

Serial serial; // создаем объект последовательного порта
String received; // данные, получаемые с последовательного порта

void setup()
{
String port = Serial.list()[1];
serial = new Serial(this, port, 9600);
}

void draw() {

if ( serial.available() > 0) { // если есть данные,
received = serial.readStringUntil('\n'); // считываем данные
}
println(received); //отображаем данные в консоли
}

Скетч с Arduino_____________________________________


void setup() {
Serial.begin(9600);
}

void loop() {
for(int i = 0; i < 143243; i++){
Serial.println(i);
delay(1000);
}

}
 

Unhappy_cat

✩✩✩✩✩✩✩
14 Июн 2021
3
0
Ты выводишь полученную строку в Сериал в каждом вызове draw(). Как часто вызывается draw()?
Хм, я вот над этим не думал, получается вызов draw() можно ограничить так же в 1 секунду?

Опа, получилось, спасибо за наводку

Но из этого другой вопрос появился:

Можно ли ограничить отправку данных с ардуино в 0.5-1 секунду?(по уроку Гувера)
 

bort707

★★★★★✩✩
21 Сен 2020
1,097
314
получается вызов draw() можно ограничить так же в 1 секунду?
неправильный вывод.
Вместо тупого ограничения по времени правильнее выводить строчку на экран только тогда. когда принята новая строка с ардуины