мой первый проэкт, очень нуждаюсь в помощи
- Войдите на сайт для отправки комментариев
Сб, 05/03/2022 - 16:06
приветствую всех форумчан форума. нашёл себе хобби заниматься ардуино ну и делать простые вещи. приобрёл наборчик деталей и плату UNO R3. хочу своему кошаку сделатъ вытяжку. схема простая кот подходит к лотку,PIR его видет включает вентилятор и поворачивает задвижку в трубе. через определенное время вентилятор выключается и задвижка закрывает трубу. вместо вентилятора пока LED схема вроде работает. что я не смог сделать это привязать кнопку , что бы при нажатие задвижка закрывалась, вентилятор выключался и схема вставало опять на ожидание кошки. буду очень благодарен если кто подскажет или поможет отредактировать скечь. всем хороших выходных.
#include <Servo.h> #define LED 3 // порт для светодиода #define PIR 2 // порт для датчика движения Servo zadvizhka; int angle; // переменная для угла поворота микро серво void setup() { pinMode(LED, OUTPUT); pinMode(PIR, INPUT); zadvizhka.attach(10); // порт для сервомотора } void loop() { if (digitalRead(PIR) == HIGH) {// если есть движение включаем светодиод digitalWrite(LED, HIGH); //светодиод включен { for (angle = 0; angle <= 90; angle++) {// цикл для поворота от 0 до 90 градусов zadvizhka.write(angle); // сообщаем микро серво угол поворота delay(20); // скорость поворота сервомотора } delay(5000); //светодиод годит 5000 милисек= 5 сек digitalWrite(LED, LOW);//светодиод выключается } delay(2000); for (angle = 90; angle >= 0; angle--) // цикл для поворота от 90 до 0 градусов { zadvizhka.write(angle); // сообщаем микро серво угол поворота delay(20); // скорость поворота сервомотора } delay(1000);} }
Невозможно привязать то, чего нет. В этом скетче нет даже намека на кнопку.
И второе - с такой кучей делеев кнопку привязывать - дохлый номер
как вы считаете, скобка на строке 17 - на месте? если да - обьясните, в чем ее функция
Делэй в таком коде неправильно. Пока в нём висит программа нельзя ничего делать. Ни кнопки нажимать ни программу направить в другое русло. Как заменить делэй написано в теме blink without deley. В остальном надо копать либо в направлении прграммных автоматов, либо использовать флаги состояния.
как вы считаете, скобка на строке 17 - на месте? если да - обьясните, в чем ее функция
скобка не на месте, сдвинул в лево.
скобка не на месте, сдвинул в лево.
ЛОЛ
я правильно понял, требуется замена delay на millis?
я правильно понял, требуется замена delay на millis?
вообще да, но для начала я бы все-таки разобрался с положением скобок. Имхо, на данный момент код не работает именно из-за них.
Да там прям БЯДА со скобками. Кому-то не завезли, а ТС отгрузили лишнего )))
Обещаны котлеты домашние на ужин, так что смотри как это вообще должно выглядеть (в твоём исполнении ТС):
как вы считаете, скобка на строке 17 - на месте? если да - обьясните, в чем ее функция
скобка не на месте, сдвинул в лево.
Не нужно двигать. В Arduino IDE нажать комбинацию Ctrl+T, среда сама отформатирует код. Если там, конечно, со скобками все нормально
Вы что там курите ващще? Скока стоить? Где покупаити?