Arduino:Примеры/SimpleRTC

Материал из Онлайн справочника
Перейти к навигации Перейти к поиску

Перевод: Максим Кузьмин (Cubewriter) Контакты:</br>* Skype: cubewriter</br>* E-mail: cubewriter@gmail.com</br>* Максим Кузьмин на freelance.ru
Проверка/Оформление/Редактирование: Мякишев Е.А.


Простые часы реального времени (RTC)[1]

Этот пример показывает, как использовать функции библиотеки RTC.

Необходимое оборудование

  • Плата Arduino Zero

Код

 1 /*
 2   Простые RTC для Arduino Zero или MKR1000
 3 
 4  Демонстрирует использование библиотеки RTC для Arduino Zero и
 5  MKR1000. 
 6 
 7  Этот пример не защищен авторским правом.
 8 
 9  http://arduino.cc/en/Tutorial/SimpleRTC
10 
11   Создан Артуро Гуадалупи (Arturo Guadalupi; a.guadalupi@arduino.cc)
12   15 июня 2015 года, модифицирован 18 февраля 2016 года.
13 */
14 
15 #include <RTCZero.h>
16 
17 /* создаем объект RTC */
18 RTCZero rtc;
19 
20 /* меняем эти значения, чтобы задать текущее время */
21 const byte seconds = 0;
22 const byte minutes = 0;
23 const byte hours = 16;
24 
25 /* меняем эти значения, чтобы задать текущую дату */
26 const byte day = 15;
27 const byte month = 6;
28 const byte year = 15;
29 
30 void setup()
31 {
32   Serial.begin(9600);
33   
34   rtc.begin(); // инициализируем RTC
35   
36   // устанавливаем время:
37   rtc.setHours(hours);
38   rtc.setMinutes(minutes);
39   rtc.setSeconds(seconds);
40   
41   // устанавливаем дату:
42   rtc.setDay(day);
43   rtc.setMonth(month);
44   rtc.setYear(year);
45   
46   // также можно использовать функции:
47   //rtc.setTime(hours, minutes, seconds);
48   //rtc.setDate(day, month, year);
49 }
50 
51 void loop()
52 {
53   // выводим дату на монитор порта:
54   Serial.print(rtc.getDay());
55   Serial.print("/");
56   Serial.print(rtc.getMonth());
57   Serial.print("/");
58   Serial.print(rtc.getYear());
59   Serial.print("\t");
60   
61   // выводим время на монитор порта:
62   Serial.print(rtc.getHours());
63   Serial.print(":");
64   Serial.print(rtc.getMinutes());
65   Serial.print(":");
66   Serial.print(rtc.getSeconds());
67  
68   Serial.println();
69   
70   delay(1000);
71 }

См.также

Внешние ссылки