November 6, 2022

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); } }