Arduino and the real-time clock (RTC) DS1307

แชร์
ฝัง
  • เผยแพร่เมื่อ 19 ส.ค. 2017
  • Real-time clock (RTC) is very spread out. Working with them is fairly easy, and there are many different libraries for working with this module. Let's try and we connect the RTC DS1307 to Arduino
    Archive with an example and libraries you can download here: drive.google.com/open?id=1OKS...
    Iarduino_RTC library for DS1302, DS1307, DS3231: iarduino.ru/file/235.html
    Display description from video: th-cam.com/users/edit?o=U&vide...
    Friends, support the channel!
    R340967932571
    Z422687519909
    U139735106020
    4149625807630874 Privat Bank (Ukraine)
    Useful links:
    RTC : ali.pub/1rjsbr
    Display as in video: ali.pub/1pyrdy
    Arduino Mega 2560: ali.pub/1ny34r
    Cheapest Arduino Pro Mini for crafts: ali.pub/1ny2z4
    Breadbord: ali.pub/1ny3ae
    Lintels: ali.pub/1ny3la
    Quality crosspieces: ali.pub/1ny3j5
    The most convenient cash back:
    LetyShops: goo.gl/Ev5XgI
    The most profitable cash back on aliexpress:
    Ecomerce: goo.gl/3dDc2w
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 151

  • @Rin_Media
    @Rin_Media 4 ปีที่แล้ว +4

    Всё понятно и доступно.
    Спасибо

  • @TheJUSED5
    @TheJUSED5 5 ปีที่แล้ว +3

    все понятно и работает, спасибо!

  • @RonyKassini
    @RonyKassini 5 ปีที่แล้ว +2

    Человеческое спасибо!

  • @lj4er6de7e
    @lj4er6de7e 3 ปีที่แล้ว +4

    Здравствуйте. Сделал всё как в видео, но в мониторе порта выводится только 00-00-2000, 00:00:00, Dec
    .Что делать?

  • @rio_s4041
    @rio_s4041 2 ปีที่แล้ว +1

    Спасибо. Всё Работает. Супер.

  • @maddocrusmad464
    @maddocrusmad464 3 ปีที่แล้ว

    Обожаю пухлые пальчики пихающие проводочки в гнезда, у меня такие де ;) лайк

    • @UCanDo
      @UCanDo  3 ปีที่แล้ว

      На самом деле это последствие болезни - воспаление суставов. От этого пльцы временами сильно опухают.

    • @maddocrusmad464
      @maddocrusmad464 3 ปีที่แล้ว

      @@UCanDo :(

    • @skidkev6421
      @skidkev6421 2 ปีที่แล้ว

      You gay???😂

  • @palianycia333
    @palianycia333 4 ปีที่แล้ว +3

    А как бы настроить дату кнопками без ПК. Есть такой урок?

  • @3DSpaceX
    @3DSpaceX 4 ปีที่แล้ว

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

  • @viliist8573
    @viliist8573 4 ปีที่แล้ว

    просто замечательно. и никто не заметил что в первоначальной установке РТС и в выводе в монитор разные цифры.. А так все красиво.. да.

    • @UCanDo
      @UCanDo  4 ปีที่แล้ว +1

      Что-то у вы не внимательны.
      Во-первых: я не нажимал "Прошить скетч", а значит то, что было в скетче НЕ попало в Ардуино.
      Второе: было ясно сказано: нужно прописать правильные настройки даты/времени и прошить. А вы не подумали что я это сделал уже раньше, и теперь всего лишь открыл монитор порта? После чего увидел уже установленные настройки.

    • @user-pw2vi4dl6q
      @user-pw2vi4dl6q 2 ปีที่แล้ว +1

      и получается то, что в скетче может быть не то что на мониторе

    • @UCanDo
      @UCanDo  2 ปีที่แล้ว

      Нужно устанавливать правильные дата/время

  • @IcemanoFF911
    @IcemanoFF911 6 ปีที่แล้ว +1

    а как прикрутить установку времени кнопками?

  • @yeban228
    @yeban228 4 ปีที่แล้ว +1

    Спасибо большое)

  • @Megavolt.
    @Megavolt. 5 ปีที่แล้ว

    Скажите, у дисплея и модуля изначально разные адреса по I2C ? Не может так получиться что адреса совпадут и на чём то менять придётся?

    • @UCanDo
      @UCanDo  5 ปีที่แล้ว

      Адреса разные. О совпадении я ещё никогда не слышал.
      У вас не получается запустить?

    • @Megavolt.
      @Megavolt. 5 ปีที่แล้ว

      @@UCanDo , я пока в ожидании очередной посылки с модулями (затягивает занятие) , просто изучаю вопрос заранее. Не зря же на i2c модулях делают перемычки для смены адреса. Например экраны 1602 по умолчанию все идут с одним адресом.

    • @UCanDo
      @UCanDo  5 ปีที่แล้ว +1

      Да, перемычки ставят в том случае если на линии ставят два абсолютно одинаковых устройства. Это обычная практика.
      В моих опытах на линии i2c приходилось устанавливать три различных устройства. Все работало без проблем.
      Что затягивает, это точно :)))
      В том то и вся прелесть: без спец.знаний, за вечер, можно сделать очень много интересных проектов. А если опыта набраться, то можно и что-то крутое сделать!
      Сейчас сыну 2 машины на радиоуправлении делаю, и себе одну, будем гонять :))
      Хочу ещё самолёт сделать, но это уже скорее к весне-лету будет

  • @andrejbizenkov
    @andrejbizenkov 6 ปีที่แล้ว

    на уно почему то не завелось(завелось видимо сам гдето накосячил в первый раз :( )..... точнее при компиляции ошибку выдает,на меге все работает .....но на меге 2560 делать как то слишком богато( в идеале с такими размерами на нано надо сделать ....и дешевле )))) спасибо за видео))) к стати делал на часах DS3231

    • @UCanDo
      @UCanDo  6 ปีที่แล้ว

      А что за ошибка? Можете написать что выдаёт IDE?

    • @andrejbizenkov
      @andrejbizenkov 6 ปีที่แล้ว

      упс ....на 7 раз все загрузилось и работает ....мне не понятно было чего ему надо ...и я переделывал скеч,переписывал с начала и до конца подключал библиотеки ....на 6 или 7 раз все заработало ...мне не понятно было какая разница между уно и мегой раз порт и2с одинаковый был и там и там .... почему не компилировалось не понятно .... счас уже и не скажу какая ошибка была ....(((( видимо все таки моя вина где то накосячил сам (

    • @UCanDo
      @UCanDo  6 ปีที่แล้ว

      Бывает :)
      Я на Меге проектирую, на ней удобно. А все готовые устройства собираю на ProMini. Это та же Uno, только места мало занимает и дешевле в 3-4 раза...

  • @vasbkamarxil1260
    @vasbkamarxil1260 3 ปีที่แล้ว

    Здравствуйте, а можете сделать видео с индикаторами HDSP2000?

    • @UCanDo
      @UCanDo  3 ปีที่แล้ว

      Здравствуйте. У меня нет в наличии таких индикаторов, и я не планирую их приобретать.

  • @user-ni5db4tj2s
    @user-ni5db4tj2s 4 ปีที่แล้ว

    Скажите пожалуйста а подойдет ли такой скетч для платы arduino nano?

    • @UCanDo
      @UCanDo  4 ปีที่แล้ว

      Добрый день. Вы можете использовать любую Ардуино.

    • @user-ni5db4tj2s
      @user-ni5db4tj2s 4 ปีที่แล้ว

      Спасибо.

  • @joiner777
    @joiner777 4 ปีที่แล้ว +2

    часы 1307 сразу в помойку. По той же цене часы DS3231 обеспечивают уникальную точность, и работают даже от этой же библиотеки. Мои DS3231 за два года ушли вперед всего около 2-х минут. Два года до них не дотрагивался, хотя за это время энергию отключали раз пять. Берите DS3231, не пожалеете.

    • @paulys2856
      @paulys2856 4 ปีที่แล้ว

      Есть какая-то разница в программировании? можно использовать скетч 1307 на ds3231?

    • @shtirlic76tube
      @shtirlic76tube 3 ปีที่แล้ว

      @@paulys2856 использовать можно, только нужна подходящая библиотека RTC

  • @SD-tk2lv
    @SD-tk2lv 4 ปีที่แล้ว

    DS3231 после установки времени в скетче на дисплее только отображение чисел то есть часы не идут.DS3231 в скетче прописываю.Если rtrt = time.gettime("h:i:s"); оставить так часы идут с произвольного времени.Без батарейки ход начинается с 12:00.И выход что даже сломаные часы два раза в сутки показывают точное время.Отпишитесь кто сталкивался с этим,а то глупо ждать 12:00 и втавлять батарейку.

    • @UCanDo
      @UCanDo  4 ปีที่แล้ว

      Сначала нужно прошить скетч с установкой времени. После этого перепрошить вашим скетчем.

  • @drummermistery
    @drummermistery 4 ปีที่แล้ว

    прикольно, я сделал с lcd дисплеем, но один вопрос какого хера при нажатии на ресет или при выключении время начинается с того момента когда залил скетч? они же должны запомнить время.

    • @UCanDo
      @UCanDo  4 ปีที่แล้ว

      Значит вы в скетче прописали установку времени. Каждый раз, когда скетч стартует, по-новой записывается время. Просто один раз установите время и удалите эти строчки кода из скетча

    • @drummermistery
      @drummermistery 4 ปีที่แล้ว

      @@UCanDo да да, нашёл случайно и удалил всё норм, только отстают лбо спешат на 13-15 сек

    • @UCanDo
      @UCanDo  4 ปีที่แล้ว

      Это проблема самих часов. Низкокачественные детали делают Часы не точными. Часто помогает замена часового крарца

  • @alex_sem
    @alex_sem 4 ปีที่แล้ว

    А кнопки для коррекции или установки времени?

    • @UCanDo
      @UCanDo  4 ปีที่แล้ว

      При желании можно установить.

  • @leliklelikovich4442
    @leliklelikovich4442 6 ปีที่แล้ว +10

    Этот модуль часов расчитан на работу с аккумулятором а не с батарейкой ( там есть цепь заряда аккумулятора)

    • @UCanDo
      @UCanDo  6 ปีที่แล้ว +1

      Разница лишь в том, что аккумуляторы можно заряжать... Но и так, в режиме ожидания, 5 лет работы от батарейки думаю более чем достаточно. Если часы будут работать, то время жизни аккумулятора увеличивается на количество рабочих часов, так как в это время часы не используют батарейку.

    • @leliklelikovich4442
      @leliklelikovich4442 6 ปีที่แล้ว +7

      Цепь заряда убивает батарейку быстро, потому как батарейки нильзя заряжать. Для длительной эксплуатации желательно исключить цепь заряда. Ну а для демонстрации и так сойдет.

    • @user-cq5ke5hu4y
      @user-cq5ke5hu4y 5 ปีที่แล้ว

      @@UCanDo
      подскажите как сделать шрифт больше для дисплея 128х64, третий день бьюсь, сделал так-
      u8g.setFont(u8g_font_gdr30n);
      u8g.setPrintPos(15, 45);
      setfont больше значения 30 не устанавливается
      на дисплее еще куча места и находиться он будет от меня далеко, хочу задействовать максимум места. За подсказку буду очень благодарен

    • @UCanDo
      @UCanDo  5 ปีที่แล้ว

      В папке библиотеки u8 есть файл шрифтов. Посмотрите какие шрифты есть.
      Если ни один не подходит - создайте свой, или скачайте с интернета

  • @user-qn4fz2ub3v
    @user-qn4fz2ub3v 5 ปีที่แล้ว

    Здравствуйте! Как добавить к этим часам чтобы выводилась дата.

    • @UCanDo
      @UCanDo  5 ปีที่แล้ว +1

      Добрый день. Очень настоятельно рекомендую просмотреть все обучающие видео от Джереми Блюма. Многое вам станет на много более понятным.
      По-простому разберем код:
      rtrt = time.gettime("H:i:s");
      В переменную "rtrt" получаем дату/время в формате "H:i:s"
      Подробнее о формате получения даты и времени смотрите в примерах для ds1307
      Далее:
      u8g.setPrintPos(0, 30);
      u8g.print(rtrt);
      переменная "rtrt" выводится на дисплей в координатах 0, 30

  • @wdm_frwrd
    @wdm_frwrd 6 ปีที่แล้ว

    Здравствуйте! А как подключить температурный датчик DS18B20 по OneWire и вывести показания на SSD1306 через U8glib? Всё никак не получается... Буду признателен за любую помощь! Спасибо.

    • @UCanDo
      @UCanDo  6 ปีที่แล้ว

      +Wadim Frwrd Здравствуйте! Сейчас в наличии нет DS18B20, по этому могу только в теории все делать. Закиньте скетч на Гугл Диск, дайте ссылку, я посмотрю.

    • @wdm_frwrd
      @wdm_frwrd 6 ปีที่แล้ว

      Еще раз здравствуйте! Так и не разобрался. Вот ссылка: drive.google.com/open?id=0B8iwkKvatyRMdmNXc1hXeTlpS1k

    • @UCanDo
      @UCanDo  6 ปีที่แล้ว

      Сейчас гляну. А что дисплей отображает? Ничего или какие-то левые данные? В чем именно проявляется проблема?

    • @UCanDo
      @UCanDo  6 ปีที่แล้ว

      В сериал пробовали выводить? Температуру правильно показывает?

    • @wdm_frwrd
      @wdm_frwrd 6 ปีที่แล้ว

      В сериал температура выводится. Корректно отображается.

  • @swasy5179
    @swasy5179 6 ปีที่แล้ว

    По прерыванию, например секунда, возможно сделать?

    • @UCanDo
      @UCanDo  6 ปีที่แล้ว

      Вам для часов? Сделайте просто отслеживание по изменению секунд. То есть, модуль часов выдает часы, минуты и секунды. Просто отслеживайте, изменились секунды или нет.

    • @swasy5179
      @swasy5179 6 ปีที่แล้ว

      вопрос чисто академический, если в цикле луп то получается что работа ардуины занята опросом, а если будет большой код то секунду (минуту) можно проспать, а вдруг это будет важно)

    • @UCanDo
      @UCanDo  6 ปีที่แล้ว

      Если у вас какая-то часть программы выполняется более секунды, то стоит подумать про оптимизацию :)
      По сути: пропуск секунды или даже минуты не повлияет на сами часы. Время не собьётся. Часы реального времени будут и дальше идти. Просто отображение часов на дисплее будет "не в ногу со временем" :)
      Это так, просто ремарка.
      Но по сути, ничего кроме оптимизации и перестройке кода я вам посоветовать не могу. Прерывания подходят только для простых задач, на пример присвоение значения переменной. Не получится так что бы по прерыванию обрабатывалась функция считывания текущего времени + прорисовка на дисплее. Это слишком много. Такой подход нарушит работу всей программы, и у вас будут постоянные глюки и зависания.

  • @waleryekimov1524
    @waleryekimov1524 6 ปีที่แล้ว

    Часики не тикают. Монитор показывает данные введенные в скетч?

    • @UCanDo
      @UCanDo  6 ปีที่แล้ว

      Я в монитор порта не выводил, но часы идут, и показывают правильное время. Может вам подождать просто минутку надо?

  • @getmanovich377
    @getmanovich377 4 ปีที่แล้ว

    Какой LCD в видео?

    • @UCanDo
      @UCanDo  4 ปีที่แล้ว

      OLED 128x32

  • @user-uv7oe9nj9u
    @user-uv7oe9nj9u 3 ปีที่แล้ว

    приветвую а как можно погрешности корректировать в часах если отстают или спешапт?

    • @UCanDo
      @UCanDo  3 ปีที่แล้ว +1

      Способов есть много. На пример заменить кварц на более качественный, тогда точность часов повысится.
      Можно в схему добавить кнопки, при нажатии которых будет увеличиваться или уменьшаться значение минут.
      Есть и другие варианты, но они менее удобные и более сложные

    • @user-uv7oe9nj9u
      @user-uv7oe9nj9u 3 ปีที่แล้ว

      @@UCanDo спасибо за ответ а вот програмнно раз настроить и все ,можно? если возможно и как это можно сделать ?)))

    • @UCanDo
      @UCanDo  3 ปีที่แล้ว +1

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

    • @user-uv7oe9nj9u
      @user-uv7oe9nj9u 3 ปีที่แล้ว

      @@UCanDo спасибо большое . а такой еще вопрос профана . есть ардуинка 128 но нет модуля часов .можно ли хотя бы проверить работу светодиодной ленты пусть не верное будет показывать часы . и по прошивке вопрос и как раз по реальному времени просто у меня в библиотеке аж два варианта //#include // Базовая библиотека шины I2C (используется для связи модуля часов реального времени)
      #include // Библиотека часов реального времени . одну я закомментировал так как не в лазило в ардуино . верно лия сделал выбор ?)))

    • @UCanDo
      @UCanDo  3 ปีที่แล้ว +1

      Нет, не верно. Так как у библиотек абсолютно разное предназначение. Они не взаимозаменяемы. В двух словах всего не объяснить. Я вам рекомендую для начала посмотреть видео уроки от Джереми Блюма. Он хорошо рассказывает базовые принципы работы с Ардуино. Просмотрите все его видео. Если после этого останутся вопросы - обращайтесь.

  • @daisydomic
    @daisydomic 6 ปีที่แล้ว

    Arduino IDE says INKOMPATIBLE to iarduino_RTC? u8glib also old! u8g2 is newer! Do you have a update?

    • @UCanDo
      @UCanDo  6 ปีที่แล้ว

      Hello. In most cases, the IDE issues an "unsupported library" error if you do not correctly install the library.
      In the description for the video there is an archive, there are 2 folders in it: "Exsample" and "Libraries"
      You need to unzip the contents of the "Libraries" folder to:
      C:\Users\ -Name-of-User- \Documents\Arduino\libraries\
      After that, restart Arduino IDE

  • @user-mc1qd8sk7h
    @user-mc1qd8sk7h 5 ปีที่แล้ว

    Подскажите на уно заливается без проблем не работает монитор порта

    • @UCanDo
      @UCanDo  5 ปีที่แล้ว

      Напишите ваш код, пожалуйста.
      Попробую помочь.

    • @user-mc1qd8sk7h
      @user-mc1qd8sk7h 5 ปีที่แล้ว

      // Бибилиотека разработана для RTC модуля iarduino.ru/shop/Expansion-payments/chasy-realnogo-vremeni-rtc-trema-modul.html
      // Данный пример устанавливает на модуле заданное время
      #include
      // iarduino_RTC time(RTC_DS1302, 1, 2, 3); // подключаем RTC модуль на базе чипа DS1302, указывая выводы Arduino подключённые к выводам модуля RST, CLK, DAT
      // iarduino_RTC time(RTC_DS1307); // подключаем RTC модуль на базе чипа DS1307, используется аппаратная шина I2C
      iarduino_RTC time(RTC_DS3231); // подключаем RTC модуль на базе чипа DS3231, используется аппаратная шина I2C
      void setup() {
      delay(300);
      Serial.begin(9600);
      time.begin();
      time.settime(0,51,21,27,10,15,2); // 0 сек, 51 мин, 21 час, 27, октября, 2015 года, вторник
      }
      void loop(){
      if(millis()%1000==0){ // если прошла 1 секунда
      Serial.println(time.gettime("d-m-Y, H:i:s, D")); // выводим время
      delay(1); // приостанавливаем на 1 мс, чтоб не выводить время несколько раз за 1мс
      }
      }
      // ОПИСАНИЯ ПАРАМЕТРОВ ФУНКЦИЙ:
      //
      // Подключение библиотеки:
      // #include
      // iarduino_RTC time(название модуля [, вывод SS/RST [, вывод CLK [, вывод DAT]]]);
      // если модуль работает на шине I2C или SPI, то достаточно указать 1 параметр, например: iarduino_RTC time(RTC_DS3231);
      // если модуль работает на шине SPI, а аппаратный вывод SS занят, то номер назначенного вывода SS для модуля указывается вторым параметром, например: iarduino_RTC time(RTC_DS1305,22);
      // если модуль работает на трехпроводной шине, то указываются номера всех выводов, например: iarduino_RTC time(RTC_DS1302, 1, 2, 3); // RST, CLK, DAT
      //
      // Для работы с модулями, в библиотеке реализованы 5 функции:
      // инициировать модуль begin();
      // указать время settime(секунды [, минуты [, часы [, день [, месяц [, год [, день недели]]]]]]);
      // получить время gettime("строка с параметрами");
      // мигать времем blinktime(0-не_мигать / 1-мигают_сек / 2-мигают_мин / 3-мигают_час / 4-мигают_дни / 5-мигают_мес / 6-мигает_год / 7-мигают_дни_недели / 8-мигает_полдень)
      // разгрузить шину period (минуты);
      //
      // Функция begin():
      // функция инициирует модуль: проверяет регистры модуля, запускает генератор модуля и т.д.
      //
      // Функция settime(секунды [, минуты [, часы [, день [, месяц [, год [, день недели]]]]]]):
      // записывает время в модуль
      // год указывается без учёта века, в формате 0-99
      // часы указываются в 24-часовом формате, от 0 до 23
      // день недели указывается в виде числа: 0-воскресенье, 1-понедельник, 2-вторник ..., 6-суббота
      // если предыдущий параметр надо оставить без изменений, то можно указать отрицательное или заведомо большее значение
      // пример: time.settime(-1, 10); установит 10 минут, а секунды, часы и дату, оставит без изменений
      // пример: time.settime(0, 5, 13); установит 13 часов, 5 минут, 0 секунд, а дату оставит без изменений
      // пример: time.settime(-1, -1, -1, 9, 2, 17); установит дату 09.02.2017 , а время и день недели оставит без изменений
      //
      // Функция gettime("строка с параметрами"):
      // функция получает и выводит строку заменяя описанные ниже символы на текущее время
      // пример: time.gettime("d-m-Y, H:i:s, D"); ответит строкой "01-10-2015, 14:00:05, Thu"
      // пример: time.gettime("s"); ответит строкой "05"
      // указанные символы идентичны символам для функции date() в PHP
      // s секунды от 00 до 59 (два знака)
      // i минуты от 00 до 59 (два знака)
      // h часы в 12-часовом формате от 01 до 12 (два знака)
      // H часы в 24-часовом формате от 00 до 23 (два знака)
      // d день месяца от 01 до 31 (два знака)
      // w день недели от 0 до 6 (один знак: 0-воскресенье, 6-суббота)
      // D день недели наименование от Mon до Sun (три знака: Mon Tue Wed Thu Fri Sat Sun)
      // m месяц от 01 до 12 (два знака)
      // M месяц наименование от Jan до Dec (три знака: Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec)
      // Y год от 2000 до 2099 (четыре знака)
      // y год от 00 до 99 (два знака)
      // a полдень am или pm (два знака, в нижнем регистре)
      // A полдень AM или PM (два знака, в верхнем регистре)
      //
      // если требуется получить время в виде цифр, то можно вызвать функцию gettime() без параметра, после чего получить время из переменных
      // пример: time.gettime();
      // Serial.print(time.Hours); Serial.print(":"); // Вывод часов
      // Serial.print(time.minutes); Serial.print(":"); // Вывод минут
      // Serial.print(time.seconds); Serial.println(""); // Вывод секунд
      // seconds секунды 0-59
      // minutes минуты 0-59
      // hours часы 1-12
      // Hours часы 0-23
      // midday полдень 0-1 (0-am, 1-pm)
      // day день месяца 1-31
      // weekday день недели 0-6 (0-воскресенье, 6-суббота)
      // month месяц 1-12
      // year год 0-99
      //
      // Функция blinktime(параметр [, частота ]):
      // указывает функции gettime мигать одним из параметров времени (заменять параметр пробелами)
      // функция может быть полезна, для отображения на дисплее, устанавливаемого параметра времени
      // например при установке минут, они начинают мигать, и Вам понятно, что именно Вы устанавливаете
      // первым аргументом функции указывается параметр в виде числа от 0 до 8
      // 0 не мигать
      // 1 мигают сек
      // 2 мигают мин
      // 3 мигают час
      // 4 мигают дни
      // 5 мигают мес
      // 6 мигает год
      // 7 мигают дни недели
      // 8 мигает полдень
      // второй аргумент функции является необязательным, он указвает частоту миганий в Гц, по умолчанию 1Гц
      // пример: time.blinktime(6); // при выводе на дисплеё будет мигать год с частотой по умолчанию 1Гц
      // пример: time.blinktime(6, 2); // при выводе на дисплеё будет мигать год с частотой 2Гц
      //
      // Функция period(минуты):
      // устанавливает минимальный период обращения к модулю в минутах (от 0 до 255)
      // функция может быть полезна, если шина сильно нагружена, на ней имеются несколько устройств
      // пример: time.period(10); // теперь каждые 10 минут к модулю может быть отправлен только 1 запрос на получение времени
      // ответом на все остальные запросы будет результат последнего полученного от модуля времени + время прошедшее с этого запроса

    • @UCanDo
      @UCanDo  5 ปีที่แล้ว

      В самом начале: #include и ниже - вам нужно закоментировать те строки которые не нужны и раскоментировать то что нужно. Там написано:
      // iarduino_RTC time(RTC_DS1302, 1, 2, 3); // подключаем RTC модуль на базе чипа DS1302
      // iarduino_RTC time(RTC_DS1307); // подключаем RTC модуль на базе чипа DS1307
      iarduino_RTC time(RTC_DS3231); // подключаем RTC модуль на базе чипа DS3231
      Если вы используете DS1307 то код должен выглядеть вот так:
      // iarduino_RTC time(RTC_DS1302, 1, 2, 3); // подключаем RTC модуль на базе чипа DS1302
      iarduino_RTC time(RTC_DS1307); // подключаем RTC модуль на базе чипа DS1307
      // iarduino_RTC time(RTC_DS3231); // подключаем RTC модуль на базе чипа DS3231

    • @user-mc1qd8sk7h
      @user-mc1qd8sk7h 5 ปีที่แล้ว

      Это понятно, тут всё в поряде скетч в поряде у меня 3231 раз комментированно, попробовол нано ардуино таже история к скетчю не придерёшся а не выводит на порт

    • @UCanDo
      @UCanDo  5 ปีที่แล้ว

      Что-то вы не так делаете.
      Дело не в том какую Ардуино использовать, а в настройках.
      Попробуйте вот такой простой скетч:
      void setup() {
      Serial.begin(9600);
      }
      void loop() {
      Serial.println("Test");
      delay(1000);
      }

  • @krab2734
    @krab2734 6 ปีที่แล้ว

    а на тиньке13 можно замутить такой же скетч?

    • @UCanDo
      @UCanDo  6 ปีที่แล้ว

      +Ярослав Яцун На Attyni2313 можно попробовать, но в Тини13 слишком мало памяти. Библиотека дисплея + шрифт занимают очень много места, лучше брать Мегу8. А вообще лучше заказать на Али Ардуино Про Мини. По цене они будут то же что и в местном магазине Тини13-2313...

    • @krab2734
      @krab2734 6 ปีที่แล้ว

      а я уже размечтался о мини часиках на стол :) ну да ладно, вот еще вопрос, есть у меня олед такой же как у вас на видео но без платы, возможно ли подключить дисплейчик по стандартной шине - например к меге8?

    • @UCanDo
      @UCanDo  6 ปีที่แล้ว

      +Ярослав Яцун У меня стекло к плате приклеено, не могу увидеть как там и куда идут контакты. Можешь сделать фотки по-качественнее и по-крупнее, закинуть куда-нибудь и дай ссылку. Попробую определить что куда

    • @krab2734
      @krab2734 6 ปีที่แล้ว

      spaces.ru/pictures/-/list/12804009/ лучше фото вряд ли получится, www.buydisplay.com/download/interfacing/ER-OLED0.84-1_Interfacing.pdf и www.buydisplay.com/download/manual/ER-OLED0.84-1_Series_Datasheet.pdf два найденых мной даташита с распиновками.

    • @UCanDo
      @UCanDo  6 ปีที่แล้ว

      Да, видел такие на Алиекспрессе. Стоят чуть дешевле чем тот что у меня, но я решил не мучаться :)
      Сейчас попробую разобраться.

  • @abdulazizmirahmatov4723
    @abdulazizmirahmatov4723 2 ปีที่แล้ว

    А как подключить вместо дисплея матрицу WS2812B 32х8 подскажите пожалуйста у меня что то не получается

    • @gekageka9817
      @gekageka9817 2 ปีที่แล้ว

      для матрицы драйвер нужен

    • @UCanDo
      @UCanDo  2 ปีที่แล้ว

      Драйвер не нужен. Просто нужно правильно код написать

    • @gekageka9817
      @gekageka9817 2 ปีที่แล้ว

      @@UCanDo правильно написанный код это и есть драйвер

  • @user-lb6xc1hn4j
    @user-lb6xc1hn4j 3 หลายเดือนก่อน

    А как реализовать счетчик дней на таких часах?

    • @UCanDo
      @UCanDo  3 หลายเดือนก่อน

      Сам модуль RTC умеет вести календарь. Или вы имеете в виду именно счетчик дней с момента старта? Тогда в коде добавляете еще одну переменную, к которой довлеете 1 в момент когда часы достигают полуночи (00:00).

    • @user-lb6xc1hn4j
      @user-lb6xc1hn4j 3 หลายเดือนก่อน

      @@UCanDo да, именно количество дней от старта программы ( дней, часов). Если можно пример кода? Я учусь только. Благодарю за ответ.

    • @UCanDo
      @UCanDo  3 หลายเดือนก่อน +1

      @@user-lb6xc1hn4j у меня есть группа телеграмм, можешь туда обратится с вопросом. В комментариях писать скетч ну очень не удобно: t.me/HomeMadeChannel

  • @Dancopymus
    @Dancopymus 6 ปีที่แล้ว

    Hi friend! Where is the code shown in the video? Thank you

    • @UCanDo
      @UCanDo  6 ปีที่แล้ว

      Hello. Sorry for the delay in answering. Archive with an example and libraries you can download here: drive.google.com/open?id=1OKSJWt-LrbIFlVSB7VN3nG98dwRAHEZn

    • @Dancopymus
      @Dancopymus 6 ปีที่แล้ว

      Thanks for the code; Is it for the watch as in the video? And how to set the display time?
      Once again, thank you.

    • @UCanDo
      @UCanDo  6 ปีที่แล้ว

      Yes, this is the code that is used in the video.
      In order to set the time, you need to open an example in Arduino IDE:
      File - Examples - iarduino RTC - settime
      In the "setup" section, pay attention to this line:
      time.settime (0, 51, 21, 27, 10, 15, 2);
      Where:
      0 seconds (0-59)
      51 minutes (0-59)
      21 hours (0-23)
      27 - date (day)
      10 - date (month)
      15 - year (2015)
      2 - day of the week (1-Monday, 7-Sunday)
      Set the values ​​you need. But it is important to remember a few things:
      - the battery must be installed
      - The time should be set more than the current for about 30-60 seconds, since part of the time is spent during the firmware of Arduino.
      After Arduino's firmware, the clock will be set at the correct time and will remember it. In the future, you can fill any other sketch in Arduino.

    • @Dancopymus
      @Dancopymus 6 ปีที่แล้ว

      Sorry, I have two more questions:
      1) How to flash the colon on the display (are they actually 4)?
      2) Would you know how to adapt your code to this display? en.aliexpress.com/item/M-Display-LCD-Backlight-Verde-2-4-in-Digits-7-Segmento-HT1621-LCD/32675805099.html
      It's just that I have it and would like to make a watch like yours; Thanks ++

    • @UCanDo
      @UCanDo  6 ปีที่แล้ว +1

      Unfortunately I do not have such a display. I do not know how to use it. I can only give links to articles and a library.
      The example from the library is very well described, but in Russian.
      Library: iarduino.ru/lib/HT1621.RAR
      Article:
      www.14core.com/wiring-the-6-digit-7-segment-2-4-inch-ht1621-lcd-display-module-on-microcontroller/
      arduinolearning.com/code/ht1621-6-digit-7-segment-display-example.php
      github.com/kuwatay/Arduino

  • @user-og3re4sv1e
    @user-og3re4sv1e 2 หลายเดือนก่อน

    Спасибо дорогой друг,а как прикрутить туда модуль семисегментный тм 16 и реализовать будильник?Спасибо дорогой друг.Лайк 👍

  • @ItIsWednesday
    @ItIsWednesday 3 ปีที่แล้ว

    а как поменять размер шрифта?

    • @UCanDo
      @UCanDo  3 ปีที่แล้ว

      в скетче шрифт указывается вот этой строчкой:
      u8g.setFont(u8g_font_gdr20n);
      В библиотеке есть файл со шрифтами:
      u8g_font_data.c
      В этом файле вы можете посмотреть какие шрифты доступны и выбрать подходящий

  • @user-pl9ke6nh4m
    @user-pl9ke6nh4m 6 ปีที่แล้ว

    после сброса отсчёт начинается заново, как можно пофиксить?

    • @UCanDo
      @UCanDo  6 ปีที่แล้ว

      Да там все не сложно :) на дисплее и на Часах реального времени (RTC) всего по 4 пина: VCC, GND, SDA, SCL. Оба устройства подключаются параллельно, то есть к одним и тем же контактам.
      VCC и GND - это пины питания +5 и GND
      SDA подключается к пину SDA на ардуино.
      SCL подключается к пину SCL на ардуино.
      Посмотри на свою Ардуино - эти пины должны быть подписаны.
      Если не разберешься, то тогда нарисую схему :)
      Если отсчет идет заново, то может быть 2 варианта: у тебя каждый раз по-новой устанавливается время или плохой контакт батарейки. Нужно 1 наз установить время, после этого изменить скетч что бы время каждый раз по-новой не перезаписывалось.

    • @user-pl9ke6nh4m
      @user-pl9ke6nh4m 6 ปีที่แล้ว

      всё работает, спасибо :)

    • @UCanDo
      @UCanDo  6 ปีที่แล้ว

      Успехов вам!

    • @user-yd6xd4zw8l
      @user-yd6xd4zw8l 5 ปีที่แล้ว

      да ?) я чтото пропустил, или вы етого в видео не упомянули ?)

    • @UCanDo
      @UCanDo  5 ปีที่แล้ว

      Чего именно?

  • @graly651
    @graly651 5 ปีที่แล้ว

    А как к дисплею lcd1603

    • @UCanDo
      @UCanDo  5 ปีที่แล้ว

      Может 1602?
      Это очень распространённый дисплей. В сети очень много примеров работы с ним. Да и у меня на канале есть несколько видео, где я подробно объясняю как с ним работать

  • @skidkev6421
    @skidkev6421 2 ปีที่แล้ว

    Please tell me which pins are going to the Arduino. Im still a newbie. Please Help!!

    • @UCanDo
      @UCanDo  2 ปีที่แล้ว +1

      I2C interface using A4 and A5 pins

    • @skidkev6421
      @skidkev6421 2 ปีที่แล้ว

      @@UCanDo Ok, I only have Arduino nano and mini. How do I connect that?

    • @UCanDo
      @UCanDo  2 ปีที่แล้ว +1

      you should watch the video tutorials from Jeremy Bloom. He tells in great detail how to work with Arduino.

    • @skidkev6421
      @skidkev6421 2 ปีที่แล้ว

      @@UCanDo thankyou so much bro.

  • @user-wj4pt6st9w
    @user-wj4pt6st9w 7 หลายเดือนก่อน

    как поивилось в примеры

    • @UCanDo
      @UCanDo  7 หลายเดือนก่อน

      Файл - примеры - «название библиотеки»

    • @user-wj4pt6st9w
      @user-wj4pt6st9w 7 หลายเดือนก่อน

      это не zip

  • @sergano89
    @sergano89 6 ปีที่แล้ว +3

    И кварц такой что за сутки на пол минуты время вперёд уходит.

    • @UCanDo
      @UCanDo  6 ปีที่แล้ว +1

      Может вам какой-то бракованный попался? У меня время не "уплывает". Но, на сколько я знаю, если подобное начинает проявляться, то достаточно заземлить корпус кварца (подпаять к минусу) для защиты от помех.

    • @sergano89
      @sergano89 6 ปีที่แล้ว

      Home Made - кварц запаян на массу , так что не в етом трабл а в самом кварце

    • @UCanDo
      @UCanDo  6 ปีที่แล้ว +1

      Попался бракованный. У меня такого на разу не было. Все таки кварц это точный прибор. У него нет "гуляний". Попробуйте заменить. во всех часах стоят такие же.

    • @borisgodunov6393
      @borisgodunov6393 6 ปีที่แล้ว +7

      посмею несогласится. купил китовый набор часов, где диоды по кругу бегают в разных режимах, а в центре 4 значный индикатор. так вот на комплектном кварце за 1 час 20 минут набежало))). немного погуглив, нашел кучу таких же жалоб. совет был такой- сменить кондеры в обвязке кварца и сам кварц из материнской платы компа. после замены часы стали брехать примерно на 2 минуты за месяц. иеще не по теме- в тех же часах температура реализована на датчике 1wire, так вот он тоже брешет на 3 градуса.что я только не делал. видать нужно программно корректировать. п.с. вообще в доме куча китай- бабай часов кварцевых , и все идут по разному. раз в три месяца расходятся до 5 минут. так что кто говорит что у него все четко и точно, просто не придает этому значение.

    • @user-yd6xd4zw8l
      @user-yd6xd4zw8l 5 ปีที่แล้ว

      ох уж ці брехуни )

  • @graly651
    @graly651 5 ปีที่แล้ว

    1602

  • @allprank1164
    @allprank1164 3 ปีที่แล้ว

    старт rtrt сколько не ставь значение всегда с нулей начинается

    • @UCanDo
      @UCanDo  3 ปีที่แล้ว

      Значит неправильно что-то делаете.

  • @user-wh3lx5no1o
    @user-wh3lx5no1o 5 ปีที่แล้ว

    скорее не "часы реального времени" , а датчик реального времени или модуль часов

    • @leonid_rogov
      @leonid_rogov 4 ปีที่แล้ว

      RTC - Real Time Clock, поэтому либо Часы реального времени, либо Модуль Часов реального времени

  • @user-wj4pt6st9w
    @user-wj4pt6st9w 7 หลายเดือนก่อน

    не могу копировать

  • @riseoftech4k332
    @riseoftech4k332 6 ปีที่แล้ว

    Cool man!!! im making videos like these.. could you come and check them out? thanks

    • @UCanDo
      @UCanDo  6 ปีที่แล้ว

      Hi! I'm glad that the video was useful! If you need help, write to my email: igor.silenock@gmail.com

  • @vagbusoldbus2687
    @vagbusoldbus2687 ปีที่แล้ว

    и все как обычно не показывают как использовать еепром

    • @UCanDo
      @UCanDo  ปีที่แล้ว

      Ардуино и внешняя EEPROM 24C128
      th-cam.com/video/ZSH5nZn8cf4/w-d-xo.html