PDA

Visualizza la versione completa : [C++] Interfacciamento Arduino per accensione di LED da PC


Sart
05-05-2012, 20:08
Ciao a tutti,
devo realizzare il gioco del tris in arduino con una GUI creata in C++.
Ho gi un'idea di come fare: in arduino carico un programma che si preoccupi solamente di accendere/spegnere 9 led che faranno da griglia di gioco. I dati (led spento/acceso) saranno contenuti in un array. In C++ creo 9 pulsanti, ognuno per ogni sezione della griglia e alla pressione di ognuno di essi invio i dati ad arduino, modificandone l'array contenente i dati dei led.

Come posso fare quest'ultima cosa? E' possibile?
Se no, come altro posso fare?

help :D

oregon
05-05-2012, 20:20
Ovviamente possibile. Ma tu hai mai realizzato un programma con interfaccia visuale in C++?

Scara95
05-05-2012, 20:24
Ma scusa, domanda stupida, pulsanti fisici no!?

Sart
06-05-2012, 09:27
Originariamente inviato da Scara95
Ma scusa, domanda stupida, pulsanti fisici no!?

Ci avevo gi pensato: 9 led e 9 pulsanti su arduino per un totale di 18 pin tra digitali e analogici collegati ma c' il problemino che un mio pin dell'arduino, non so perch, continua a dare corrente "HIGH" anche se lo setto a "LOW". Per cui non mi bastano pi i pin!


Ovviamente possibile. Ma tu hai mai realizzato un programma con interfaccia visuale in C++?

S ho imparato le basi da poco. So come creare la finestra, menu, dialog box (anche tramite file rc), pulsanti, listbox, progress bar ecc.. quello che non so fare comunicare con arduino.

Scara95
06-05-2012, 09:34
Magari un errore nel circuito, e se si tratta del pin dove hai il bottone, da li devi solo leggere, inoltre puoi diminuire il numero di pin utilizzati con resistenze e bottoni in parallelo ;)
Se vuoi ti faccio un'esempio di schema...

oregon
06-05-2012, 09:46
Originariamente inviato da Sart
S ho imparato le basi da poco. So come creare la finestra, menu, dialog box (anche tramite file rc), pulsanti, listbox, progress bar ecc.. quello che non so fare comunicare con arduino.

E come collegato? Con la seriale? USB?

Scara95
06-05-2012, 09:55
Posso farti una domanda stupida?!
A cosa ti serve un programma per arduino che dipende totalmente dal PC!?

Sart
06-05-2012, 10:40
Certo.
Entro fine anno per scuola devo fare un progetto e devo per forza usare arduino. Volendo si pu anche interfacciarlo con un altro software, ma comunque l'arduino bisogna utilizzarlo.
Io ero intenzionato a fare solo arduino con i pulsanti fisici, ma purtroppo c' il problema del pin che continua a dare corrente anche quando non dovrebbe!
Per cui ho deciso di interfacciarlo con il C++ e renderlo anche migliore, lasciando all'arduino l'unico compito di accendere i led.

Per farti un esempio, un mio compagno di classe sta facendo snake in java e usa arduino per scrivere il punteggio in un display LCD!

EDIT: Si Oregon, colelgato tramite USB

Scara95
06-05-2012, 11:58
Potresti dirmi di che pin si tratta, cosa hai collegato e che istruzioni usi per controllarlo?
L'hai collegato al ground?

Sart
06-05-2012, 13:04
Si tratta del pin digitale numero 4. Su di esso ho collegato un led con la sua resistenza e poi a GND. Per controllarlo scrivo cos:



pinMode(4, OUTPUT);
digitalWrite(4, LOW);


E mi genera corrente come se lo avessi settato a HIGH. Eppure tempo fa funzionava, non so come mai ora "si sia rotto".

Loading