const int pins[] = { 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 };
const int joystickXPin = 26; // Пін для горизонтального руху джойстика
void setup() {
// Ініціалізація пінів індикатора як OUTPUT
for (int i = 0; i < 10; i++) {
pinMode(pins[i], OUTPUT);
}
}
void loop() {
// Зчитуємо значення з піну джойстика для горизонтального руху
int joystickValue = analogRead(joystickXPin);
// Перетворюємо зчитане значення на кількість стовпців, які повинні бути вклучені
// Значення joystickValue буде в діапазоні від 0 до 1023, тому масштабуємо його до 0-9
int numColumns = map(joystickValue, 0, 1023, 0, 9);
// Включаємо відповідну кількість стовпців
for (int i = 0; i < 10; i++) {
if (i <= numColumns) {
digitalWrite(pins[i], HIGH); // Включаємо стовпець
} else {
digitalWrite(pins[i], LOW); // Вимикаємо стовпець
}
}
delay(50); // Затримка для плавності
}