Пример 21. Модуль часов DS-1302
Примеры
ПРИМЕРЫ
- Пример 1. Светодиоды
- Пример 2. Подключение кнопки
- Пример 3. Переключатель
- Пример 4. Активный зуммер
- Пример 5. Пассивный зуммер
- Пример 6. Фоторезистор
- Пример 7. RGB-светодиод
- Пример 8. Семисегментный индикатор и 74HC595N
- Пример 9. Четырехразрядный 7-сегментный индикатор
- Пример 10. Светодиодная матрица
- Пример 11. Светодиодная шкала
- Пример 12. ЖК-дисплей
- Пример 13. Джойстик
- Пример 14. Вольтметр
- Пример 15. Термистор
- Пример 16. Модуль DHT11
- Пример 17. Модуль HC-SR04
- Пример 18. Датчик движения HC-SR501
- Пример 19. Матричная клавиатура
- Пример 20. ИК датчик и пульт
- Пример 21. Модуль часов DS-1302
- Пример 22. RFID-модуль RC522
- Пример 23. Сервопривод
- Пример 24. Модуль реле
- Пример 25. Двигатель постоянного тока
- Пример 26. Шаговый двигатель и драйвер ULN2003
- Пример 27. Драйвер двигателей на L298N
- Пример 28. MP3-плеер DFPlayer Mini
- Пример 29. Датчик уровня воды
- Пример 30. Serial Port
- Пример 31. Симуляция парковки
- Пример 32. Датчик температуры DS18B20
- Пример 33. Bluetooth-модуль HC-06
- Пример 34. Плата расширения с дисплеем и кнопками
- Пример 35. Плата расширения для двигателей на L293D
- Пример 36. Ethernet шилд W5100
- Пример 37. GSM/GPRS шилд SIM900
- Пример 38. GPS модуль Ublox NEO-6M
- Пример 39. Модуль считывания отпечатков пальцев
- Пример 40. Шаговый двигатель NEMA17 и драйвер TB6600
Многие проекты или задачи требуют точного временного исполнения. Например, в системе автополива могут быть несколько режимов: утренний полив, дневной и вечерний. Значит, для стабильной работы всей этой системы и всего рабочего цикла необходимо, чтобы система, построенная на Arduino, имела возможность точно определять текущее время.
Данная функция в плате не была предусмотрена, поэтому такую проблему поможет решить RTC модуль часов реального времени. Он поможет составить план для Arduino касаемо того, что и в какое время должно включаться в работу или производить иные действия.
Ориентация во времени очень полезна не только в автополиве, но и в других системах: включение света или отопления по расписанию, включение электрочайника по таймеру и пр.
Рассмотрим работу модулей часов реального времени на примере DS-1302.
Описание:
В этом примере продемонстрируем работу с DS-1302, используя библиотеку virtuabotixRTC. Установим текущее время с помощью примера из библиотеки. Для питания модуля нам понадобится литиевая батарейка CR2032.
Компоненты:
Схема:
Скетч:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
#include <virtuabotixRTC.h> // подключаем библиотеку virtuabotixRTC myRTC(6, 7, 8); // создаем объект RTC (CLK к 6 цифр.выводу, DAT к 7, RST к 8) void setup() { Serial.begin(9600); // устанавливаем текущее время в следующем формате: // секунды, минуты, часы, день недели, день, месяц, год // как только установили время, не забудьте прокомментировать // строчку ниже, иначе время будет устанавливаться снова myRTC.setDS1302Time(59, 37, 13, 4, 7, 3, 2019); } void loop() { // обновляем время myRTC.updateTime(); // выводим информацию в монитор порта Serial.print("Current Date / Time: "); Serial.print(myRTC.dayofmonth); Serial.print("/"); Serial.print(myRTC.month); Serial.print("/"); Serial.print(myRTC.year); Serial.print(" "); Serial.print(myRTC.hours); Serial.print(":"); Serial.print(myRTC.minutes); Serial.print(":"); Serial.println(myRTC.seconds); // пауза в 5с delay( 5000); } |