RTC_PCF8563.h

Описание

  • Библиотека предназначена для работы с модулем часов реального времени на чипе PCF8563;
  • Модуль подключается через I2C-шину и имеет адреса 0xA3 для чтения и 0xA2 для записи;

Подключение

Для использования функций библиотеки поделючаем ее и вызываем конструктор без параметров:

#include <Rtc_Pcf8563.h>
Rtc_Pcf8563 rtc;

Методы, переменные и константы

Типы данных

Методы

  • 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;

Пример использования

 /*
 * 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);
}

Ссылки

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 Яндекс.Метрика