Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
rtc_pcf8563 [2015/10/27 12:01]
ansealk [Методы]
rtc_pcf8563 [2015/10/27 12:07] (текущий)
ansealk [Переменные]
Строка 1: Строка 1:
 +====== RTC_PCF8563.h ======
 +
 +**Описание** ​
 +  * Библиотека предназначена для работы с модулем часов реального времени на чипе PCF8563;
 +  * Модуль подключается через I2C-шину и имеет адреса 0xA3 для чтения и 0xA2 для записи; ​
 +
 +**Подключение**
 +
 +Для использования функций библиотеки поделючаем ее и вызываем конструктор ​ без параметров:​
 +<code cpp>
 +#include <​Rtc_Pcf8563.h>​
 +Rtc_Pcf8563 rtc;
 +</​code>​
 +
 +===== Методы,​ переменные и константы =====
 +
 +==== Типы данных ====
 +
 +==== Методы ====
 +  ***void initClock()** - Инициализирует RTC перед использованием.
 +  ***void setTime(byte hour, byte minute, byte sec)** - установка времени
 +  ***void setDate(byte day, byte weekday, byte month, bool century, byte year)** - установка даты
 +    ***byte day** - День месяца
 +    ***byte weekday** - Номер дня недели
 +    ***byte month** - Номер месяца,​ начиная с 1
 +    ***bool century** - столетие:​ 1: 1900, 0:2000
 +    ***byte year** - последние две цифры года
 +  ***void getDateTime()** - получить значения текущих времени и даты и записать из в переменные класса.
 +
 +==== Переменные ====
 +
 +  * Время и дата:
 +    * byte hour;
 +    * byte minute;
 +    * bool volt_low;
 +    * byte sec;
 +    * byte day;
 +    * byte weekday;
 +    * byte month;
 +    * byte year; - две последних цифры года
 +    * bool century; - век
 +  * Будильник:​
 +    * byte alarm_hour;
 +    * byte alarm_minute;​
 +    * byte alarm_weekday;​
 +    * byte alarm_day; ​
 +===== Пример использования =====
 +
 +<code cpp>
 + /*
 + * SCK - A5, SDA - A4, INT - D3/INT1
 + * setup: ​ see Pcf8563 data sheet.
 + ​* ​        1x 10Kohm pullup on Pin3 INT
 + ​* ​        No pullups on Pin5 or Pin6 (I2C internals used)
 + ​* ​        1x 0.1pf on power
 + ​* ​        1x 32khz chrystal
 + ​* ​        1x h44780 LCD
 + */
 +
 +#include <​Wire.h>​
 +#include <​Rtc_Pcf8563.h>​
 +#include <​LiquidCrystal.h>​
 +
 +//init the real time clock
 +Rtc_Pcf8563 rtc;
 +
 +/* initialize the library objects */
 +/* LiquidCrystal lcd(rs, en, d4, d5, d6, d7); */
 +LiquidCrystal lcd(4 ,9 ,5 ,6 ,7 ,8);
 +
 +void setup()
 +{
 +  lcd.begin(16,​ 2);
 +  ​
 +  //clear out all the registers
 +  rtc.initClock();​
 +  //set a time to start with.
 +  //day, weekday, month, century, year
 +  rtc.setDate(14,​ 6, 3, 0, 10);
 +  //hr, min, sec
 +  rtc.setTime(1,​ 15, 40);
 +}
 +
 +void loop()
 +{
 +  lcd.setCursor(0,​ 0);
 +  //​lcd.print(rtc.formatTime(RTCC_TIME_HM));​
 +  lcd.print(rtc.formatTime());​
 +  lcd.setCursor(0,​ 1);
 +  //​lcd.print(rtc.formatDate(RTCC_DATE_ASIA));​
 +  lcd.print(rtc.formatDate());​
 +
 +  delay(1000);​
 +}
 +</​code>​
 +
 +===== Ссылки =====
 +
 +
 +
 +
  
rtc_pcf8563.txt · Последние изменения: 2015/10/27 12:07 — ansealk
GNU Free Documentation License 1.3
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0 Яндекс.Метрика