Offline
Newbie
Karma: 0
Posts: 9
|
 |
« on: November 12, 2012, 05:02:02 am » |
salve a tutti, vorrei (anzi DEVO  ) realizzare un bottone arcade (stile quelli delle slot machine nei bar) USB, che simuli la barra spaziatrice, premettendo che sto a zero in elettronica, avevo pensato di realizzare questo:  e quindi di usare teensy, il problema è che deve arrivare dagli usa e non ho tempo di aspettare qualche settimana, poi m'è venuto in mente, perche non usare arduino che "lo abbiamo in casa"? pero sorge il problema che li avevo una foto esatta di cio che dovevo fare, dove e come dovevo collegare i fili e perfino il codice da usare: /*
* Button.pde
*/
void setup() {
Serial.begin(9600);
pinMode(10, INPUT_PULLUP);
delay(4000); }
void loop() {
if (digitalRead(10) == HIGH) {
delay(10);
} else {
Keyboard.print(" "); // we print a space
delay(1000); }
delay(10); }
ora mi chiedevo, come posso fare lo stesso con arduino? e quale delle versioni potrei usare? me ne serve "semplicemente" una già pronta da programmare a cui collegare quel tasto arcade e con usb per collegarla al pc.. e posso usare quello stesso codice? grazie a tutti per l'aiuto e la pazienza
|
|
|
|
|
Logged
|
|
|
|
|
Cagliari
Offline
Faraday Member
Karma: 49
Posts: 3018
|
 |
« Reply #1 on: November 12, 2012, 05:40:25 am » |
E' uscito da pochissimi giorni l'Arduino Micro, che monta lo stesso chip della Leonardo e come questa può essere programmato per simulare Mouse e Tastiera. --> http://arduino.cc/en/Main/ArduinoBoardMicroPer conoscere i negozi dove aquistarlo --> http://arduino.cc/en/Main/BuyRiguardo al codice forse dovrai modificare qualcosina, per il pulsante nessun problema.
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 9
|
 |
« Reply #2 on: November 12, 2012, 05:43:00 am » |
purtroppo è ancora in preview a me servirebbe provare in massimo in paio di giorni, altri consigli? riguardo al codice cosa c'è da modificare?
|
|
|
|
|
Logged
|
|
|
|
|
Cagliari
Offline
Faraday Member
Karma: 49
Posts: 3018
|
 |
