Такие приложения, как видеоигры, требующие изменения положения курсора в двухмерной плоскости, используют аналоговые джойстики в качестве устройств ввода.
Аналоговый джойстик выдает два напряжения; один соответствует положению относительно оси X, а другой соответствует положению относительно оси Y. Производимые напряжения зависят от положения джойстика.
Для получения дополнительной информации об аналоговом джойстике и о том, как его использовать, прочтите статью «Аналоговый джойстик».
Чтобы связать аналоговый джойстик с Arduino Uno, нам нужно использовать АЦП на микроконтроллере платы Arduino UNO.
Схема подключения джойстика к Arduino UNO
В качестве примера возьмем отображение напряжения аналогового джойстика в направлениях X и Y на последовательном мониторе Arduino.
Здесь мы будем использовать аналоговые выводы Arduino для обработки аналоговых напряжений джойстика.
Скетч для определения напряжения джойстика в направлениях X и Y
const int joystick_x_pin = A2;
const int joystick_y_pin = A1;
void setup() {
Serial.begin(9600);
}
void loop() {
int x_adc_val, y_adc_val;
float x_volt, y_volt;
x_adc_val = analogRead(joystick_x_pin);
y_adc_val = analogRead(joystick_y_pin);
x_volt = ( ( x_adc_val * 5.0 ) / 1023 ); /* Преобразование цифрового значения в напряжение */
y_volt = ( ( y_adc_val * 5.0 ) / 1023 ); /* Преобразование цифрового значения в напряжение */
Serial.print("X_Voltage = ");
Serial.print(x_volt);
Serial.print("\t");
Serial.print("Y_Voltage = ");
Serial.println(y_volt);
delay(100);
}



