int recButton = 0;
int capButton = 1;
int altRecButton = 2;
int vibLED = 4;
int vibBUZ = 5;
bool lastRecState = LOW;
bool recState = LOW;
bool altRecState = LOW;
void setup() {
Serial.begin(9600);
Serial.println("Starting Program...");
pinMode(recButton, INPUT);
pinMode(capButton, INPUT);
pinMode(altRecButton, INPUT);
pinMode(vibLED, OUTPUT);
pinMode(vibBUZ, OUTPUT);
}
void loop() {
if (digitalRead(recButton) == HIGH && recState == LOW) {
digitalWrite(vibLED, HIGH);
digitalWrite(vibBUZ, HIGH);
delay(1000);
if (digitalRead(recButton == HIGH)){
digitalWrite(vibLED, LOW);
digitalWrite(vibBUZ, LOW);
delay(200);
digitalWrite(vibLED, HIGH);
digitalWrite(vibBUZ, HIGH);
delay(500);
digitalWrite(vibLED, LOW);
digitalWrite(vibBUZ, LOW);
recState = HIGH;
Serial.println("Starting Recording");
}
else{
digitalWrite(vibLED, LOW);
digitalWrite(vibBUZ, LOW);
}
} else {
if (digitalRead(recButton) == HIGH && recState == HIGH) {
Serial.println("Stoping Recording");
digitalWrite(vibLED, LOW);
digitalWrite(vibBUZ, LOW);
Serial.println("Saving Data");
delay(150);
digitalWrite(vibLED, HIGH);
digitalWrite(vibBUZ, HIGH);
delay(200);
digitalWrite(vibLED, LOW);
digitalWrite(vibBUZ, LOW);
delay(150);
digitalWrite(vibLED, HIGH);
digitalWrite(vibBUZ, HIGH);
delay(200);
digitalWrite(vibLED, LOW);
digitalWrite(vibBUZ, LOW);
delay(150);
digitalWrite(vibLED, HIGH);
digitalWrite(vibBUZ, HIGH);
delay(200);
digitalWrite(vibLED, LOW);
digitalWrite(vibBUZ, LOW);
delay(150);
digitalWrite(vibLED, HIGH);
digitalWrite(vibBUZ, HIGH);
delay(200);
digitalWrite(vibLED, LOW);
digitalWrite(vibBUZ, LOW);
delay(300);
// Total Delay: 1200 + 300 ms (1.5 sec)
recState = LOW;
}
}
if (recState == HIGH) { // WHILE
Serial.println("Recording...");
digitalWrite(vibLED, HIGH);
digitalWrite(vibBUZ, HIGH);
delay(500);
digitalWrite(vibLED, LOW);
digitalWrite(vibBUZ, LOW);
delay(500);
}
if (digitalRead(capButton) == HIGH) {
Serial.println("Capturing Image...");
digitalWrite(vibLED, HIGH);
digitalWrite(vibBUZ, HIGH);
delay(150);
digitalWrite(vibLED, LOW);
digitalWrite(vibBUZ, LOW);
delay(150);
digitalWrite(vibLED, HIGH);
digitalWrite(vibBUZ, HIGH);
delay(150);
digitalWrite(vibLED, LOW);
digitalWrite(vibBUZ, LOW);
delay(150);
Serial.println("Image Saved");
}
if (digitalRead(altRecButton) == HIGH) {
Serial.println("Starting recording");
digitalWrite(vibLED, HIGH);
digitalWrite(vibBUZ, HIGH);
delay(150);
digitalWrite(vibLED, LOW);
digitalWrite(vibBUZ, LOW);
delay(150);
digitalWrite(vibLED, HIGH);
digitalWrite(vibBUZ, HIGH);
delay(150);
digitalWrite(vibLED, LOW);
digitalWrite(vibBUZ, LOW);
delay(150);
digitalWrite(vibLED, HIGH);
digitalWrite(vibBUZ, HIGH);
delay(150);
digitalWrite(vibLED, LOW);
digitalWrite(vibBUZ, LOW);
delay(150);
while (digitalRead(altRecButton) == HIGH) {
//
//digitalWrite(vibLED, HIGH);
//digitalWrite(vibBUZ, HIGH);
altRecState = HIGH;
Serial.println("Recording...");
//
}
}
if (digitalRead(altRecButton) == LOW && altRecState == HIGH) {
Serial.println("Saving recording");
digitalWrite(vibLED, HIGH);
digitalWrite(vibBUZ, HIGH);
delay(200);
digitalWrite(vibLED, LOW);
digitalWrite(vibBUZ, LOW);
delay(150);
digitalWrite(vibLED, HIGH);
digitalWrite(vibBUZ, HIGH);
delay(200);
digitalWrite(vibLED, LOW);
digitalWrite(vibBUZ, LOW);
delay(150);
digitalWrite(vibLED, HIGH);
digitalWrite(vibBUZ, HIGH);
delay(200);
digitalWrite(vibLED, LOW);
digitalWrite(vibBUZ, LOW);
delay(150);
digitalWrite(vibLED, HIGH);
digitalWrite(vibBUZ, HIGH);
delay(200);
digitalWrite(vibLED, LOW);
digitalWrite(vibBUZ, LOW);
delay(300);
altRecState = LOW;
}
}