помогите собрать всё воедино, есть ардуино уно, сервопривод, и пульт с передатчиком 4 канала (4 кнопки, брелок) работает в режиме тригера надо что бы при нажатии на 1 кнопку серва поднималась на 90г, а при отпускании обратно опускалась в 0 положение, серва находится постоянно в 0 положении пульт с приёмником вот такой MK324 Программируемый модуль 4-х канального дистанционного управления 433 МГц http://www.sinava.ru/MK324.php хочу вот так собрать ток тут с кнопкой, а мне надо на брелоке, вот скетч от сюда Код (C++): #include <Servo.h> //подключаем библиотеку для работы с сервоприводом Servo CamServo; //объявляем переменную CamServo типа Servo //подключаем переменную switchPin к 7 порту на Arduino //к этому порту подключена кнопка int switchPin = 7; //подключаем переменную servoPin к 9 порту на Arduino //к этому порту подключен сервопривод int servoPin = 9; //подключаем переменную ledPin к 13 порту на Arduino //к этому порту подключен светодиод int ledPin = 13; //подключаем переменную relayPin к 8 порту на Arduino //к этому порту подключено реле int relayPin = 8; //переменные posClose и posOpen указывают в какую позицию должен повернуться сервопривод //максимальный угол поворота сервопривода - 180 градусов int posClose = 0; int posOpen = 90; void setup() { pinMode(switchPin, INPUT); //определяем порт switchPin как входящий pinMode(ledPin, OUTPUT); //определяем порт ledPin как исходящий pinMode(relayPin, OUTPUT); //определяем порт relayPin как исходящий CamServo.attach(servoPin); //определяем порт servoPin как управляющий сервоприводом } void loop() { if (digitalRead(switchPin) == HIGH) //если на порт switchPin подается напряжение - логическая 1 { digitalWrite(ledPin, HIGH); //включаем светодиод digitalWrite(relayPin, HIGH); //подаем сигнал на порт relayPin delay(500); //устанавливаем задержку в милисекундах CamServo.write(posOpen); // Говорим серво повернуться в позицию 90 градусов } else //иначе { digitalWrite(ledPin, LOW); //отключаем светодиод CamServo.write(posClose); //говорим серво повернуться в позицию 0 градусов delay(500); //устанавливаем задержку в милисекундах digitalWrite(relayPin, LOW); //отключаем реле } } помогите всё собрать
подключил приёмник с пультом в место кнопки, работает но как то криво, для работы сервы надо удерживать кнопку
что код, я в них не особо силён, а так работает и на этом, просто через брелок дрыгаю 7 ногой, посылая логическую 1, время удержания регулируется через делай так вроде убирается дребезг кнопки, а реле там стоит для того что бы серву выключать и она не ела батарейку, хотя если кто то поможет нормальным кодом для режима триггера буду благодарен, нажал пульт серва поехала на 90г, ждёт 2сек, и опускается в 0