Foro MetalAficion

General => Presentación de Nuevos Foreros => Mensaje iniciado por: martin aquino en 29 Junio 2017, 16:46

Título: como puedo guardar datos al presionar una tecla con arduino
Publicado por: martin aquino en 29 Junio 2017, 16:46
buenos días soy nuevo en esto del arduino
estoy usando el teclado matricial, con la ayuda del case:
en cada case contiene un dato, quiero saber si ser puede guardar ese dato, cada vez que se presiona, y después cuando la quiera ver la mande llamar y esta se imprima y así sucesivamente para todos los case
gracias
Título: Re:como puedo guardar datos al presionar una tecla con arduino
Publicado por: alberttoy en 29 Junio 2017, 17:03
Si, puedes guardarlo sin problema.
Título: Re:como puedo guardar datos al presionar una tecla con arduino
Publicado por: martin aquino en 29 Junio 2017, 17:59
como, seria con un contador  o un array .confuso2 
no entiendo esta parte
Título: Re:como puedo guardar datos al presionar una tecla con arduino
Publicado por: vier en 30 Junio 2017, 01:03
Bienvenido al foro.
Puedes guardarlos en una array , incluso si es una tecla, puedes guardar en modo byte en la array y después "traducirla" mediante otro case.
seria algo como crear una array de x valores, e ir guardando el valor de la tecla en ella un ejemplo, perdón, pero no se si la sintaxis estará bien:

byte tecla_entrada[];
integer contador =0;
integer i;
byte comandodesalida=loquesea;
do
   {
   teclaleida= DigitalRead (pinqueleetecla);
 if (teclaleida <>comandodesalida ) tecla_entrada[contador]=teclaleida;
contador ++
.
.
.
}
while (comando de salida)
for (i=0, i++){
switch (tecla_entrada ){
  case 1
 haz algo
break
case 2
haz otra cosa
break .
.
.
.
.
.
y más o menos así
Título: Re:como puedo guardar datos al presionar una tecla con arduino
Publicado por: martin aquino en 30 Junio 2017, 18:46
ok gracias por su ayuda, si me sirvió la ayuda
Título: Re:como puedo guardar datos al presionar una tecla con arduino
Publicado por: vier en 03 Julio 2017, 21:15
De nada, aquí estamos también para ayudar. Me di cuenta de un detalle que deberás tener en cuenta, y es poner un sistema antirrebote, es decir, que detecte que se ha soltado la tecla y que no lea cadena vacía. Otra cosa, creo que el bucle for... lo he puesto mal, sería infinito,  debería ser algo como
for (int i=0; i<contador; i++){
.
.
.


Saludos
Título: Re:como puedo guardar datos al presionar una tecla con arduino
Publicado por: martin aquino en 03 Julio 2017, 23:03
oye como puedo sumar o multiplicar el mismo,
como el pulsador va en incremento por ejemplo la tecla vale 12 al presionarla esta se suma y son 24,36,...
Título: Re:como puedo guardar datos al presionar una tecla con arduino
Publicado por: vier en 04 Julio 2017, 15:06
Ahora no entiendo lo de multiplicarlo, si te refieres a la variable del bucle, se puede incrementar el valor que se quiera dentro del bucle mismo, o si no, en vez de i++ en el incremento, poner i+12
Si es para ir sumando valores, entonces, mejor que se incrementen en el array mismo, puedes hacer un array de tamaño del número de teclas y sumar las veces que se han ido pulsando en su valor. Sería asignar, por ejemplo el array[0] a la tecla 2, el array[1] a la tecla 2.....
y cada vez que se pulse la tecla, incrementar el valor del elemento del aray y multiplicarlo por el valor que sea a la hora de mostrarlo.
Si me disculpas, debo irme a trabajar, miro si esta noche puedo desarrollarlo un poco para dar una idea.
La verdad es que no he trabajado con teclados matriciales y no se como se leen, voy a investigar un poco y te digo que solución se me ocurre