Страница 1 из 1
Часы реального времени Pcf8563
Добавлено: 14 авг 2019, 11:12
fsergei70
Кто нибудь использовал в своих проектах часы Pcf8563.
Не смотря на то что с точность у них проблемы, они отлично работают от 3,3 вольт.
Вот статья про них на хабре
https://habr.com/ru/post/463265/
Часы реального времени Pcf8563
Добавлено: 14 авг 2019, 13:22
AlexCrane
[ref]fsergei70[/ref], Очень давно использовал, только на PIC микроконтроллерах... Вопрос-то какой?
Часы реального времени Pcf8563
Добавлено: 14 авг 2019, 13:27
SSSergeich
fsergei70 писал(а): 14 авг 2019, 11:12
Кто нибудь использовал в своих проектах часы Pcf8563.
Как раз пытался на прошлой неделе, но не сложилось.
ПБ под них не нашел. Пытался запустить найденные скетчи, но ни один не заработал. Библиотеки тоже разные брал и примеры из них.
Что на дисплей, что в компорт, время 45:45:85 выдает, причем даже с неподключенным модулем.
Есть положительный опыт?
Часы реального времени Pcf8563
Добавлено: 14 авг 2019, 13:29
fsergei70
AlexCrane писал(а): 14 авг 2019, 13:22
Вопрос-то какой?
Вопроса два.
1 Есть ли смысл использовать эти часы с ESP с периодической синхронизацией времени с NTP.
2 Подходят ли блоки от DS1307, если в коде сменить адрес I2C на 51
Часы реального времени Pcf8563
Добавлено: 14 авг 2019, 13:32
SSSergeich
Заинтересовал этот модуль наличием будильника с отдельным управляемым пином.
Часы реального времени Pcf8563
Добавлено: 14 авг 2019, 13:54
fsergei70
SSSergeich писал(а): 14 авг 2019, 13:27
Как раз пытался на прошлой неделе, но не сложилось.
Шину I2C сканировали? Адрес какой? На шине резики к + питания стоят?
Отправлено спустя 8 минут 31 секунду:
Может у кого то есть рабочий скетч, чтоб сделать блоки. У меня микрухи нет пока, мне нужны часики работающие от 3,3 вольт, из всех вариантов подходят DS3231 и Pcf8563. Для Ds1307 нужно согласовывать уровни и питание 5 вольт. конечно DS3231 гораздо лучше, но придется использовать готовые модули. Микросхему Pcf8563 с обвязкой проще развести на печатке.
Часы реального времени Pcf8563
Добавлено: 14 авг 2019, 14:07
SSSergeich
fsergei70 писал(а): 14 авг 2019, 13:45
SSSergeich писал(а): 14 авг 2019, 13:27
Как раз пытался на прошлой неделе, но не сложилось.
Шину I2C сканировали? Адрес какой?
Неа, не сканировал, чот не додумался) Ща найду платки, соберу, просканирую
Часы реального времени Pcf8563
Добавлено: 14 авг 2019, 14:29
AlexCrane
Часы реального времени Pcf8563
Добавлено: 14 авг 2019, 23:39
SSSergeich
fsergei70 писал(а): 14 авг 2019, 13:54
Шину I2C сканировали? Адрес какой? На шине резики к + питания стоят?
Просканировал, 51 адрес. Да, стоят
Отправлено спустя 34 минуты 49 секунд:
Вот такой вот скетч:
[spoiler]
Код: Выделить всё
// Date and time functions using a PCF8523 RTC connected via I2C and Wire lib
#include "RTClib.h"
RTC_PCF8523 rtc;
char daysOfTheWeek[7][12] = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"};
void setup () {
while (!Serial) {
delay(1); // for Leonardo/Micro/Zero
}
Serial.begin(57600);
if (! rtc.begin()) {
Serial.println("Couldn't find RTC");
while (1);
}
if (! rtc.initialized()) {
Serial.println("RTC is NOT running!");
// following line sets the RTC to the date & time this sketch was compiled
// rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));
// This line sets the RTC with an explicit date & time, for example to set
// January 21, 2014 at 3am you would call:
// rtc.adjust(DateTime(2019, 8, 14, 16, 35, 0));
}
}
void loop () {
DateTime now = rtc.now();
Serial.print(now.year(), DEC);
Serial.print('/');
Serial.print(now.month(), DEC);
Serial.print('/');
Serial.print(now.day(), DEC);
Serial.print(" (");
Serial.print(daysOfTheWeek[now.dayOfTheWeek()]);
Serial.print(") ");
Serial.print(now.hour(), DEC);
Serial.print(':');
Serial.print(now.minute(), DEC);
Serial.print(':');
Serial.print(now.second(), DEC);
Serial.println();
Serial.print(" since midnight 1/1/1970 = ");
Serial.print(now.unixtime());
Serial.print("s = ");
Serial.print(now.unixtime() / 86400L);
Serial.println("d");
// calculate a date which is 7 days, 12 hours and 30 seconds into the future
DateTime future (now + TimeSpan(7,12,30,6));
Serial.print(" now + 7d + 12h + 30m + 6s: ");
Serial.print(future.year(), DEC);
Serial.print('/');
Serial.print(future.month(), DEC);
Serial.print('/');
Serial.print(future.day(), DEC);
Serial.print(' ');
Serial.print(future.hour(), DEC);
Serial.print(':');
Serial.print(future.minute(), DEC);
Serial.print(':');
Serial.print(future.second(), DEC);
Serial.println();
Serial.println();
delay(3000);
}
[/spoiler]
Выдает в компорт такой лог:
[spoiler]
Код: Выделить всё
16:35:34.976 -> RTC is NOT running!
16:35:34.976 -> 2165/165/165 (Sunday) 165:165:85
16:35:34.976 -> since midnight 1/1/1970 = 1535240785s = 17768d
16:35:35.010 -> now + 7d + 12h + 30m + 6s: 2018/9/2 12:16:31
16:35:35.010 ->
16:35:38.009 -> 2165/165/165 (Sunday) 165:165:85
16:35:38.009 -> since midnight 1/1/1970 = 1535240785s = 17768d
16:35:38.009 -> now + 7d + 12h + 30m + 6s: 2018/9/2 12:16:31
16:35:38.044 ->
16:35:41.041 -> 2165/165/165 (Sunday) 165:165:85
16:35:41.041 -> since midnight 1/1/1970 = 1535240785s = 17768d
16:35:41.041 -> now + 7d + 12h + 30m + 6s: 2018/9/2 12:16:31
16:35:41.075 ->
16:35:44.066 -> 2165/165/165 (Sunday) 165:165:85
16:35:44.101 -> since midnight 1/1/1970 = 1535240785s = 17768d
16:35:44.101 -> now + 7d + 12h + 30m + 6s: 2018/9/2 12:16:31
16:35:44.101 ->
16:35:47.106 -> 2165/165/165 (Sunday) 165:165:85
16:35:47.106 -> since midnight 1/1/1970 = 1535240785s = 17768d
16:35:47.106 -> now + 7d + 12h + 30m + 6s: 2018/9/2 12:16:31
16:35:47.137 ->
[/spoiler]
Отправлено спустя 52 минуты 23 секунды:
А вот с этой библой заработало!
Rtc_Pcf8563-master.zip
Отправлено спустя 6 часов 8 минут 34 секунды:
Попытался сделать свой первый ПБ для установки времени... Через пару часов кипятильник выключился по перегреву...
Часы реального времени Pcf8563
Добавлено: 15 авг 2019, 00:28
Nikan
.
Часы реального времени Pcf8563
Добавлено: 23 авг 2019, 09:43
SSSergeich
Рабочие блоки
PCF8563.ubl
Обновил блоки
Часы реального времени Pcf8563
Добавлено: 23 авг 2019, 10:08
fsergei70
SSSergeich писал(а): 23 авг 2019, 09:43
Рабочие блоки
Жаль блока для будильника нет.
Отправлено спустя 7 минут 19 секунд:
В описании будильника на сайте говорится что можно управлять пином INT (interrupt), если это реализовать то можно будет будить микроконтроллер часами, или перезагружать.
https://habr.com/ru/post/463265/
Часы реального времени Pcf8563
Добавлено: 23 авг 2019, 10:50
SSSergeich
fsergei70 писал(а): 23 авг 2019, 10:08
Жаль блока для будильника нет.
Отправлено спустя 7 минут 19 секунд:
В описании будильника на сайте говорится что можно управлять пином INT (interrupt), если это реализовать то можно будет будить микроконтроллер часами, или перезагружать.
https://habr.com/ru/post/463265/
Будильник пока не доделан и не протестирован
Часы реального времени Pcf8563
Добавлено: 23 авг 2019, 11:18
Sancho
fsergei70 писал(а): 23 авг 2019, 10:08
В описании будильника на сайте говорится что можно управлять пином INT (interrupt), если это реализовать то можно будет будить микроконтроллер часами, или перезагружать.
Тему уже с [ref]SSSergeich[/ref] обсуждали, в процессе.

