Сега ще сложа един малко по- сложен код за управление на сервото между 90 и 110 градуса, като в кода се вижда, че с декларирането и атачването се заема положение"Право" на стрелката.
Опитната постановка е за упраление с един бутон, свързан към пин 8 и серво на пин 9, като на пин 8 имаме оново резистор, който да държи масата. Всяко натискане на бутона води до превключване в противоположното положние на стрелката.

================
КОД:
#include <Servo.h>
// константни променливи използвани за ъглите на сервото в градуси
const int straight = 90;
const int divergent = 110;
// Константни променлилви за пиновете, които се използват
const int buttonpin = 8;
const int servopin = 9;
// константа със стойност за забавяне на движението на сервото в милисекунди
const int step_delay = 70;
// декларираме сервото
Servo myservo;
// глобални променливи за запомняне позицията на сервото
int pos = straight; // current
int old_pos = pos; // previous
void setup()
{
// деклариране на пина за бутона
pinMode(buttonpin, INPUT);
// ето тук казваме директно след атачването да се обърне в права позиция сервото
myservo.attach(servopin); // attach to the servo on pin 9
myservo.write(pos); // set the initial servo position
}
void loop()
{
// всяка итерация започва с промяна на състоянието на бутона
// при натиснат бутон (reads HIGH), се премества сервото
int button_state = digitalRead(buttonpin);
if(button_state == HIGH){
old_pos = pos; // запазва текущата позиция
// променя позицията в обратното състояние
pos = pos == straight ? divergent: straight;
// премества сервото до новата позиция
if(old_pos < pos){ // ако новия ъгъл е по- голям
// завърта (увеличава) серво позицията от старото до новото състояние
for(int i = old_pos + 1; i <= pos; i++){
myservo.write(i); // записва следващата позиция на сервото
delay(step_delay); // пауза
}
} else { // обратно новия ъгъл е по- малък и ли равен
// завърта (намалява) серво позицията
for(int i = old_pos - 1; i >= pos; i--){
myservo.write(i); // записва следващата позиция на сервото
delay(step_delay); // пауза
}
}
}
}// край на цикъла