Digispark (Adruino) + KY-037 датчик шума
Теперь можно биндить на F12 выключение компа при хлопке или что-то другое, к примеру коммит. Все делается на коленке очень быстро.
Подкидываем OUT с датчика например к порту sensorPin 2 (d/a) Digispark и выставляем потенциометр на чувствительность загорания светодиода. А дальше код с защитой шумности сигнала, обязательно! иначе адекватно не заработает.
#include "DigiKeyboard.h"
#define sensorPin 2
unsigned long lastEvent = 0;
void setup() {
delay(1000);
pinMode(1, OUTPUT);
pinMode(sensorPin, INPUT);
}
void loop() {
int sensorData = digitalRead(sensorPin);
if (sensorData == LOW) {
if (millis() - lastEvent > 25) {
digitalWrite(1, HIGH);
DigiKeyboard.sendKeyStroke(KEY_F12);
delay(1000);
}
lastEvent = millis();
} else {
digitalWrite(1, LOW);
}
}