Часы реального времени Pcf8563
Добавлено: 23 авг 2019, 11:26
fsergei70
Sancho писал(а): 23 авг 2019, 11:18
Тему уже с SSSergeich обсуждали, в процессе.
Отлично, заказал модули и микрухи в DIP, приедут буду пробовать
Часы реального времени Pcf8563
Добавлено: 11 дек 2019, 20:33
AstroGraf
SSSergeich писал(а): 23 авг 2019, 09:43
Рабочие блоки
PCF8563.ubl
Обновил блоки
Добрый вечер! В блоке установки часов после компиляции не хватает двух первых строк:
#include <Rtc_Pcf8563.h>
Rtc_Pcf8563 rtc;
Часы реального времени Pcf8563
Добавлено: 11 дек 2019, 20:57
SSSergeich
AstroGraf писал(а): 11 дек 2019, 20:33
SSSergeich писал(а): 23 авг 2019, 09:43
Рабочие блоки
PCF8563.ubl
Обновил блоки
Добрый вечер! В блоке установки часов после компиляции не хватает двух первых строк:
#include <Rtc_Pcf8563.h>
Rtc_Pcf8563 rtc;
Добрый вечер!
Эти строки есть в другом блоке, "Получение даты и времени". Редко когда используют только установку времени, без его получения потом
Отправлено спустя 7 минут 22 секунды:
[ref]AstroGraf[/ref], если Вам нужен только этот блок в проекте, без получения данных потом, то
Установка_даты_и_времени_only_(CODE).ubi
Часы реального времени Pcf8563
Добавлено: 12 дек 2019, 14:25
AstroGraf
SSSergeich писал(а): 11 дек 2019, 20:57
Редко когда используют только установку времени, без его получения потом
Да, не догадался, просто тестировал новый модуль, привык ранее делать установку отдельной программой.
SSSergeich писал(а): 11 дек 2019, 20:57
если Вам нужен только этот блок в проекте, без получения данных потом, то
Спасибо!