Помогите со скетчем для Arduino Nano, пожалуйста!
- Войдите на сайт для отправки комментариев
Сб, 17/02/2018 - 21:35
Здравствуйте! Делаю светофор для ребёнка. И у меня вопрос: как сделать для него скетч, в котором вместо delay() используется millis(). Вот скетч, сделанный на delay():
void setup() { pinMode(2, OUTPUT); pinMode(3, OUTPUT); pinMode(4, OUTPUT); } void loop() { digitalWrite(2, HIGH); delay(27000); digitalWrite(3, HIGH); delay(3000); digitalWrite(2, LOW); digitalWrite(3, LOW); digitalWrite(4, HIGH); delay(30000); digitalWrite(4, LOW); }
Для чего вам миллис в такой простой программе?
Хочу сделать настройку задержки через потенциометр. Звучит глупо, но так надо.
#138
Нет, ну миллис - это модно и современно, но тогда вам придется нагородить кучу флагов или конечный автомат написать. Справитесь?
Moжет просто в delay натыкать переменных, значение которых рассчитывать по map() в зависимости от положения потенциометра - значения на A-входе?
ага, но считываться значения когда будут? Раз в 1 минуту???
Подкрутили - кнопка ресет. Быстро надежно и голова не болит.https://www.youtube.com/watch?v=Z0NwqOPDQNE
И мне каждую секунду перезагружать ардуинку? Или как?
зато общение будет с ребенком. А потом ребенка можно научить крутить и кнопку нажимать. Вводить ребенка в серьезные дела.
Вот, конечный автомат, разбирайтесь:
То раз в минуту, то раз в секунду... Поищите на форуме тему про конечные автоматы, ЕвгенийП подробно все расписывал, чуть ли не в картинках.
Вот прямо на Вашу тему - http://arduino.ru/forum/programmirovanie/sketch-svetofora-bez-delay
И вообще, просто вбейте в правом верхнем углу в окне поиска слово сфетофор. Его до Вас уже столько народу делало.
Ведь, не искали, правда же?
И мне каждую секунду перезагружать ардуинку? Или как?
Поставьте регулировщика и пусть светофор вручную включает. А то вдруг "чатланин" поедет, а Ваша глупая автоматика "ку" не сделает - нехорошо.
ага, но считываться значения когда будут? Раз в 1 минуту???
А какой смысл менять частоту чаще, чем 1 раз за период?