/* */ int pin_servo = 7; // Pin connected to SO int pin_button = 8; // Pin connected to SIN int pin_LED_R = 3; int pin_LED_G = 1; int pin_LED_B = 2; int state_button = LOW; int i = 0; void setup() { pinMode(pin_servo, OUTPUT); pinMode(pin_button, INPUT_PULLUP); pinMode(pin_LED_R, OUTPUT); pinMode(pin_LED_G, OUTPUT); pinMode(pin_LED_B, OUTPUT); // Set everything off digitalWrite(pin_LED_R,HIGH); digitalWrite(pin_LED_G,HIGH); digitalWrite(pin_LED_B,HIGH); } void loop() { state_button = digitalRead(pin_button); if (state_button == HIGH){ // Green LED digitalWrite(pin_LED_R,HIGH); digitalWrite(pin_LED_B,HIGH); digitalWrite(pin_LED_G,LOW); // Close relay for (i = 0; i <120; ++i) { digitalWrite(pin_servo,LOW); delayMicroseconds(18900); // 18900 / 18900 / 18900/ 18900 digitalWrite(pin_servo,HIGH); delayMicroseconds(1100); // 1100 / 1100 / 1100 / 1100 } } else { // Red LED digitalWrite(pin_LED_R,LOW); digitalWrite(pin_LED_B,HIGH); digitalWrite(pin_LED_G,HIGH); // Close relay for (i = 0; i <120; ++i) { digitalWrite(pin_servo,LOW); delayMicroseconds(18100); // 18100 / 18100 / 18100 / 18100 digitalWrite(pin_servo,HIGH); delayMicroseconds(1900); // 1900 / 1900 / 1900 / 1900 } } //delay(500); //for (i = 0; i <120; ++i) { //digitalWrite(pin_servo,LOW); //delayMicroseconds(18200); //18900 / 19000 / 1900 / 18900 //digitalWrite(pin_servo,HIGH); //delayMicroseconds(1800); //1100 / 1000 / 1000 /1100 //} }