Держи, вот мой код для управления сервой двумя кнопками, как ты просил одна кнопка вешается на 3-й цифровой вход, другая на 4-й цифровой вход. Серва подключается на 2-й цифровой вход. Подтяни входы кнопок на землю резисторами 10к.
PHP код:
#define MIN 600 // минимальное положение сервы
#define MAX 2400 // максимальное положение сервы
int ServoPin = 2; //управляющий выход для сервы
int in_3 = 3; // вход для первой кнопки
int in_4 = 4; // вход для второй кнопки
int step = 900; //среднее положение сервы
void setup()
{
pinMode(ServoPin, OUTPUT);
pinMode(in_3, INPUT);
pinMode(in_4, INPUT);
}
void loop()
{
if(step > MAX){step = MAX;}
if(step < MIN){step = MIN;}
if(digitalRead(in_3)==HIGH){step=step+10;} // если нажата первая кнопка делаем один шаг в право
if(digitalRead(in_4)==HIGH){step=step-10;} // если нажата вторая кнопка делаем один шаг в лево
digitalWrite(ServoPin, HIGH);
delayMicroseconds(step);
digitalWrite(ServoPin, LOW);
delayMicroseconds(20000-step);
}