Skip to content

Instantly share code, notes, and snippets.

@bassdread
Created November 12, 2015 21:10
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save bassdread/a8e3cc77063e3177a337 to your computer and use it in GitHub Desktop.
Save bassdread/a8e3cc77063e3177a337 to your computer and use it in GitHub Desktop.
Arduino Gong
// Sweep
// by BARRAGAN <http://barraganstudio.com>
// This example code is in the public domain.
#include <Servo.h>
Servo myservo; // create servo object to control a servo
// a maximum of eight servo objects can be created
int pos = 0; // variable to store the servo position
String inputString = ""; // a string to hold incoming data
boolean stringComplete = false; // whether the string is complete
void setup()
{
myservo.attach(10); // attaches the servo on pin 9 to the servo object
myservo.write(90);
// initialize serial:
Serial.begin(9600);
// reserve 200 bytes for the inputString:
inputString.reserve(200);
}
void loop()
{
if (stringComplete && inputString == "gong\n") {
Serial.println(inputString);
// tell servo to go to position in variable 'pos'
// waits 15ms for the servo to reach the position
myservo.write(140);
delay(100);
myservo.write(40);
delay(5000);
myservo.write(90);
//myservo.write(0);
//myservo.write(90);
inputString = "";
stringComplete = false;
}
}
void serialEvent() {
while (Serial.available()) {
// get the new byte:
char inChar = (char)Serial.read();
// add it to the inputString:
inputString += inChar;
// if the incoming character is a newline, set a flag
// so the main loop can do something about it:
if (inChar == '\n') {
stringComplete = true;
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment