Ayuda con el codigo, nose si es con el keypad o el lcd
hola y buenas todos, soy nuevo en el foro y estoy aprendiendo programar arduino, pero tengo un problemita y no 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 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);
}
}
}
#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);
}
}
}
"liquidcrystal lcd(a0, a1, a2, a3, a4, a5);"
tienes el lcd conectado en las entradas analógicas del arduino???
ahí tienes un primer y grave error que corregir, hay muchísimas páginas que explican cómo conectar y programar un lcd, sugiero la siguiente:
https://www.arduino.cc/en/tutorial/liquidcrystaldisplay
exitos!!!
tienes el lcd conectado en las entradas analógicas del arduino???
ahí tienes un primer y grave error que corregir, hay muchísimas páginas que explican cómo conectar y programar un lcd, sugiero la siguiente:
https://www.arduino.cc/en/tutorial/liquidcrystaldisplay
exitos!!!
Arduino Forum > International > Español > Software (Moderators: surbyte, Hector_A) > Ayuda con el codigo, nose si es con el keypad o el lcd
arduino
Comments
Post a Comment