Всем привет! Помогите с одной проблемой, написал код для управления сервопривода кнопкой

SergeyOrsik
Offline
Зарегистрирован: 01.06.2020

Суть такова: при нажатии на кнопку сервопривод поворачивается на 90 градусов, при повторном нажатии возвращается в исходное положение.

Проблема заключается в том что сервопривод каждую секунду поворачивается без моего участия

#include <Servo.h>


const int button_1=1;

int on = 0;
int off =1;
int buttonState_1 = 0;
Servo servo_1;



void setup()
{
  servo_1.attach(13);
;
 
}

void loop()
{
 buttonState_1 = digitalRead(button_2);
 if (buttonState_1 == HIGH & on == 0 & off == 1)
  {
    servo_1.write(90);
    on = 1;
    off = 0;
    delay(1000);
  }
 buttonState_1 = digitalRead(button_2);
 if (buttonState_1 == HIGH & on == 1  & off == 0)
 {
   servo_1.write(0);
   on = 0;
   off = 1;
   delay(1000);
 }
}

 

 

 

 

 

BOOM
BOOM аватар
Offline
Зарегистрирован: 14.11.2018

Притяни пин с кнопкой к минусу через резистор 1кОм, и кнопкой подключай к плюсу. Тогда все будет правильно работать. А по схеме я не пончл что у тебя и куда идёт, скорее всего резюки к кнопкам подключены, если так - то это не верно. 
А может и верно подключено, но ты не знаешь что такое «логическое И» и «бинарное И». Подтяни эту тему. 
однозначно в песочницу нужно тему перенести. 

SergeyOrsik
Offline
Зарегистрирован: 01.06.2020

Вот так?

 

 

 

 

 

BOOM
BOOM аватар
Offline
Зарегистрирован: 14.11.2018

Так попробуй, если работает - значит верно. Я такие «схемы» читать не могу, я воспитан на принципиальных схемах. 

https://ru.wikipedia.org/wiki/Принципиальная_схема

sadman41
Offline
Зарегистрирован: 19.10.2016

Скетч нерабочий , изменение схемы не поможет.

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

Не просто нерабочий, а даже некомпилируемый, ТС нас просто троллит

SergeyOrsik, Вы что нам выложили? Это не компилируется - как оно у Вас может что-то делать? Или это просто "похожий скетч из сети"? Или Вы там при выкладывании что-то поменяли? В любом случае - это не то, что залито в Вашу Ардуину - такое залить невозможно. Расцениваю это как издевательство.