Страница 1 из 1

DS1307 ведет себя очень странно

Добавлено: Ср ноя 08, 2017 22:05:15
Junnichi
Всем доброго времени суток, недавно решил поковырять свои часы на ГРИ (мега8 и ds1307) в сторону улучшения точности и тут началось: подбирал дополнительные конденсаторы в контур кварца (сначала грешил на него), потом после проверки 10 кварцев 3 разных производителей и разных серий, наблюдается тенденция +6 сек/сутки.
Ну думаю ладно, может наводки, плата кривая, НО при питании от батарейки (новая) и с теми же разными кварцами, всегда уход +6...+8 сек/сутки. Поехал и купил кварц: Q0,032768-SMQ32SL-12,5-20-LF-Jauch (12,5pF, 20PPM), стоимость примерно 1.2$ ну думаю уже все равно, чисто ради эксперимента, но исход прежний.
Чем же именно проявляется странность поведения, кроме вечного ускорения, так это то, что DSка работает и без кварца :dont_know:
Да, считает она не время, ибо 1 секунда равна 12, но вроде ведь не должна работать без кварца :facepalm:
Поменял DS1307 на новую, ситуация та же - "+6 сек"...
В чем еще может быть магия, кроме батарейки, наводок и кривых кварцев? (пайка без флюса, а кварц даже без канифоли)

Re: DS1307 ведет себя очень странно

Добавлено: Ср ноя 08, 2017 22:15:56
Silvermonk
Корпус кварца заземлен? Кстати могут быть и наводки. Сталкивался с таким, когда рядом dc-dc преобразователь стоял. Стоило пересобрать на макетке по-другому и все становилось нормально.

Re: DS1307 ведет себя очень странно

Добавлено: Ср ноя 08, 2017 22:21:49
Junnichi
Сначала и заземлял, но потом проверил без основного питания (включена только DSка от батарейки), результат всегда один, так что точно не наводки...уже думал собрать на отдельном куске, но смысл если на плате кроме нее всё и так отключено...
сейчас вот батарейку вытянул и 3 ногу на землю кинул, уже заметно, набежало +1сек

Re: DS1307 ведет себя очень странно

Добавлено: Ср ноя 08, 2017 22:23:01
Silvermonk
А какими конденсаторами обвязан кварц?

Re: DS1307 ведет себя очень странно

Добавлено: Ср ноя 08, 2017 22:26:29
Junnichi
Ну в принципе, после н-ного прочтения даташита, помнится что там внутренние кондеры подтянуты к земле, так что в дополнительных смысла нет. Пробовал присобачить регулировочный для подправки кварца, между 2 ногой и землей, испробовал от 0.5пФ до 22пФ, не помогло...параллельно кварцу - тоже не помогло

Re: DS1307 ведет себя очень странно

Добавлено: Чт ноя 09, 2017 23:27:08
Junnichi
Сегодня попробовал еще 2 кварца, тупо снял с обычных китайских часов и опять таки +6...+8 сек спешат в сутки. Я понимаю, ds1307 не относится к сверх точным rtc, но сколько инфы в и-нете прочитал, люди как-то получали разные результаты с разными кварцами, а тут - какой не поставь, а частота не меняется, такое вообще реально? DSки купленные из магазина, не на али, раньше там на брак не попадал :(

Re: DS1307 ведет себя очень странно

Добавлено: Пн ноя 13, 2017 12:54:05
BOB51
"часы на ГРИ"...
следовательно какой-то источник питания тех ГРИ (и помехи, возможно даже искровой или тихонько через пылючку влажную)...
Как вариант - отработать топологию монтажа RTC (возможно в полной статической экранировке).
Дополнительно к изучению:
какой алгоритм работы часов -
ВЕСЬ счет основан на прерываниях от RTC;
от RTC только начальная установка в момент включения, счет "внутренними ресурсами МК";
чего-нить иное...
:roll:
Ежли частоту в ДСке для энергонезависимого хода подстроить невозможно, то при счете "внутренними ресурсами" можно программно корректировать ход на время работы сетевого источника питания.
:roll:

Re: DS1307 ведет себя очень странно

Добавлено: Пт авг 14, 2020 18:06:34
Леоныч
Доброго, коллеги.
Попалась в ремонт штуковина с участием этого RTC.
Не вижу генерации на кварце, ни в батарейном режиме, ни в основном. (Ведущее устройство тоже не работает, но возможно из-за отсутствия обмена с RTC)
Судя по структурной схеме из даташита, генератор не отключаемый, и должен начинать работать тупо при наличии питания.
А вот не работает.
Подкинул несколько других кварцев - не генерит.
Купил сегодня модуль RTC с DS1307, та же история. Писать прошивку для МК, чтобы проверить его через цифру, пока лениво...
На срыв генерации от ёмкости щупа не похоже, да и этим же щупом я вижу генерацию даже в наручных часах.

Что-то делаю не так?

Re: DS1307 ведет себя очень странно

Добавлено: Пт авг 14, 2020 18:49:34
1en2
щуп через ёмкость подключали или "как обычно" ?...)))
иногда общий щупа можно на + посадить и генерация не срывается, а 10М щупа на общий её срывают...

Re: DS1307 ведет себя очень странно

Добавлено: Пт авг 14, 2020 19:25:21
Леоныч
Увы, по всякому пробовал. И с ёмкостью тоже...

Люди добрые! Кто имеет сие чудо, гляньте не кварце. Я и волшебное слово знаю. Пожалуйста...

Re: DS1307 ведет себя очень странно

Добавлено: Пт авг 14, 2020 21:53:29
1en2
тоже ничего на ней живого не вижу...DS3231 - генерит (но на выходе)....

Re: DS1307 ведет себя очень странно

Добавлено: Сб авг 15, 2020 06:25:02
do-vitas
И я по началу страдал не мог понять пока команду сет не выполнил ничего не шло.

Re: DS1307 ведет себя очень странно

Добавлено: Сб авг 15, 2020 07:32:18
musor
так мотор заводится с толкача надо пнуть пару раз подать питание и снять и снова падать при всунотой 2030

Re: DS1307 ведет себя очень странно

Добавлено: Сб авг 15, 2020 08:05:11
Самсусамыч
[uquote="Леоныч",url="/forum/viewtopic.php?p=3879182#p3879182"]Судя по структурной схеме из даташита, генератор не отключаемый, и должен начинать работать тупо при наличии питания.
А вот не работает.[/uquote]
Ещё как отключаемый:
Bit 7 of register 0 is the clock halt (CH) bit. When this bit is set to a 1, the oscillator is disabled. When cleared to a 0, the oscillator is enabled.
У DS1307 есть бит останова часов (clock halt - CH). Так вот если он в 1 – тактовый генератор выключен. При подаче питания, начальное состояние всех регистров не определено, поэтому рекомендуется устанавливать данный бит принудительно в 0 при инициализации. Замечено из практики – при смене батарейки при отключенном питании (или когда DS1307 новый) данный бит всегда слетает и требует принудительной установки.

Re: DS1307 ведет себя очень странно

Добавлено: Сб авг 15, 2020 10:23:50
Леоныч
Спасибо, о добрые люди. И да продлит Всевышний ваши годы.
Bit 7 of register 0 is the clock halt (CH) bit. When this bit is set to a 1, the oscillator is disabled. When cleared to a 0, the oscillator is enabled.
Вот говорил же мне Василий Иванович: "Книжки, Петька, всегда до конца нужно дочитывать..."
:)