Для тех, кому интересна возможность подключения двух джойстиков, однако надо немного модифицировать программу опроса COM порта написанную на Java автором статьи.
По прошивке совсем небольшая модификация:
SMDjoystick j(2, 3, 4, 5, 6, 7, 8);
SMDjoystick j2(A0,A1,A2,A3,9,10,11);
---
uint16_t data = 0;
uint16_t data2 = 0;
---
void loop() {
data = j.read();
data2 = j2.read();
String temp;
String temp2;
void loop() {
data = j.read();
data2 = j2.read();
String temp;
String temp2;
for (int i = 0; i < SMD_MAX_KEYS; i++) {
bool c = (data >> i) & 1;
temp = temp + c;
}
for (int i = 0; i < SMD_MAX_KEYS; i++) {
bool c = (data2 >> i) & 1;
temp2 = temp2 + c;
}
Serial.print(String(temp)+":"+String(temp2));
Serial.println();
delay(90);
}
По коду видно, что в программе опроса COM порта на PC надо будет читать данные на два джойстика разделенные двоеточием: Serial.print(String(temp)+":"+String(temp2));
В приложенном изображении видно, что из-за нехватки дискретных(цифровых) входов я использовал 4 аналоговых входа, на которые посадил сигналы от стрелок джойстика (эти сигналы всегда стабильны вне зависимости от состояния сигнала SELECT).