Тоже так подумал, может монитор порта шалит, потому что иногда отваливается порт с ошибкой
часы ардуино ds3231 max7219 ds18b20
- Сообщения: 70
- Зарегистрирован: Ср дек 07, 2022 21:01:11
[uquote="Serzh2000",url="/forum/viewtopic.php?p=4336351#p4336351"]??? странно[/uquote]
Тоже так подумал, может монитор порта шалит, потому что иногда отваливается порт с ошибкой
Тоже так подумал, может монитор порта шалит, потому что иногда отваливается порт с ошибкой
- Реклама
посмотрел код вроде все в порядке...
это так?
если вставить это в код в мониторе порта должно писаться kuku1kuku = 1;
if (kuku != 0){
if(hour>=CHIME_START&&hour<CHIME_END&&minute==0&&second==0&&secFr==0) playChime();
Serial.print("kuku");
}
Serial.println(kuku);// прочитали куку
это так?
- Сообщения: 70
- Зарегистрирован: Ср дек 07, 2022 21:01:11
[uquote="Serzh2000",url="/forum/viewtopic.php?p=4336641#p4336641"]посмотрел код вроде все в порядке...
это так?[/uquote]
Скоро приеду домой, проверю, спасибо
если вставить это в код в мониторе порта должно писаться kuku1kuku = 1;
if (kuku != 0){
if(hour>=CHIME_START&&hour<CHIME_END&&minute==0&&second==0&&secFr==0) playChime();
Serial.print("kuku");
}
Serial.println(kuku);// прочитали куку
это так?[/uquote]
Скоро приеду домой, проверю, спасибо
нашли почему не работает?
а я наверно понял!

