Простой скеч для сервы и 2 кнопки

wowscheg
Offline
Зарегистрирован: 14.02.2012

Здравствуйте!

Помогите пожалуйста с написанием простого кода для управления сервомашинкой.

Нужно следующее: при нажатии на первую кнопку, серва поворачивалась на 1 градус а при нажатии на другую поворачивалась в обратном направлении так же на 1 градус.

Спасибо.

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

попробуй сам. начни с примеров к серве

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

wowscheg, какой именно помощи Вы ожидаете? Написать за Вас? Тогда разместите запрос в ветке http://arduino.ru/forumy/ishchu-ispolnitelya

vvadim
Offline
Зарегистрирован: 23.05.2012
wowscheg
Offline
Зарегистрирован: 14.02.2012

Большое спасибо

wowscheg
Offline
Зарегистрирован: 14.02.2012

Написал вот такой код:

#include <Servo.h> // Подключаем библиотеку

Servo motor;  // Создоём инстанцию нашей сервомашинки
uint8_t servo = 12; // Пин к которому подключена серва
uint8_t pos = 0;    // Позиция сервы в градусах

void setup(){
  motor.attach(servo); // Указываем на каком пине сидит серва
  digitalWrite(7,HIGH);//включаем внутренний pull-up резистор здесь будет кнопка
}

void loop(){
    motor.write(pos); //устанавливаем серву в нулевую позицию
  if(digitalRead(7)==LOW(pos+=1)); //если нажата кнопка проворачиваем на 1 градус.
  }

Но среда выдает ошибку, подскажите пожалуйста, где я накосячил?

Radjah
Offline
Зарегистрирован: 06.08.2014

Что ты хотел в 14?

wowscheg
Offline
Зарегистрирован: 14.02.2012

При нажатии кнопки, серва проворачивалась на 1 градус

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013
if (digitalRead(7)==LOW ) pos++;

но это без антидребезга, без защиты сервы. ведь у сервы есть ограничение угла, а в коде этой защиты нет