Hola y Buenas a todos, soy nuevo en el foro y estoy aprendiendo a programar arduino, pero tengo un problemita y no he logrado avanzar mas en mi codigo, tengo un teclado matricial y una pantalla lcd, y quiero dividir la pantalla en 3 partes, de manera que tenga su titulo en las dos primeras filas y las 4 primeras columnas, pero ya en la quinta columna es donde tengo el problema, la logro activar pero quisiera solo escribir 3 caracteres numericos nada mas y que se pare alli, pero sin embargo si sigo pulsando teclas sigue escribiendo caracteres, y es lo que no se quiere, quisiera que marcara 3 digitos y ya, en esta parte estoy atascado y aun no lo he logrado, si alguien me puede guiar se lo agradeceria... este es mi codigo!
#include <LiquidCrystal.h>
#include <Keypad.h>
const byte ROWS = 4;
const byte COLS = 4;
char Teclas[ROWS][COLS] = {
{'1','2','3','A'},
{'4','5','6','B'},
{'7','8','9','C'},
{'*','0','#','D'}
};
byte rowPins[ROWS] = {5,4,3,2,};
byte colPins[COLS] = {9,8,7,6 };
LiquidCrystal lcd(A0, A1, A2, A3, A4, A5);
Keypad Teclado = Keypad(makeKeymap(Teclas),rowPins,colPins, ROWS, COLS);
void setup()
{
Serial.begin(9600);
lcd.begin(16,2);
lcd.print("Tabla de Matematicas");
lcd.setCursor(0, 1);
delay(2000);
lcd.clear();
lcd.print("Aritm:");
lcd.setCursor(0, 1);
lcd.print("Algeb:");
lcd.setCursor(1, 1);
delay(1500);
Teclado.setDebounceTime(20);//Espera el tiempo definido entre pulsacion y pulsacion
}
void loop()
{
char Teclas = Teclado.getKey();
if (Teclas != NO_KEY){
lcd.leftToRight();{
lcd.setCursor(4, 0);
lcd.print(Teclas);
delay(500);
}
}
}