Arduino en español
Circuitos con Arduino - Juan Antonio Villalpando
-- Tutorial de iniciación a Arduino --
Volver al índice del tutorial
____________________________
22.- JoyStick.
En esta ocasión se trata de conectar un Joystick al Arduino,.
Vamos a utilizar el Thumb Joystick Module for Arduino - Black, viene a costar menos de 1 €.
La conexión en la placa del Arduino es sencilla.
Pero debemos tener en cuenta que los pines del Joystick son machos, por lo cual necesitamos un cable macho-hembra para conectarlo a las entradas del Arduino que son hembras.
_______________________
- Conexiones.
Vcc a 5 v
GND a GND
VRx al terminal ANALÓGICO A4
VRy al terminal ANALÓGICO A5
SW al terminal DIGITAL 2
________________________________________
- Código.
- Para ver el resultado abrimos el Serial Monitor.
- Obtendremos valores entre 0 y 1024. Cuando el JoyStick esté centrado, marcará: 512 512
Código |
#define AD1_PIN A4
#define AD2_PIN A5
void setup() {
Serial.begin(9600);
Serial.println("JOYSTICK reading -");
}
void loop() {
int value;
value = analogRead(AD1_PIN);
Serial.print(value);
Serial.print(" ");
value = analogRead(AD2_PIN);
Serial.println(value);
delay(1000);
} |
________________________
- Otro código.
- En este caso solo mostrará Arriba, Abajo, Izquierda, Derecha.
Código |
const int Left = 1;
const int Right = 2;
const int Up = 3;
const int Down = 4;
int xpin = 4;
int ypin = 5;
int xAxis;
int yAxis;
char* myStrings[]={"Left","Right","Up","Down"};
int button;
void setup() {
Serial.begin(9600);
}
void loop() {
xAxis=map(analogRead(xpin), 0, 1023, 0, 10);
yAxis=map(analogRead(ypin), 0, 1023, 0, 10);
if (xAxis < 4 ) { button = Left; }
else if (xAxis > 6 ) { button = Right; }
if (yAxis < 4 ) { button = Down; }
else if (yAxis > 6 ) { button = Up; }
if ( button > 0 ) Serial.println(myStrings[button-1]);
button = 0;
delay(50);
} |
________________________
- Pulsador. Switch.
- También puede actuar como pulsador, ya que dispone de un pequeño pulsador que se activa cuando pulsamos el botón del JoyStick.
- Vamos conectar el terminal SW del JoyStick al terminal digital 2 del Arduino. Además debe estar conectado la Vcc y la GND.
- Cuando pulsemos el JoyStick en el Serial Monitor leeremos "Pulsado" y cuando esté en reposo "No Pulsado".
________________________________________
- Conexiones.
Vcc a 5 v
GND a GND
SW a la entrada digital 2
Código |
/*
Juan A. Villalpando
kio4.com
*/
int SW2 = 2;
void setup() {
pinMode(SW2, INPUT);
digitalWrite(SW2, HIGH);
Serial.begin(9600);
}
void loop() {
delay(100);
boolean boton = digitalRead(SW2);
if (boton == HIGH){
Serial.print("NO Pulsado");
}
else{
Serial.print("Pulsado");
}
Serial.println();
} |
________________________________
|