а я наверно понял!
Код: Выделить всё
if (kuku==0) showString(8, "Drk");
if (kuku==1) showString(8, "Dsrk"); - Вложения
-
- simple-clock.zip
- (50.55 КБ) 137 скачиваний
- Сообщения: 70
- Зарегистрирован: Ср дек 07, 2022 21:01:11
Я заметил, что после изменения состояния в установках и выхода оттуда значение переменной не сохраняется. ПОстоянно идёт 1.
Один момент, похоже что заработало, тестирую...
Да, похоже что всё работает, спасибо Вам большое за помощь!!!
Добавлено after 1 hour 13 minutes 46 seconds:
Еще небольшую проблемку увидел в работе режиме автояркости, примерно при среднем свете раз в некоторое время свечение часов немного притухает, потом возвращается в нормальный свет, это происходит раз или два в минуту, периодичность зацикленная. Есть некоторые подозрения что это проблема в секции ВКЛЮЧЕНИЕ режима регулировки яркости День/Ночь
Один момент, похоже что заработало, тестирую...
Да, похоже что всё работает, спасибо Вам большое за помощь!!!
Добавлено after 1 hour 13 minutes 46 seconds:
Еще небольшую проблемку увидел в работе режиме автояркости, примерно при среднем свете раз в некоторое время свечение часов немного притухает, потом возвращается в нормальный свет, это происходит раз или два в минуту, периодичность зацикленная. Есть некоторые подозрения что это проблема в секции ВКЛЮЧЕНИЕ режима регулировки яркости День/Ночь
- Реклама
чет я не допонял на каком режиме стоит (чему равен brightSet==?)Еще небольшую проблемку увидел в работе режиме автояркости, примерно при среднем свете раз в некоторое время свечение часов немного притухает, потом возвращается в нормальный свет, это происходит раз или два в минуту, периодичность зацикленная. Есть некоторые подозрения что это проблема в секции ВКЛЮЧЕНИЕ режима регулировки яркости День/Ночь
Код: Выделить всё
if(brightSet==17){//--------------------------------------------------- ВКЛЮЧЕНИЕ режима регулировки яркости День/Ночь
if (month==1||month==2||month==3){DAY_START=7;} // в янворе, феврале,марте циферблат включится на полную яркость в 7 часов
if (month==4||month==5){DAY_START=6;} // в апреле, мае циферблат включится на полную яркость в 6 часов
if (month==6||month==7||month==8){DAY_START=5;} // в июне, июле, августе циферблат включится на полную яркость в 5 часов
if (month==9||month==10){DAY_START=6;} // в сентябре, октябре циферблат включится на полную яркость в 6 часов
if (month==11||month>12){DAY_START=7;} // в ноябре, декабре циферблат включится на полную яркость в 7 часов
if(hour>=DAY_START&&hour<DAY_END&&(minute!=lastMin)){ // каждую минуту проверяем ночной режим или дневной
sendCmdAll(CMD_INTENSITY, 10); // посылаем команду на изменение яркости на 10
lastMin=minute; //
} //
else if(minute!=lastMin){ //
sendCmdAll(CMD_INTENSITY, 0); // посылаем команду на изменение яркости на 0
lastMin=minute; //
} //
} Код: Выделить всё
if(brightSet==16){//--------------------------------------------------- ВКЛЮЧЕНИЕ режима автоматической регулировки яркости
if(secFr==0){ // Проверка и изменение яркости каждую секунду
int ledLevel=map(analogRead(BRIGHT_PIN), 1023, 0, 0, 15); // Считываем показания с фоторезистора и преводим их к виду от 0 до 12
ledLevel=constrain(ledLevel, 0, 12); // ограничиваем верхнее значение ledLevel до 12
sendCmdAll(CMD_INTENSITY, ledLevel); // Отсылаем команду на установку яркости экрана
} //
} - Сообщения: 70
- Зарегистрирован: Ср дек 07, 2022 21:01:11
Режим Автояркости. День-Ночь и Ручная настройка яркости работают хорошо.
- Сообщения: 70
- Зарегистрирован: Ср дек 07, 2022 21:01:11
вставляйте в код Serial.println(ledLevel);delay(10);
и будем смотреть в мониторе порта ledLevel ... при минимальном освещении, при максимальном и где эти цифры/яркость прыгает.
Код: Выделить всё
if(brightSet==16){//--------------------------------------------------- ВКЛЮЧЕНИЕ режима автоматической регулировки яркости
if(secFr==0){ // Проверка и изменение яркости каждую секунду
int ledLevel=map(analogRead(BRIGHT_PIN), 1023, 0, 0, 15); // Считываем показания с фоторезистора и преводим их к виду от 0 до 12
ledLevel=constrain(ledLevel, 0, 12); // ограничиваем верхнее значение ledLevel до 12
sendCmdAll(CMD_INTENSITY, ledLevel); // Отсылаем команду на установку яркости экрана
Serial.println(ledLevel);delay(10);
} //
} - Сообщения: 70
- Зарегистрирован: Ср дек 07, 2022 21:01:11
Пока вроде в порядке, вечером еще буду смотреть, так как этот баг в основном вечером при вечернем свете появляется.
Добавлено after 5 hours 38 minutes 28 seconds:
Вот, при вечернем свете, вечером, начались скачки.
Добавлено after 5 hours 38 minutes 28 seconds:
Вот, при вечернем свете, вечером, начались скачки.
- Вложения
-
- 2022-12-16_160639.png
- (10.18 КБ) 163 скачивания
- Сообщения: 70
- Зарегистрирован: Ср дек 07, 2022 21:01:11
[uquote="Serzh2000",url="/forum/viewtopic.php?p=4337755#p4337755"]а фоторезистор другим заменить нет возможности?[/uquote]
Есть, но из той же партии
Есть, но из той же партии
из одно партии может 5 брак ,а 5 норм. попробуйте другой.
а 1,2 в мониторе порта это в комнате свет выключен (18 часов темно) или при включенном свете.
вообще https://arduinomaster.ru/program/analogread/
https://www.arduino.cc/reference/en/lan ... /math/map/
может поиграться с минимальным значением не 0 ,а 2 поставить
а 1,2 в мониторе порта это в комнате свет выключен (18 часов темно) или при включенном свете.
вообще https://arduinomaster.ru/program/analogread/
https://www.arduino.cc/reference/en/lan ... /math/map/
может поиграться с минимальным значением не 0 ,а 2 поставить
Код: Выделить всё
if(secFr==0){ // Проверка и изменение яркости каждую секунду
int ledLevel=map(analogRead(BRIGHT_PIN), 1023, 0, 0, 15); // Считываем показания с фоторезистора и приводим их к виду от 0 до 12- Сообщения: 70
- Зарегистрирован: Ср дек 07, 2022 21:01:11
1 и 2 это горит 1 лампа из 3-х, неяркая. Поставил другой, светить матрица стала ярче, на том фоторезисторе отсутствовала капелька, которая играет роль защиты и линзы. Слежу за поведением.
ну как дела с яркостью, я тут подумал может изменить дискретность типа разделить диапазон 0-1023 не 0-15,
а скажем 0-10, что скажете?
Код: Выделить всё
int ledLevel=map(analogRead(BRIGHT_PIN), 1023, 0, 0, 15); // Считываем показания с фоторезистора и приводим их к виду от 0 до 12- Сообщения: 70
- Зарегистрирован: Ср дек 07, 2022 21:01:11
вместо ledLevel=constrain(ledLevel, 0, 12); сделал ledLevel=constrain(ledLevel, 0, 10);, вроде пока ничиего так работает
я думаю это не верное решение... у автора часов яркость регулируется от 0 - 12 .вместо ledLevel=constrain(ledLevel, 0, 12); сделал ledLevel=constrain(ledLevel, 0, 10);
если поставить 10 яркость не будет максимальной.
наверно правильнее сделать здесь
Код: Выделить всё
int ledLevel=map(analogRead(BRIGHT_PIN), 1023, 0, 0, 15); // Считываем показания с фоторезистора и приводим их к виду от 0 до 12- Сообщения: 70
- Зарегистрирован: Ср дек 07, 2022 21:01:11
Согласен, я спорол чушь, попробую Ваш вариант
Добавлено after 3 minutes 25 seconds:
Хм, сделал, пока работа стабильная, смотрим дальше =)
Хм, всё таки некоторые изменения яркости присутствуют
Хотя мне кажется они стали менее заметны
Добавлено after 3 minutes 25 seconds:
Хм, сделал, пока работа стабильная, смотрим дальше =)
Хм, всё таки некоторые изменения яркости присутствуют
Хотя мне кажется они стали менее заметны
- Сообщения: 70
- Зарегистрирован: Ср дек 07, 2022 21:01:11
Хм, совсем нехорошо работает автояркость. Вот пример видео, камера не передает самого изменения, но по засветам можно определить когда яркость меняется, в самом начале не смотрите, настраивался автофокус.
https://drive.google.com/file/d/135zgTa ... sp=sharing
Хотя есть подозрение что сам фоторезитсор надо размещать не мордой в люстру, на например в потолок, т.е. избегать прямого попадания света от света =) Поменял положение фоторезистора, вроде стало норм. Наблюдаем дальше =)
Попробовал проверить фонариком, изменяя интенсивность падения света, такой баг начинает появляться при определенном световом потоке.
https://drive.google.com/file/d/135zgTa ... sp=sharing
Хотя есть подозрение что сам фоторезитсор надо размещать не мордой в люстру, на например в потолок, т.е. избегать прямого попадания света от света =) Поменял положение фоторезистора, вроде стало норм. Наблюдаем дальше =)
Попробовал проверить фонариком, изменяя интенсивность падения света, такой баг начинает появляться при определенном световом потоке.


