Ошибка a function-definition is not allowed here before '{' token
- Войдите на сайт для отправки комментариев
Пт, 18/05/2018 - 10:22
Добрый день! Заранее извиняюсь за глупый вопрос, я плохо разбираюсь в электронику, но нужно решить вопрос. В Интернете нашёл похожие, но решения не помогают.
Имеется ардуино, нужно, чтобы сервопривод раз в 24 часа поворачивался на 90 градусов и обратно.
В 17 строке выдаёт ошибку "a function-definition is not allowed here before '{' token"
Если убрать всё, что связано с таймером, то компилируется.
unsigned long period_time = (long)86400000; unsigned long my_timer; void setup() { my_timer = millis(); // "сбросить" таймер } void loop() { if ((long)millis() - my_timer > period_time) { my_timer = millis(); // "сбросить" таймер #include <Servo.h> Servo servo1; void setup() { servo1.attach(9); servo1.write(0); // Hачальное положение } void loop() { servo1.write(90); // Поворачиваем серво на 90 градусов delay(1000); servo1.write(1800); delay(100); servo1.write(90); delay(1000); servo1.write(0); delay(1000); } } }
с 1 по 8 строку включительно и 27- 28 строки удалите.
Так пробовал, компилируется но как тогда поставить таймер? Я так понял, чтольно через неё можно ставить таймеры на большой отрезок времени.
Нужно не "решить вопрос", а для начала хоть немношко почитать про Ардуино. Или поискать исполнителя.
Вы что, просто взяли две разные программы и вставили одну в другую в какое попало место?
1) не совпадает баланс скобок { и },
2) две функции setup
3) две функции loop
Это не код, а Шалтай-Болтай после падения.
Если Вы не видите сами этих ошибок,
то, у Вас два пути - научиться программировать, а потом решать вопросы (это от полугода и больше) или запостить в "Ищу исполнителя", платить и получать готовое. С теми знаниями, что у Вас сейчас, сами Вы "вопрос не решите" - 100%.
вот и я про то же. :)
Так пробовал, компилируется но как тогда поставить таймер? Я так понял, чтольно через неё можно ставить таймеры на большой отрезок времени.
Все, что Вам нужно, можно решить через delay.