Оси X и Y на последовательном плоттере Arduino?

Я пытаюсь построить свой счетчик в зависимости от времени на последовательном плоттере, но значения по оси y настолько велики, что он никак не отображает значения счетчика. Я напечатал оба значения:

  Serial.print("counter: ");
  Serial.println(counter);
  time = millis();
  Serial.print("Time: ");
  Serial.println(time);

Я ожидал, что время появится на оси x, но я думаю, что оно отображается на оси y, и я не уверен, как это изменить. Сюжет должен быть просто увеличивающейся линией по мере увеличения счетчика и времени... что я упускаю? Спасибо.

Вырезание Serial.print("Время:") ничего не исправляет.

, 👍1


4 ответа


1

Закомментируйте строку Serial.print("Время: ");. Последовательному плоттеру Arduino нужны только цифры.

,

0

Чтобы построить несколько значений с течением времени, вам нужно выводить только числа в одной строке за итерацию и разделять пробелом или вкладкой:

Serial.print(counter); 
Serial.print("\t"); // delimit with tab
time = millis();
Serial.print(time); 
Serial.println();

Однако стоит отметить, что время (ось x) подразумевается каждой строкой. По сути, каждая строка вывода увеличивает "время" на 1 единицу. Поэтому я подозреваю, что вы захотите удалить вывод переменной времени и просто вывести переменную count самостоятельно.

,

3

Для одновременного построения нескольких переменных или сигналов между двумя операторами печати печатается "пробел".

Serial.print(counter);
Serial.print(" ");
time = millis();
Serial.println(time);

или

Serial.print(counter);
Serial.print("\t");
time = millis();
Serial.println(time);
,

1

Ось X фиксирована, и на оси X ничего не отображается. У него есть свои собственные подразделения, и они автоматически устанавливаются Arduino IDE. IDE Arduino все еще нуждается в некоторых улучшениях в своем программном обеспечении, чтобы ось X также можно было регулировать и отображать на графике! Это мой опыт до сих пор, и исправления приветствуются!

,