Joystick Arduino

El módulo tiene 5 pines: VCC, GNG, X, Y, pulsación. La salida X, Y es analógica, además, puede presionar el joystick hacia abajo para activar la salida digital.

j

    • VCC o +5V: alimentación del módulo.
    • GND: Conexión a tierra.
    • VRx o HORZ: permite conocer la posición de la palanca con el eje x (movimiento horizontal).
    • VRy o VERT: permite conocer la posición de la palanca con el eje y (movimiento vertical).
    • SW o SEL: pulsador

Cuando el joystick se encuentra en la posición de reposo o medio, debe devolver un valor de aproximadamente 512.

Tenemos que usar pines Arduino analógicos para leer los datos de los pines X / Y, y un pin digital para leer el botón.

Para obtener lecturas estables del pin Key / Select, debes conectar a VCC a través de una resistencia pull-up. Aunque las resistencias incorporadas en los pines digitales de Arduino se pueden utilizar (INPUT_PULLUP).

Joystick_with_Arduino_bb

Abrir el monitor serie y el serial plotter para ver los valores de salida del joystic.

El código:

// Arduino pin numbers
const int SW_pin = 2; // digital pin connected to switch output
const int X_pin = 0; // analog pin connected to X output
const int Y_pin = 1; // analog pin connected to Y output

void setup() {
     pinMode(SW_pin, INPUT_PULLUP );
Serial.begin(250000);
}

void loop() {
Serial.print(«Switch: «);
Serial.print(digitalRead(SW_pin)*500);
Serial.print(» «);
Serial.print(«X-axis: «);
Serial.print(analogRead(X_pin));
Serial.print(» «);
Serial.print(«Y-axis: «);
Serial.println(analogRead(Y_pin));
Serial.print(«\n»);
}