Если подключаться к ардуине с помощью 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('|');
}
Скачать скетч.