Код для подключения джойстика 5 каналов
В примере ниже показано, как подключить вывод джойстика 5 каналов к монитору последовательного порта платы (вывод можно посмотреть в мониторе порта Arduino IDE).
const int Y_PIN = 2; // подключение оси Y джойстика к аналоговому пину 2 const int X_PIN = 1; // подключение оси X джойстика к аналоговому пину 1 const int BUTTON_PIN = 8; // подключение кнопки к цифровому пину 8 float stepSize = 180 / 1024; // вычисление шага: деление градусов на градацию // Угол поворота джойстика равен 180 градусов, АЦП (аналого цифровой преобразователь)выдает значения от 0 до 1023, всего 1024 градации void setup() { Serial.begin(9600); // инициализация монитора порта } void loop() { int yVal = analogRead(Y_PIN); // введение переменной yVal для считывания показаний аналогового значения по оси Y int xVal = analogRead(X_PIN); // введение переменной xVal для считывания показаний аналогового значения по оси Х float yAngle = yVal * stepSize; // конвертирование выходных данных yVal в угол наклона джойстика (от 0 до 180 градусов) float xAngle = xVal * stepSize; // конвертирование выходных данных yVal в угол наклона джойстика (от 0 до 180 градусов) boolean isNotClicked = digitalRead(BUTTON_PIN); // считывание информации о клике на джойстик Serial.print("Горизонтальный угол = "); // вывод текста Serial.println(xAngle); // значение угла по оси X Serial.print("Вертикальный угол = "); Serial.println(yAngle); // значение угла по оси Y if (!isNotClicked) // если происходит нажатие на джойстик, то выводить текст в монитор порта { Serial.println("Нажатие джойстика"); } delay(1000); // задержка 1 секунда }
Скачать файл с кодом, формат .INO: Джойстик