3D - Джойстик
1
2
3
4
5
GND
+5V
VRX
RS
RW
- Общий вывод (GND)
- Питание (+5V)
- Аналоговое значение оси Х
- Аналоговое значение оси Y
- Цифровое значение оси Z
  • Джойстик имеет три оси: X и Y - аналоговые, т.е. с плавным измерение положения и цифровой осью Z - кнопкой
  • Значение на аналоговых пинах изменяется при перемещении джойстика от 0 - крайнее левое положение до 1023 - крайнее правое. Эти пины стоит подключить напрямую к аналоговым входам Arduino (A0-A5)
  • Изначально ось Z должна быть подтянута к питанию (+5 В) через резистор 220 Ом и подключена к цифровому входу Arduino. Считывание кнопки в этом случае даст логическую единицу. При нажатии, вывод прижимается к земле и считывание дает логический ноль
Типовая схема подключения
Функции для работы с датчиком:
digitalRead(pin); - считать цифровое значение с пина Arduino
analogRead(pin); - считать аналоговое значение значение с пина Arduino
Больше информации здесь.
Пример кода
#define XAXIS  A0
#define YAXIS  A1
#define ZAXIS  3
int x,y,z;

void setup() 
{
  Serial.begin(9600);                  // открываем монитор Serial-порта
}
 
void loop()
{
  x = analogRead(XAXIS);   // считываем аналогове значени с оси Х
  y = analogRead(YAXIS);   // считываем аналогове значени с оси Y
  z = digitalRead(ZAXIS);  // считываем цифровое значени с оси Z
  
  Serial.print(x);
  Serial.print("\t");
  Serial.print(y);
  Serial.print("\t");
  Serial.println(z);
  
  delay(100);                           //Пауза
}