// датчики подключены по порядку в числовой последовательности // даём разумное имя для пина к которому подключен первый датчик #define START_PIN 4 // Массив состояний каждого из датчиков bool state[8]; // Массив кнопок клавиатуры char keys[] = {'q', 'w', 'e', 'r', 't', 'y', 'u', 'i'}; void setup() { // Начало работы эмуляции клавиатуры (только на платах Leanardo или Due) Keyboard.begin(); } void loop() { // проверяем по очереди каждый датчик for (int i = 0; i < 8; ++i) { // считываем состояние каждого из датчикок, где // i — номер датчика с которого идёт считывание bool curState = digitalRead(START_PIN + i); if (curState != state[i]) { // если датчик изменил своё состояние // присваиваем ему новое состояние state[i] = curState; if (curState) // если новое состояние истино // отправляем подсоединенному компьютеру // сигнал о нажатии клавиши, где // i — номер кнопки Keyboard.write(keys[i]); } } delay(10); }