Не работает delay() или альтернативный тайминг.
- Войдите на сайт для отправки комментариев
Сб, 06/06/2015 - 10:42
Нужен был наипростейший тайминг. Включение на 15 минут и выключение на 5 минут. Больше ничего.
Использовал такой код:
void setup() { pinMode(12, OUTPUT); } void loop() { //включение реле на 15 минут digitalWrite(12, LOW); delay(900000); //выключение реле на 5 минут digitalWrite(12, HIGH); delay(300000); }
Но на деле через некоторое время перестаёт работать совсем, на 12 пин перестаёт идти сигнал. Взялся всё переделать под mills(); но ума не хватает как это реализовать. Ребята, помогите пожалуйста. Буду благодарен хоть маленьким подсказкам, хоть примерному похожему коду.
Еще раз мигаем светодиодом без Delay.
Взялся всё переделать под mills(); но ума не хватает как это реализовать.
Какой смысл браться за более сложный код, если не получилось заставить работать простой?
Тогда в чём может быть причина? На коротких интервалах с миганием светодиода всё в порядке, но как задаю 15 минут через 5 потом перестаёт.
Я не знаю, а запускать и тестировать сейчас некогда.
- попробуйте явно указать, что ваши числа "длинного" типа: delay(900000L);
- проверьте тип параметра функции delay - возможно, ваши числа просто "не умещаются" в этот тип - тогда придётся заменить один "длинный" delay на несколько коротких. Лучше, конечно, написать для этого отдельную небольшую функцию.
Попробуйте так:
У тебя HTML в код попал
Спасибо!!!