Skip to content

Instantly share code, notes, and snippets.

@elktros
Created August 2, 2018 04:52
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save elktros/f4e3ae58f5aa952d3a85371030677269 to your computer and use it in GitHub Desktop.
Save elktros/f4e3ae58f5aa952d3a85371030677269 to your computer and use it in GitHub Desktop.
Code for interfacing Knock/Vibration Sensor with Arduino.
const int knockPin = 8;
const int ledPin = 7;
int knockVal = HIGH;
boolean knockAlarm = false;
unsigned long prevKnockTime;
int knockAlarmTime = 100;
void setup ()
{
Serial.begin(9600);
pinMode (ledPin, OUTPUT) ;
pinMode (knockPin, INPUT) ;
}
void loop ()
{
knockVal = digitalRead (knockPin) ;
if (knockVal == LOW)
{
prevKnockTime = millis();
if (!knockAlarm)
{
Serial.println("KNOCK, KNOCK");
digitalWrite(ledPin,HIGH);
knockAlarm = true;
delay(1000);
}
}
else
{
if( (millis()-prevKnockTime) > knockAlarmTime && knockAlarm)
{
digitalWrite(ledPin,LOW);
Serial.println("No Knocks");
knockAlarm = false;
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment