@Mail-e

Arduino, как очистить монитор порта?

Написана небольшая программа которая выводит числа в 1 столбец:
1
2
3
и так далее, как сделать так, чтобы в мониторе было только одно число? А именно после вывода одного числа N оно удалялось и выводилось следующее число
  • Вопрос задан
  • 14670 просмотров
Решения вопроса 2
svd71
@svd71
Очистить никак. Можно перезаписать. Для этого используется метода Serial.print(). В конце нужно вывести символ 10 (0х0D) для перевода каретки на начало.
Serial.println() в конце каждой строки автоматически печатает комбинацию из двух сиволов 0x0D (Carriage Return) и 0x0A (Line feed)
Ответ написан
anthtml
@anthtml
Системный администратор программист радиолюбитель
В ардуинском (arduino ide) мониторе порта, сделано так, что все принятые данные остаются в списке, так как он создан для отладки. А вообще в системе данные из com порта обычно накапливаются в буфере и вот его можно очищать. Так что для такого дела придется писать свой обработчик данных.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@vanyamba-electronics
Если подключаться к ардуине с помощью VT100-совместимого терминала, то можно использовать Escape-последовательности. Например так:
void setup()
{
  Serial.begin(230400);
  Serial.print("\x1B[?25l");                        // Выключение курсора
}

void loop()
{
  unsigned char input = (analogRead(A0) >> 6);      // Чтение состояния входа Analog In 0 со сдвигом значения в диапазон [0..15]
  Serial.print("\x1B[0;0H|");                       // Курсор в позицию 0, 0
  for (unsigned char n = 0; n < 16; ++n) {          // Изображение шкалы
    Serial.print((n == input) ? '+' : '-');
  }
  Serial.print('|');
}

Скачать скетч.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы