Menu
CoddyTech

Borrar dígitos sobrantes

Parte de la sección Pantallas y sensores del Journey de Arduino de Coddy. Lección 9 de 24.

Al escribir sobre un número, solo se reemplazan tantos caracteres como tenga el número nuevo. Imprime 10, retrocede, imprime 9 y la pantalla muestra 90: el 9 cubrió el 1 y el 0 nunca se tocó.

Hay dos soluciones. La rápida: imprime algunos espacios después del número, para que cubran lo que haya dejado un número más largo:

lcd.setCursor(0, 1);
lcd.print(reading);
lcd.print("    ");   // tapa hasta cuatro dígitos anteriores

La otra es lcd.clear(), que borra toda la pantalla y coloca el cursor en la esquina superior izquierda. También borra todo lo demás que imprimiste, así que tienes que imprimirlo todo de nuevo, y una pantalla que se borra muchas veces por segundo parpadea. Para un solo número que cambia, los espacios son mejores.

challenge icon

Desafío

Fácil

La fila inferior muestra la lectura del potenciómetro, pero al bajar el potenciómetro desde 1023, los dígitos antiguos permanecen. Corrígelo:

  • después de imprimir la lectura, imprime espacios para cubrir los dígitos sobrantes
  • mantén Knob: en la fila superior

Pulsa Ejecutar, sube y baja el potenciómetro y, después, pulsa Comprobar.

Pruébalo tú mismo

#include <LiquidCrystal.h>

// RS, E, D4, D5, D6, D7
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() {
  lcd.begin(16, 2);
  lcd.print("Knob:");
}

void loop() {
  int reading = analogRead(A0);
  lcd.setCursor(0, 1);
  lcd.print(reading);
  // un número con menos cifras deja dígitos anteriores en pantalla: corrígelo aquí
  delay(100);
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Pantallas y sensores

Practica por tu cuenta: Playground de Arduino