Часы на двух OLED 0.96" дисплеях, arduino и модуле часов ds3231 мастерим сами
HTML-код
- Опубликовано: 11 сен 2024
- Используемые компоненты устройства:
OLED i2c 128x64 0.96" goo.gl/IevjfC
DS3231 goo.gl/6R5jqR
Arduino nano ch340 goo.gl/DWCBkq
Программа для рисования шрифта GLCDFontCreator2 drive.google.c...
Библиотека для часов DS3231 используемая в этом проекте: goo.gl/Z2DIHE
Библиотека для экранов SSD1306Ascii : в архиве с исходником.
Очень хорошая библиотека для отображения текстовых шрифтов. Очень мало ест как оперативной так и памяти контроллера для данных. Может адресовать по разным адресам.
Исходник к часам: goo.gl/T3C93i
Прикольное решение с двумя oled-ами!
+Электроника в объективе Мне понравились часы на одном дисплее. Но если часы стоят на удалении примерно метра три, то уже плохо различим шрифт. Вот и решил сделать на двух. Благо можно задать адреса для каждого дисплея.
А если я хочу не 2, а 22 дисплея, как с адресами быть?
Наверное прийдется быть чуть более хорошим программистом :)
👍🏻
Зачетный будильник. Стоит того что бы повторить. Надеюсь увидеть ролик с применением 4х OLED дисплеев. ...
Интересное решение и спасибо за файлы! Удачи в будущих проектах!
Спасибо :)
Спасибо за код, искал решение с установкой часов
;-)
Super,merci pour le partage
Я понимаю что нет времени отвечать на все коментарии но мой вопрос напрямую относится к Вашему девайсу! И если кто то решит создать свой шрифт то ничего не получится по описанию предложенному Вами!
Вот программа с папкой проектом "my_font" drive.google.com/file/d/1aCqhBbxBeX3ftS1S6Je5QEtflhr7OUbU/view?usp=sharing
Кнопки конечно это каменный век. Хоть бы IR-модуль+пульт приделал бы...
Подскажите,где взять библиотеку "fonts.h";? Спасибо.
Дизлайк не ставить!!
Первая библиотека, которая адекватно заработала с 2-мя олед 128*64. С библиотекой Adafruit_SSD1306 промучался 3 дня, но как не крути выводила пиксели через строку, так и не разобрался в чем дело, а эта заработала с пол оборота. Вопрос только по выводу небольших конок.....
Здравствуйте! Экранчики не выгорели? А то везде пишут, что эти экраны OLED выгорают.
класс
+AzoT TV Спасибо ;)
Здравствуйте! Мне вот не понятно,сборка данных часов обходится в разы дороже готовых электронных часов с теми-же функциями.Два дисплея стоят дороже набора для сборки часов.Имеет ли смысл изготавливать устройство,которое можно приобрести гораздо дешевле?
Здравствуйте. Пару строк в коде, и эти часы будут играть мелодию хэпибезди на день рождения ;) Если перевести все время затраченное на изготовление этих часов, то можно и чегонибудь из Сеико прикупить, но не все измеряется деньгами.
хобби это для души
Такие вещи делают явно не ради того, чтобы сэкономить деньги. Их делают ради удовольствия.
Encore merci pour le partage,une question,pourquoi la sonnerie a un son en continu? Merci d'avance
Salut Le son provient d'une enceinte avec générateur. Nous avons le nom "générateur de son piézocéramique". Lors de l'application de 5 volts, il émet un grincement.
@@VseSami Pas tout compris mais c'est pas important,ça marche nickel !
Схемы подключения модулей, дисплеев и кнопок к ардуинке не осталось? Чтоб из кода не выискивать используемые пины...
Спасибо
i2c посмотри распиновку. d4, d5 вроде
Здравствуйте Автор девайса, возник вопрос, каким образом осуществляется мигание курсора в настройках часов?
В коде не особо понятно, можете описать что отвечает за моргание курсором на выбранной переменной и объяснить как тактировать и изменять если возможно частоту мигания курсора?
Или эта библиотека используется для этого?
Можете пояснить по данным вопросам?
Заранее очень благодарен!!!
Спасибо, уже сам разобрался библиотека тут не при чём!!! Использовал другую и перековырял код под себя, теперь возникает проблема с большим объёмом глобальных переменных, добавил всего лишь ещё 4 будильника, думаю об оптимизации таких строк как ( uint8_t houralarm) у меня их получилось 20 переменных то есть 5 отдельных независимых будильников!
Как эти переменные можно оптимизировать?
Вот же, там все в первом цикле подписано "oled1.print(" "); //и сотрем показания часов" , а это следом пауза "delay(150); //Выдержим 150 мсек" , а после если была нажата кнопка изменения значения, то изменяем его.
Плодить переменные не стоит, надо к отображению и изменению будильника добавить только одну переменную, которая отвечает за номер устанавливаемого будильника. И два Case одним считываем данные для отображения конкретного будильника, записываем их в действующую переменную и отображаем, вторым в самом конце где "EEPROM.write(0, houralarm);// Записываем в энергонезависимую память ..." записываем конкретный будильник. Или можно попробовать записывать со смещением EEPROM.write(0+bud*10, houralarm). где bud новая переменная номера будильника соответственно час будильника 3 будет записан в ячейку 30, минута в 31, будильник 5 соответственно в 50 и 51. :-)
как я могу изменить на 12 часов с AM / PM?
да обе установлены
Скопируй сюда текст ошибки
Arduino: 1.6.5 (Windows 7), Плата"Arduino Nano, ATmega328"
OLED_TWO_DISPLAY_Clock.ino:12:20: fatal error: DS3231.h: No such file or directory
compilation terminated.
Ошибка компиляции.
Библиотека DS3231 неправильно установлена, он невидит файл DS3231.h
Вот используемая мной goo.gl/Z2DIHE
Arduino: 1.6.5 (Windows 7), Плата"Arduino Nano, ATmega328"
OLED_TWO_DISPLAY_Clock:19: error: 'DS3231' does not name a type
OLED_TWO_DISPLAY_Clock:33: error: 'Time' does not name a type
OLED_TWO_DISPLAY_Clock.ino: In function 'void setup()':
OLED_TWO_DISPLAY_Clock:47: error: 'rtc' was not declared in this scope
OLED_TWO_DISPLAY_Clock:64: error: 'SQW_RATE_1' was not declared in this scope
OLED_TWO_DISPLAY_Clock:65: error: 'OUTPUT_SQW' was not declared in this scope
OLED_TWO_DISPLAY_Clock.ino: In function 'void loop()':
OLED_TWO_DISPLAY_Clock:85: error: 't' was not declared in this scope
OLED_TWO_DISPLAY_Clock.ino: In function 'void watch()':
OLED_TWO_DISPLAY_Clock:103: error: 't' was not declared in this scope
OLED_TWO_DISPLAY_Clock:103: error: 'rtc' was not declared in this scope
OLED_TWO_DISPLAY_Clock.ino: In function 'void temp()':
OLED_TWO_DISPLAY_Clock:147: error: 'rtc' was not declared in this scope
OLED_TWO_DISPLAY_Clock.ino: In function 'void SetUp()':
OLED_TWO_DISPLAY_Clock:174: error: 'rtc' was not declared in this scope
OLED_TWO_DISPLAY_Clock:176: error: 't' was not declared in this scope
'DS3231' does not name a type
вот что выдаёт с твоей библиотекой,запарила эта хрень терпения нет
добавил библиотеку,пытаюсь залить скетч-ошибка при компиляции,ХЗ что им нужно
Библиотека для часов DS3231
Библиотека для экранов SSD1306Ascii
Установлены?
Здравствуйте. скетч и схема пожалуйста?
Все в описании.
Схема подключения есть?
Как подключить все можно посмотреть в этом видео ruclips.net/video/dNjmTJIqkUQ/видео.html , как задействовать оба экрана с 4:50 , кнопки и пищалку подключать к ножкам которые описаны в исходнике или назначить свои.
@@VseSami Спасибо)
ruclips.net/video/ZhHUY2LQscs/видео.html на 10
Всё классно, но небрежно((((
ошибки скетч