Differences
This shows you the differences between two versions of the page.
hu:arduino:joystick [2018/08/26 17:41] |
hu:arduino:joystick [2022/04/21 15:02] () |
||
---|---|---|---|
1: | 1: | ||
+ | {{ : | ||
+ | ====== Joystick ====== | ||
+ | A modul a 80-as, 90-es évek feelingjét adja vissza, egyben pedig egy univerzális kezelőszerv. Egy nyomógombot is magába foglal az iránykijelölésen túl. Az iránymegjelelölések (x, y) beolvasása analóg-jeleken keresztül történik, így a négy fő irányon kívül a pozíciómeghatározás meglehetősen rugalmas lehet. | ||
+ | ===== Csatlakozó ===== | ||
+ | ^pin^leírás| | ||
+ | |GND|Grund| | ||
+ | |+5V|Táp| | ||
+ | |VRx|Analóg (0..1024) X pozíció komponens| | ||
+ | |VRy|Analóg (0..1024) Y pozíció komponens| | ||
+ | |SW|Digitális jel (a gomb lenyomása után)| | ||
+ | |||
+ | {{: | ||
+ | |||
+ | |||
+ | |||
+ | ===== Vezetékezés ===== | ||
+ | |||
+ | {{: | ||
+ | |||
+ | ===== Szoftver ===== | ||
+ | |||
+ | <code c> | ||
+ | // OB121.com Joystick demo - Vámos Sándor 2018 | ||
+ | |||
+ | #define joystickX A0 // X tengely PIN A0. | ||
+ | #define joystickY A1 // Y tengely PIN A1. | ||
+ | int button = 5; // Nyomógomb a PIN 5 | ||
+ | const int PAUSE = 250; // Várakozás | ||
+ | long lastAction = -1; // Időpecsét | ||
+ | void setup() { | ||
+ | Serial.begin(9600); | ||
+ | // A myomógomb felhúzóellenállással kerül definiálásra, | ||
+ | // a jelek negálásra kerülnek LOW == HIGH és HIGH == LOW | ||
+ | pinMode(button, | ||
+ | } | ||
+ | void loop() { | ||
+ | // Aktuális ms állás az indulás óta | ||
+ | long currentTimestamp = millis(); | ||
+ | // A várakozási idő kivárása | ||
+ | if(lastAction < (currentTimestamp-PAUSE)){ | ||
+ | lastAction = currentTimestamp; | ||
+ | | ||
+ | // A joystick x és y pozíciói | ||
+ | int x = analogRead(joystickX); | ||
+ | int y = analogRead(joystickY); | ||
+ | Serial.print(" | ||
+ | Serial.print(x); | ||
+ | Serial.print(", | ||
+ | Serial.println(y); | ||
+ | } | ||
+ | | ||
+ | // Nyomógomb lekérdezése | ||
+ | if(digitalRead(button)==LOW){ | ||
+ | Serial.println(" | ||
+ | } | ||
+ | } | ||
+ | </ |