уже год как часы не работают
кто нибудь разобрался как исправить код чтобы они заработали
после заливки показывают 00:00:80 и стоят на месте
DS1307 как запустить ?
Добавлено: 17.02.2024{, 06:16}
sava74
Обычно с ними проблем нету.
Проект хотелось бы увидеть для начала.
DS1307 как запустить ?
Добавлено: 17.02.2024{, 06:28}
fefar51702
дело не в проекте а в совтовом блоке
DS1307 как запустить ?
Добавлено: 17.02.2024{, 06:32}
sava74
В восьмой версии новые библиотеки, там походу косяк есть
попробуй в версии FLProg 7.5.2
DS1307 как запустить ?
Добавлено: 17.02.2024{, 06:50}
fefar51702
не какая то хрень не ведомая
я уже и билиотеку по откатывал до версии 1,14
и флпрог запустил 7,3,8
бесполезно
DS1307 как запустить ?
Добавлено: 17.02.2024{, 07:04}
montirovka
Так а проект можно увидеть? Почему 80 секунд ? Шину I2C сканировали? Адрес 1307 и модуля с 24С32 виден? Как правило осмотр платы с увеличителем позволяет выявить более быстро неисправность. Плата DS1307 c 24C32? Батарейку меняли? Ноги кварцевого резонатора в норме? Квары бывает выходят из строя. Тараканы ни чего не съели ( не накакали)? Может просто платка вышла из строя?
P.S. Адрес часов 0х68, адрес EEPROM 0х50.
DS1307 как запустить ?
Добавлено: 17.02.2024{, 08:51}
fefar51702
с адресами нормально всё
дело не в модуле
у меня и обычная расыпуха 1307 припаяная к есп не запускается так же нехочет
DS1307 как запустить ?
Добавлено: 17.02.2024{, 08:56}
montirovka
Допытался что ESP. А где проект?
DS1307 как запустить ?
Добавлено: 17.02.2024{, 09:01}
sava74
fefar51702, пришли скетч что в IDE компилируется, посмотрим что там.
учитывая что есть вопросы то блок не кто не проверял вчера
а учитывая что прошол уже почти год то блоком никто и не пользуется
montirovka, дело не в проекте если сам блок не работает
я же скинул скрин где только блок и уарт с ним что бы не было потом вопросов по якобы конфликту блоков
про ЕСП я писал что и на ней тоже блок не работает как и на ардуино
rw6cm, это не правельное размышление ибо все часы стартуют после заливки с 00:00:00
будь то 3231 1302 1307 либо системные часы на мк
// Date and time functions using a DS1307 RTC connected via I2C and Wire lib
#include "RTClib.h"
RTC_DS1307 rtc;
char daysOfTheWeek[7][12] = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"};
void setup () {
Serial.begin(57600);
#ifndef ESP8266
while (!Serial); // wait for serial port to connect. Needed for native USB
#endif
if (! rtc.begin()) {
Serial.println("Couldn't find RTC");
Serial.flush();
while (1) delay(10);
}
if (! rtc.isrunning()) {
Serial.println("RTC is NOT running, let's set the time!");
// When time needs to be set on a new device, or after a power loss, the
// 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(2014, 1, 21, 3, 0, 0));
}
// When time needs to be re-set on a previously configured device, the
// 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(2014, 1, 21, 3, 0, 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, 30 minutes, and 6 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);
}
rw6cm, это не правельное размышление ибо все часы стартуют после заливки с 00:00:00
будь то 3231 1302 1307 либо системные часы на мк
я не размышляю, а говорю как есть. флпрог не использует библиотеки для часов.
и по факту если часы 1307 сбросить (поменять батарейку или вообще без нее) то часы не запустятся,
будут секунды на 80., пока не введешь в них адекватные данные. С 3231 такого нет, они стартуют с 0.
DS1307 как запустить ?
Добавлено: 18.02.2024{, 09:54}
montirovka
fefar51702, проверьте, это работает? Если работает то фото можно что у вас на экране 1601.
DS3231 и без батарейки работает.
часы.jpg (4.54 КБ) 505 просмотров
DS1307 как запустить ?
Добавлено: 18.02.2024{, 10:14}
rw6cm
montirovka,
Речь конкретно про 1307. С 3231 нет проблем.
Скорей всего есть нюансы между этими часами, а флп использует один и тот же код для них.
DS1307 как запустить ?
Добавлено: 18.02.2024{, 10:25}
montirovka
В FLProg ткните 1307. Неужели сложно? Или ошибка выскакивает?
Ниже под DS1307.
Если добавить настройку секунд к вашему проекту (то что предлагал постами выше),
то часы начнут нормально работать.
а так:
По факту достаточно установка только секунд в 0, чтобы они стали нормально работать
DS1307 как запустить ?
Добавлено: 18.02.2024{, 11:50}
OLGA
может поможет.
DS1307 как запустить ?
Добавлено: 18.02.2024{, 12:38}
rw6cm
fefar51702,
Можно один раз сбросить секунды и они работают без проблем до замены батарейки или нештатного глюка
Как вариант можно один раз при включении питания проверять не больше ли 60 значение секунд,
если больше сбрасывать на ноль. тогда можно не беспокоится о батарейке.
2024_02_18indow.png (8.57 КБ) 427 просмотров
DS1307 как запустить ?
Добавлено: 18.02.2024{, 20:18}
fefar51702
кстати да после загрузки 00:00:80
если пнуть установку то начинают тикать от 00:00:00
странно но раньше же они сразу у меня начинали работать от 00:00:00 вроде как иначе я бы заметил что они стоят на месте
или китайцы с батарейкой присылали вставленой не помню уже