« Reply #3 on: November 12, 2012, 06:00:58 am » |
A quel punto prendi la Leonardo. Riguardo al codice c'è da aggiungere il Keyboard.begin(); Questo è l'esempio preso dal reference ( http://arduino.cc/en/Reference/KeyboardBegin) void setup() { // make pin 2 an input and turn on the pullup resistor so it goes high unless connected to ground: pinMode(2, INPUT_PULLUP); Keyboard.begin(); }
void loop() { //if the button is pressed if(digitalRead(2)==LOW){ //Send the message Keyboard.print("Hello!"); } } Come vedi è molto simile al precedente. Cambiano solo il pin da connettere il 2 invece del 10, ma lo puoi cambiare tranquillamente, e le temporizzazioni. Nel tuo sketch c'è una pausa di 1 secondo. Essendoci la pull-up il collegamento diventa: Fig. 4 --> http://www.mcmajan.com/mcmajanwpr/?p=769Con la pull-up interna si semplifica ulteriormente il circuito quindi basta collegare il pulsante a GND e al pin (2 o 10 o quello che vuoi) con la resistenza in serie. Teoricamente la resistenza può essere omessa (c'è quella interna di pull-up), ma se fai un errore nei cablaggi rischi di bruciare il pin, quindi mettila ugualmente. PS: Ho trovato anche questa --> http://www.robot-italy.com/it/atmega32u4-breakout-board.html
|
|
|
|
« Last Edit: November 12, 2012, 06:04:53 am by PaoloP »
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 9
|
 |
« Reply #4 on: November 12, 2012, 06:03:16 am » |
la temporizzazione non mi serve, basta che a pressione del tasto è come se premessi la barra spaziatrice, al posto dell'hello world posso semplicemente usare " " e mi simula la barra spaziatrice?
|
|
|
|
|
Logged
|
|
|
|
|
0
Offline
Tesla Member
Karma: 82
Posts: 8229
:(){:|:&};:
|
 |
« Reply #5 on: November 12, 2012, 06:03:32 am » |
non puoi usare la classe Keyboard con la UNO, semplicemente non ha l'hardware necessario per simulare una tastiera USB.
MA puoi simulare una tastiera PS/2, e visto che esistono adattatori da PS/2 a USB in pratica puoi aggirare il problema in questo modo.
cerca arduino keyboard ps/2 e troverai le librerie e gli esempi che ti servono!
|
|
|
|
|
Logged
|
|
|
|
|
Cagliari
Offline
Faraday Member
Karma: 49
Posts: 3018
|
 |
« Reply #6 on: November 12, 2012, 06:08:33 am » |
non puoi usare la classe Keyboard con la UNO Chi ha parlato della UNO?  Lui ha parlato del Teensy, io della Micro e della Leonardo oppure di un'altra boarda ma sempre col 32U4. A questo punto però gli consiglio la Leonardo perché in futuro potrà montarci sopra gli shield ed espanderla. 
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 9
|
 |
« Reply #7 on: November 12, 2012, 06:09:12 am » |
posso prendere qualsiasi versione tanto mi serve per lavoro, basta che sia usb e abbia la possibilità di fare qeullo che mi serve, cioè emulare la barra spaziatrice... e un'altra cosa, è per forza necessario alimentarla esternamente? non c'è l'alimentazione via usb?
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 9
|
 |
« Reply #8 on: November 12, 2012, 06:14:00 am » |
ok ho dato un'occhiata e ordinerò la Leonardo, che se ho capito bene si alimenta anche via usb, poi dovrò soltanto capire bene i collegamenti, in questo (spero) mi aiuterete voi e un'amico che ne sa di elettronica  vi aggiorno appena arriva! nel frattempo se avete altri consigli o schermi o geni della lampada scrivete pure, mi sarebbe piaciuto avvicinarmi al mondo dell'elettronica un pò piu con calma ma ora è necessario!
|
|
|
|
|
Logged
|
|
|
|
|
Rome (Italy)
Offline
Tesla Member
Karma: 74
Posts: 7360
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
|
 |
« Reply #9 on: November 12, 2012, 06:20:33 am » |
e visto che esistono adattatori da PS/2 a USB in pratica puoi aggirare il problema in questo modo.
Non esiste nessun adattatore da PS/2 a USB, quelli che dici tu sono semplicemente degli adattatori di connettore, è il device, mouse o tastiera che sia, che deve integrare l'hardware PS/2 e USB. Semmai esistono i convertitori da PS/2 a USB che ti costano quasi quanto una Leonardo.
|
|
|
|
|
Logged
|
|
|
|
|
0
Offline
Tesla Member
Karma: 82
Posts: 8229
:(){:|:&};:
|
 |
« Reply #10 on: November 12, 2012, 06:29:27 am » |
non puoi usare la classe Keyboard con la UNO Chi ha parlato della UNO?  perche non usare arduino che "lo abbiamo in casa" quindi do per scontato avere una UNO/2010/2009 non c'è l'alimentazione via usb? tutte le board aruino sono alimentabili via USB, quindi se hai già un'arduino in casa, un pio di diodi zener a 3.6v hai già tutto quello che ti serve http://www.practicalarduino.com/projects/virtual-usb-keyboard
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Edison Member
Karma: 16
Posts: 1801
|
 |
« Reply #11 on: November 12, 2012, 06:57:11 am » |
e visto che esistono adattatori da PS/2 a USB in pratica puoi aggirare il problema in questo modo.
Non esiste nessun adattatore da PS/2 a USB, quelli che dici tu sono semplicemente degli adattatori di connettore, è il device, mouse o tastiera che sia, che deve integrare l'hardware PS/2 e USB. Semmai esistono i convertitori da PS/2 a USB che ti costano quasi quanto una Leonardo. ma io ho usato tastiere vecchie di 20 anni con un adattatore da 5 euro e funzionavano 
|
|
|
|
|
Logged
|
"Due cose sono infinite: l'universo e la stupidità umana, ma riguardo l'universo ho ancora dei dubbi..." Albert Einstein
|
|
|
|
Cagliari
Offline
Faraday Member
Karma: 49
Posts: 3018
|
 |
« Reply #12 on: November 12, 2012, 09:13:04 am » |
perche non usare arduino che "lo abbiamo in casa" quindi do per scontato avere una UNO/2010/2009 Io l'ho interpretato come: perché devo comprare un prodotto americano che per arrivare ci mette 40 giorni e non un prodotto italiano, fatto in italia da italiani, che, se lo ordino, ci mette meno di una settimana per averlo?
|
|
|
|
|
Logged
|
|
|
|
|
Dueville (VI)
Online
Edison Member
Karma: 15
Posts: 1051
http://cesarecacitti.wordpress.com/
|
 |
« Reply #13 on: November 12, 2012, 09:30:22 am » |
e visto che esistono adattatori da PS/2 a USB in pratica puoi aggirare il problema in questo modo.
Non esiste nessun adattatore da PS/2 a USB, quelli che dici tu sono semplicemente degli adattatori di connettore, è il device, mouse o tastiera che sia, che deve integrare l'hardware PS/2 e USB. Semmai esistono i convertitori da PS/2 a USB che ti costano quasi quanto una Leonardo. ma io ho usato tastiere vecchie di 20 anni con un adattatore da 5 euro e funzionavano  IO avevo letto che dovevano integrare la logica dell' usb per funzionare con gli adattatori delle bancarelle
|
|
|
|
|
Logged
|
Arduino UNO r3, Arduino MEGA 1280, adafruit motor shield, bluetooth module, enc28j60 shield. Ultimi acquisti: un sacco di componenti elettronici, ATTEN AT 8586
|
|
|
|
0
Offline
Tesla Member
Karma: 82
Posts: 8229
:(){:|:&};:
|
 |
« Reply #14 on: November 12, 2012, 10:04:47 am » |
dal link che ho postato PARE che bastino un paio di diodi per limitare la tensione in arrivo alla tastira, dopodichè il protocollo USB pare possedere un "retro-driver" che riconosce i comandi PS/2 e li interpreta in modo corretto..
|
|
|
|
|
Logged
|
|
|
|
|
|