Часы на Arduino NANO + MAX7219 + FM приемник

Тема в разделе "Глядите, что я сделал", создана пользователем IvanUA, 31 авг 2017.

  1. IvanUA

    IvanUA Гик

    Тема для меня уже пройдена и почти забыта, но возможно кому то пригодится.

    Что из стандартных функций интересного в данных часиках:
    - можно установить до 99 разных будильников
    - для хранения данных о будильниках была использована память установленная в часовом модуле RTC
    - при работе радио приемника на экране отображается не только частота, но и время и температура
    - при настройке к примеру времени будильника если удерживать кнопку смены то циферки через какое то время начнут меняться с большей скоростью, мелочь а так хотелось реализовать в этом проекте.

    Ну а дальше понятное дело старался впихнуть кучу стандартных всеми применяемых фишек типа мелодии, кукушки, яркость по освещенности или по времени и прочее.

    В скейтче использовано много разработок других авторов, но реализация логики работы на 99% моя)))

    Код по желанию можете использовать, изменять и т.д.

    Скейтч тут https://drive.google.com/open?id=0B1xzsAFF0-JwU3hPdzF5UmFEdTg
    Демо видео тут

     
    Securbond, 9xA59kK, Small_d и ещё 1-му нравится это.
  2. Tomasina

    Tomasina Иномирянин

    по-моему, здесь происходит не совсем то, что тобой задумано.
     
  3. IvanUA

    IvanUA Гик

    В чем сомнения?
    Двухзначное значение часов к примеру "15" разбиваем на десятки "1" и единицы "5".
     
  4. Tomasina

    Tomasina Иномирянин

    Я про запятую в коде.
     
  5. IvanUA

    IvanUA Гик

    Ах про это)))
    Игрался с ArduinoIDE
    Нормально скомпилировала, и даже работает ;)
    Изначально конечно было разложено по строкам.
     
  6. Tomasina

    Tomasina Иномирянин

    Да, в данном случае h0 будет посчитана корректно.
    Но в целом - запятая очень коварный оператор ;) Компилироваться будет всегда, а результат может отличаться от запланированного.
     
    9xA59kK и IvanUA нравится это.
  7. IvanUA

    IvanUA Гик

    Спасибо, учту))))
    ПС. В данном экземпляре разбиение на отдельно десятки и единицы необходимо для вывода единичных символов на экран. При неверном результате и значения часов минут и секунд на экране были бы неверными. Часики пока не начал новый проект у меня проработали пару месяцев, глюков не замечал. Вполне может быть что ИДЕшный компилятор сам внес поправки и собрал стабильный машинный код.
    ППС. Надеюсь что те, кто решат воспользоваться кодом, не просто его скопируют, а еще и разберутся как он работает да поправят под себя.