SKU: OT620-B36 Numero articolo: YQ939 EAN: 8720828223031
Con questa scheda è possibile visualizzare la posizione X e Y del joystick come tensione analogica sui pin di uscita. Adatta per progetti con, tra gli altri, Arduino, Raspberry Pi, ESP8266 o ESP32.
vedi qui lo Schema di collegamento e il codice di esempio >>>
Il modulo può essere saldato o utilizzato su una breadboard.
Intervallo di tensione: 0 - 5 V
Tensione di esercizio: 3,3 - 5V
Dimensioni: 34 x 39 x 26 mm
Ecco come collegare il Modulo joystick a un Arduino UNO o ESP32, con uno sketch di esempio che puoi caricare subito.
Questo esempio legge le posizioni analogiche degli assi X e Y insieme al pulsante integrato del modulo joystick. Muovi la levetta o premi verso il basso per visualizzare i valori di posizione in tempo reale e lo stato del pulsante nel Serial Monitor.
/*
* ==================================================================
* Generated by Codey.online — https://www.codey.online
* ==================================================================
* Project : Dual-Axis Joystick Module with Pushbutton
* Board : Arduino UNO (arduino:avr:uno)
* Parts : Joystick module
* Libraries : none (built-in)
*
* Codey Online is an AI-powered browser IDE for Arduino and ESP32.
* Describe your project and Codey writes the code, draws the wiring
* diagram and uploads it to your board, straight from the browser.
* This code is free to use, modify and share, without warranty.
* ==================================================================
*/
// Pin definitions
const int PIN_X = A0;
const int PIN_Y = A1;
const int PIN_SW = 2;
void setup() {
// Enable internal pull-up resistor for the integrated pushbutton
pinMode(PIN_SW, INPUT_PULLUP);
Serial.begin(115200);
Serial.println(F("Joystick Module Demo"));
Serial.println(F("--------------------"));
}
void loop() {
// Read analog values for X and Y axes (range: 0 - 1023)
int xVal = analogRead(PIN_X);
int yVal = analogRead(PIN_Y);
// Button is active-low (reads LOW when pressed)
bool isPressed = (digitalRead(PIN_SW) == LOW);
// Print the results to Serial Monitor
Serial.print(F("X: "));
Serial.print(xVal);
Serial.print(F(" | Y: "));
Serial.print(yVal);
Serial.print(F(" | Button: "));
Serial.println(isPressed ? F("PRESSED") : F("RELEASED"));
delay(150);
}
Wiring diagram and example code generated by Codey.online — https://www.codey.online
Questo progetto legge le posizioni X e Y e anche lo stato del pulsante integrato di un modulo joystick analogico a due assi. L’ESP32 legge le tensioni analogiche tramite GPIO 34 e 35, e lo stato del pulsante tramite GPIO 32. Apri il Monitor Seriale a 115200 baud per vedere in tempo reale le coordinate del joystick e le pressioni del pulsante.
/*
* ==================================================================
* Generated by Codey.online — https://www.codey.online
* ==================================================================
* Project : ESP32 Analog Joystick Module Demo
* Board : ESP32 DEVKIT V1 (esp32:esp32:esp32doit-devkit-v1)
* Parts : Joystick module
* Libraries : none (built-in)
*
* Codey Online is an AI-powered browser IDE for Arduino and ESP32.
* Describe your project and Codey writes the code, draws the wiring
* diagram and uploads it to your board, straight from the browser.
* This code is free to use, modify and share, without warranty.
* ==================================================================
*/
// Pin definitions (using bare GPIO numbers for ESP32)
const int pinVRX = 34;
const int pinVRY = 35;
const int pinSW = 32;
void setup() {
Serial.begin(115200);
// Configure push-button pin with internal pull-up
pinMode(pinSW, INPUT_PULLUP);
}
void loop() {
// Read analog values from joystick potentiometers (0 - 4095 on ESP32)
int xVal = analogRead(pinVRX);
int yVal = analogRead(pinVRY);
// Read digital state of the integrated switch (LOW when pressed)
bool isPressed = (digitalRead(pinSW) == LOW);
// Print the readings to the Serial Monitor
Serial.print("X: ");
Serial.print(xVal);
Serial.print(" | Y: ");
Serial.print(yVal);
Serial.print(" | Button: ");
Serial.println(isPressed ? "PRESSED" : "RELEASED");
delay(100);
}
Wiring diagram and example code generated by Codey.online — https://www.codey.online