Título: Arduino HID Publicado por: abigliazzi en 18 Abril 2018, 22:34 pm Hola, configure mi arduino Mega 2560 para que funcionara como un puerto HID para utilizarlo como macro de teclado, hice algunas pruebas de codigo como
Citar #include "Keyboard.h" #include "HID.h" void setup() { Keyboard.begin(); } void loop() { delay (1000); Keyboard.write(65); } Funciono, cada 1 segundo me escribía la letra "A".. Hasta acá todo bien, ahora lo que quiero hacer es que cuando apriete un botón en cualquier pin de la placa que arranque el loop ej, Key_F1 (cada 1 segundo) Key_F2(cada 20 segundos) Key_F3(cada 5 segundos) es decir, en 1 minuto se pulso 60 veces "F1" 3 veces "F2" y 12 veces "F3" sin detenerse y finalmente que cuando vuelva a apretar el botón se detenga la cadena... me explico ? estoy medio trabado con el codigo, me tira errores cuando quiero agregar mas de 1 tecla y también me tira error cuando pongo el pinmode. Me ayudaría mucho que me pongan un ejemplo de varias teclas distintas con Keyboard.write y delay , ya que 1 sola pude hacerlo andar pero los errores comienzan cuando pongo mas de 1.. espero su ayuda Desde ya muchas gracias ! Título: Re: Arduino HID Publicado por: engel lex en 18 Abril 2018, 22:46 pm en este caso no deberías usar delay sino contar el tiempo y llevar el tiempo de cada cosa para saber cuantos segundos han pasado
Título: Re: Arduino HID Publicado por: abigliazzi en 18 Abril 2018, 22:49 pm Claro, pero es por tiempo indefinido, quiero finalizar el loop cuando vuelva a presionar el interruptor, porque lo que necesito es el F1 se presione cada 1 segundo y que el F2 cada 20 por ejemplo
Título: Re: Arduino HID Publicado por: engel lex en 18 Abril 2018, 22:54 pm explica en detalle los errores de los pines...
para tener el tiempo esta funcion te sirve https://www.arduino.cc/reference/en/language/functions/time/millis/ Título: Re: Arduino HID Publicado por: abigliazzi en 18 Abril 2018, 23:11 pm Código:
Algo así seria ? disculpa si estoy poniendo alguna burrada soy medio nuevo en arduino :-X Título: Re: Arduino HID Publicado por: engel lex en 18 Abril 2018, 23:21 pm Citar Algo así seria ? disculpa si estoy poniendo alguna burrada soy medio nuevo en arduino :-X piensa en la algoritmia... Código
si no eres flojo como yo XD y usas array, puedes de una sola pasada activar y desactivar secuencias :P Título: Re: Arduino HID Publicado por: MAFUS en 18 Abril 2018, 23:27 pm No he trabajado mucho en Arduino, así que voy a dar unas ideas generales.
Crea una variable tipo bool para saber si debe correr el temporizador. Crea una variable tipo entero para saber qué pin ha sido el último en activarse. Crea una variable tipo unsigned que marque el tiempo de marca del temporizador. Cuando actives un pin: Cambias la mara de tiempo a la referente a ese pin Observa si el temporizador estaba en marcha Si lo estaba y el pin es igual al ultimo pin Detienes el temporizador Si estaba parado Pones en marcha el temporizador Si el temporizador está en marcha Si el tiempo ha llegado a la marca Envías el carácter por el teclado virtual Reinicia el temporizador a 0 |