




 
					
				void BrightnessCheck() {
  if (auto_bright) {                         // если включена адаптивная яркость
  if (millis() - bright_timer > 100) {       // каждые 100 мс
     bright_timer = millis();                // сбросить таймер
     new_bright = map(analogRead(LIGHT_PIN), 0, 1020, LIGHT_MAX, LIGHT_MIN );     // когда темно тускло
                                                                                  // при 1023 в полной темноте мерцают диоды   
    // new_bright = map(analogRead(LIGHT_PIN), 0, 1023, LIGHT_MIN, LIGHT_MAX );     // когда темно ярко
      new_bright = constrain(new_bright, LIGHT_MIN, LIGHT_MAX);
      new_bright_f = new_bright_f * coef + new_bright * (1 - coef);
      LEDS.setBrightness(new_bright_f);                                            // установить новую яркость
     }
  }
}void BrightnessCheck() {
  if (setups[4]==0) {                         // если включена адаптивная яркость
  if (millis() - bright_timer > 100) {       // каждые 100 мс
     bright_timer = millis();                // сбросить таймер
    // new_bright = map(analogRead(LIGHT_PIN), 0, 1020, LIGHT_MAX, LIGHT_MIN );     // когда темно тускло
                                                                                  // при 1023 в полной темноте мерцают диоды   
      new_bright = map(analogRead(LIGHT_PIN), 160, 940, LIGHT_MAX, LIGHT_MIN);     // когда темно ярко
      new_bright = constrain(new_bright, LIGHT_MIN, LIGHT_MAX);
      new_bright_f = new_bright_f * coef + new_bright * (1 - coef);
      LEDS.setBrightness(new_bright_f);                                            // установить новую яркость
     }
  }else {new_bright_f = setups[4] * 10;                                          // установить яркость ручную.
  LEDS.setBrightness(new_bright_f);}
}
}    case 16: { //=  Режим корректировки Aging offset
          boolean  znak;
          CORRECT = PressingButton(CORRECT, 0, 255);
          TIME_CORRECT = map(CORRECT, 0, 255, -127, 128);
          if (Aging_offset != TIME_CORRECT){Aging_offset = TIME_CORRECT; setRTC_Aging_offset();}
          int8_t e = TIME_CORRECT;
          if (e < 0) {e *= -1; znak = 1;}
          else {znak = 0;}
        byte a = e / 100;
        byte b = (e % 100) / 10;
        byte c = e % 10;
         if (znak <= 0) {DigitOut(PROBEL, a, b, c, 0, led_color);}
         else {DigitOut(15, a, b, c, 0, led_color);}
         break;} Вообще есть код от Вячеслава_45 который скажем так более "навороченный", у него есть меню где можно выбрать и настроить кучу  параметров без перепрошивки контроллера,  температура, давление и т.д. имеют не два цвета, а градацию которую можно выбрать, есть ночной режим ну и так далее.
 Вообще есть код от Вячеслава_45 который скажем так более "навороченный", у него есть меню где можно выбрать и настроить кучу  параметров без перепрошивки контроллера,  температура, давление и т.д. имеют не два цвета, а градацию которую можно выбрать, есть ночной режим ну и так далее.У меня тоже на 2811, собирал лет 9 назад. Залил скетч от Вячеслава_45 , и всё заработало. Но с запятой в температуре надо будет поколдовать.часы собраны на ws2811
 да и надо плату переделывать. Мне надо только добавить установку точного времени кнопками,желательно установленными двумя - час и минуты ,иначе надо переделывать плату, например при нажатии обоих кнопок часы останавливаются , а при отпускании в 00 секунд запускаются.
 да и надо плату переделывать. Мне надо только добавить установку точного времени кнопками,желательно установленными двумя - час и минуты ,иначе надо переделывать плату, например при нажатии обоих кнопок часы останавливаются , а при отпускании в 00 секунд запускаются.