아두이노와 조이스틱을 연결하여 입력을 받는 예
https://www.arduino.cc/en/Tutorial/JoyStick
조이스틱은 2개의 가변저항을 이용하여 2개의 축(x, y)에 대한 조작 정보를 입력할 수 있다. 1개의 가변저항을 통해 아나로그 값을 디지털 값으로 변환할 수 있다면 동일한 내용을 하나더 추가하면 된다
/* Read Jostick * ------------ * * Reads two analog pins that are supposed to be * connected to a jostick made of two potentiometers * * We send three bytes back to the comp: one header and two * with data as signed bytes, this will take the form: * Jxy\r\n * * x and y are integers and sent in ASCII * * http://www.0j0.org | http://arduino.berlios.de * copyleft 2005 DojoDave for DojoCorp */ int ledPin = 13; int joyPin1 = 0; // slider variable connecetd to analog pin 0 int joyPin2 = 1; // slider variable connecetd to analog pin 1 int value1 = 0; // variable to read the value from the analog pin 0 int value2 = 0; // variable to read the value from the analog pin 1 void setup() { pinMode(ledPin, OUTPUT); // initializes digital pins 0 to 7 as outputs Serial.begin(9600); } int treatValue(int data) { return (data * 9 / 1024) + 48; } void loop() { // reads the value of the variable resistor value1 = analogRead(joyPin1); // this small pause is needed between reading // analog pins, otherwise we get the same value twice delay(100); // reads the value of the variable resistor value2 = analogRead(joyPin2); digitalWrite(ledPin, HIGH); delay(value1); digitalWrite(ledPin, LOW); delay(value2); Serial.print('J'); Serial.print(treatValue(value1)); Serial.println(treatValue(value2)); }