premetto che sono nuovo da queste parti e quindi mi scuso anticipatamente se scriverò qualche belinata come dicono a Genova.
Ho un Arduino Leonardo dove fino ad oggi e' stato usato come emulatore di tastiera semplice ,mi spego meglio,ai suoi ingressi digitali ho dei pulsanti n/a che quando vengono premuti l'Arduino genera delle lettere e dei numeri come se fosse una tastiera di un pc.
Lo skech che uso è' il seguente:
#include <Keyboard.h>
void setup() {
pinMode(0, INPUT_PULLUP);
pinMode(1, INPUT_PULLUP);
pinMode(2, INPUT_PULLUP);
Keyboard.begin();
}
void loop() {
int statoPulsante0 = digitalRead(0);
int statoPulsante1 = digitalRead(1);
int statoPulsante2 = digitalRead(2);
if (statoPulsante0 == LOW) {Keyboard.press(97);}
else {Keyboard.release(97);}
if (statoPulsante1 == LOW) {Keyboard.press(98);}
else {Keyboard.release(98);}
if (statoPulsante2 == LOW) {Keyboard.press(99);}
else {Keyboard.release(99);}
}
Fino a qui tutto ok ,poi mi servivano funzioni generate dall'Arduino piu' complicate tipo (shift+a,ctrl+e ecc.) e ho trovato sul sito di Arduino il seguente sketch:
Lo sketch funziona ma solo con il pulsante 0 se sullo sketch volessi inserire tutti gli ingressi come faccio?
Io ho provato in tutti i modi per esempio come segue ma non mi funziona correttamente per far scrivere l'Arduino devo in seguenza pigiare prima il pulsante 0 poi 1 poi 2 poi 0 ,1 ,2 e così via,
cioe' se io volessi pigiare per prima il pulsante 2 devo iniziare dal 1 cmq.
Lo skech che ho provato e' il seguente :
lo skech dovrebbe generare sul puls N° 0 ctrl+m sul pulsante N° 1 ctrl+n e sul pulsante N° 2 ctrl +o.
Ti invitiamo a presentarti (dicci quali conoscenze hai di elettronica e di programmazione) qui: Presentazioni
e a leggere il regolamento se non lo hai già fatto: Regolamento
Qui una serie di link utili, non inerenti al tuo problema:
Il codice devi racchiuderlo nei tag code, vedi sezione 7 del regolamento, spiega bene come fare ( pulsante </> ).
Altrimenti parte del codice può essere visualizzata male o mancare perchè interpretato come attributo del testo stesso.
Scusa SUKKOPERA ma i tasti che puoi cambiare sono quelli normali in ascii (97,98,99) io devo abbinarne 2 da pigiare insieme lo shift+97(a) come faccio?
Praticamente il mio Leonardo quando pigio il tasto sull'ingresso 0 mi deve scrivere in uscita SHIFT+(LETTERA) oppure CTRL+ (LETTERA).
Grazie SUKKOPERA ci riprovo ,dato che questa soluzione l'avevo adottata riscontrando un problema che sul sw del GAME quando memorizzi per esempio CTRL+A sulla tastiera l'operazione meccanica che vai a digitare e' la seguente :
Vorrei fare ad Arduino questo e non riesco a capire come fare o meglio con un tasto ci sono riuscito (vedi il secondo skech) ma solo su un ingresso.
Grazie del tuo interessamento.
1) premi "ctrl"
2) premi "a"
3) rilasci "a"
4) rilasci "ctrl"
>magicguru: ti ricordo che in conformità al regolamento, punto 7, devi editare il tuo post #1 (in basso a destra del post, bottone More -> Modify) e racchiudere il codice all'interno dei tag CODE (... sono quelli che in edit inserisce il bottone fatto così: </>, tutto a sinistra).
Ciao Sukkopera,ho provato sembra che funzioni a parte che dall' ingresso n° 2 per ottenere l'uscita corretta bisogna pigiare piu' volte il tasto nel mio caso come da skech dovrebbe generare una "o".