Ejemplo 2
Uso de un joystic en el ESP32
Descripci贸n
En el siguiente ejemplo se conecta un joystick para prender a la placa ESP32. El firmware descargado en la placa imprime en el monitor serial las coordenadas x, y y z (valor digital que indica si el joystic fue presionado o no).
Componentes
La siguiente tabla muestra los componentes principales del circuito a montar:
ESP32
1
Joystick Module (Elegoo)
1
Tambien se puede emplear el KY-023 Joystick module (Landzo) el cual se encuentra disponible en el laboratorio
Conexi贸n
La conexi贸n entre el joystick se muestra en la siguiente tabla:
GND
GND (pin 1 - izquierda)
3.3
+5 (pin 2)
P2
VRx (pin 3)
P4
VRy (pin 4)
P15
SW (pin 5 - derecha)
Esquematico
La siguiente figura muestra el esquematico:

Conexi贸n
A continuaci贸n se muestra la conexi贸n entre los componentes:

Archivo Fritzing
Programa
A continuaci贸n se muestra el programa que se ejecuta en el ESP32, el cual basicamente es el mismo programa implementado para el Arduino UNO pero empleando otros pines:
/**
Hardware Connections:
| ESP32 | DTH11 |
|---|---|
|GND | GND (pin 1 - izquierda) |
|3.3 | +5 (pin 2) |
|P2 | VRx (pin 3) |
|P4 | VRy (pin 4) |
|P15 | SW (pin 5 - derecha) |
*/
const int pinX = 2; // P2 (GPIO02 - ADC11)
const int pinY = 4; // P4 (GPIO04 - ADC12)
const int pinSW = 15; // P15 (GPIO15)
int valueX = 0; // Analog
int valueY = 0; // Analog
int valueZ = 0; // Digital
void setup() {
Serial.begin(9600);
}
void loop() {
valueX = analogRead(pinX);
Serial.print("X:");
Serial.print(valueX, DEC);
valueY = analogRead(pinY);
Serial.print(" | Y:");
Serial.print(valueY, DEC);
valueZ = digitalRead(pinSW);
Serial.print(" | Z: ");
Serial.println(valueZ, DEC);
delay(100);
}
Simulaci贸n
Para comprender el funcionamiento del programa, puede seguir el siguiente link donde hay una simulaci贸n del programa.

Last updated