ARDUINO Будильник - рассвет

09.02.2019
26
3
3
#2
Дописал прошивку для включения и выключения 100% яркости ночника по двойному клику энкодера.
Если кто знает как писать библиотека можно было бы код из библиотеки "кнопки" перенести двойной клик в библиотеку энкодера.
Ну а пока так
#include "GyverButton.h"
GButton butt1(SWe, HIGH_PULL, NORM_OPEN);
boolean butt_flag = 0;
boolean butt;
void loop
if (butt1.isDouble()) {
butt_flag = !butt_flag;
digitalWrite(DIM_PIN,butt_flag);
}
 
#3
А вот диммирование вращением энкодера. Работает из положения отображения часов. Ограничен выход за крайние точки. При включенном положении рассвет сработает штатно. Т.е. можно оставить в приглушенном состоянии на ночь, утром все равно сработает без сбоев.
if (enc.isRight() && !dawn_start && !alarm) {
val++ ;
if (val > 15) val = 15;
duty = val*17;
analogWrite(DIM_PIN,duty);
}
if (enc.isLeft() && !dawn_start && !alarm) {
val--;
if (val <0) val = 0;
duty = val*17;
analogWrite(DIM_PIN,duty);
}