#define BUTTON_PIN 2 #define SERVO_PIN 9 #define POS_START 0 #define POS_END 90 #include <Servo.h> Servo myservo; // create servo object to control a servo int val = 0; int flag = 0; void setup() { // pinMode(SERVO_PIN, OUTPUT) pinMode(BUTTON_PIN, INPUT_PULLUP); myservo.attach(SERVO_PIN); // attaches the servo on pin 9 to the servo object Serial.begin(9600); } void loop() { val = digitalRead(BUTTON_PIN); Serial.print("button = "); Serial.println(val); Serial.print("flag = "); Serial.println(flag); if ((val == 0) && (flag == 0)) { myservo.write(POS_START); flag = 1; val = 1; } delay(100); if ((val == 0) && (flag == 1)) { myservo.write(POS_END); flag = 0; val = 1; } delay(100); }