DS1307 - точность хода

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

DS1307 - точность хода

Сообщение ploop »

Собрал часы на основе сабжа.
Бегут более чем на 2 секунды в сутки. Объяснение одно - нужно подобрать кварц. Из трёх штук, что у меня были на 32768 бегут со всеми, чуть больше или меньше, но всё равно более 1,5-2 секунд за сутки.
Друг, работающий в сервисе по обслуживанию ККМ подтвердил: почти во всех кассовых аппаратах часы бегут. Есть исключения, но единицы.

Какие можно придумать варианты решения проблемы без поиска "правильного" кварца? Программную коррекцию? Тут некоторые сложности возникают, с часов можно считать только целые значения секунд, а не доли, так же и коррекцию можно проводить только на целую часть. Нужен какой-нибудь хитрый алгоритм, который засекает изменение секунды, отсчитывает задержку, и записывает его же, либо следующее значение.

Может есть способ проще?

зы: конденсаторы на кварц не предлагайте, от лукавого это...
Аватара пользователя
Psych
Опытный кот
Сообщения: 848
Зарегистрирован: Ср мар 02, 2011 07:47:39
Откуда: Уфа

Re: DS1307 - точность хода

Сообщение Psych »

Может быть эта микруха попрет с кварцем 1048576 Гц (1:32)? Но кондеры подобрать придется, зато точность повысится. Ну или как вариант внешний генератор на 32768.
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Re: DS1307 - точность хода

Сообщение ploop »

Попереть-то может и попрёт, но дальше-то что? Это часы реального времени, т.е. дают время, дату, дни недели, с учётом всех поправок (число дней в месяце и т.д.). А теперь представь, что это дело запустится в форсаже х32 :)
Что с этими данными делать?

Внешние делители и генераторы не применимы. Я ставил эту микросхему ради одного: отсчёт времени при долгих перебоях с питанием. Иначе просто хватило-бы одного МК, и с коррекцией не было бы проблем.
Аватара пользователя
Danko
Сверлит текстолит когтями
Сообщения: 1287
Зарегистрирован: Пн окт 13, 2008 11:45:54
Откуда: РФ, Крым, г.Бахчисарай
Контактная информация:

Re: DS1307 - точность хода

Сообщение Danko »

в M41T56 есть специальный регистр для коррекции, она по ногам и по регистрам совмеcтимама с DS1307 и ее тоже ставят в кассовые аппараты.
Первое, что привлекает в программировании, объяснить просто: ты говоришь компьютеру что то сделать, и он это делает. Безошибочно. Всегда. Без возражений.
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
Аватара пользователя
Psych
Опытный кот
Сообщения: 848
Зарегистрирован: Ср мар 02, 2011 07:47:39
Откуда: Уфа

Re: DS1307 - точность хода

Сообщение Psych »

ploop писал(а):Попереть-то может и попрёт, но дальше-то что? Это часы реального времени, т.е. дают время, дату, дни недели, с учётом всех поправок (число дней в месяце и т.д.). А теперь представь, что это дело запустится в форсаже х32 :)
Что с этими данными делать?

Заводим дополнительные часы(переменные) на мк. Как только время от RTC прибавилось на 32 инкрементируем доп часы. Ну а вот календарь продумать надо. Мб и по какой-то формуле можно вычислить, ну накрайняк дату полностью возложить на мк. Хотя функционал такой DS --- выдавать точные тики и все.
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Re: DS1307 - точность хода

Сообщение ploop »

в M41T56 есть специальный регистр для коррекции, она по ногам и по регистрам совмеcтимама с DS1307 и ее тоже ставят в кассовые аппараты.

Где бы её найти... у друга спросить? :)

) на мк. Как только время от RTC прибавилось на 32 инкрементируем доп часы. Ну а вот календарь продумать надо. Мб и по какой-то формуле можно вычислить, ну накрайняк дату полностью возложить на мк.

Если возложить на МК, он не будет считать без питания.
sergo123
Родился
Сообщения: 15
Зарегистрирован: Чт апр 22, 2010 14:16:06

Re: DS1307 - точность хода

Сообщение sergo123 »

а что в пдф-ке про кварц пишется, может они применяют в сборе с конденсаторной обвязкой, так можно и внешние конденсаторы навесить на обычный кварц?
Аватара пользователя
Psych
Опытный кот
Сообщения: 848
Зарегистрирован: Ср мар 02, 2011 07:47:39
Откуда: Уфа

Re: DS1307 - точность хода

Сообщение Psych »

ploop писал(а):Если возложить на МК, он не будет считать без питания.

ААА...ну тогда не вариант :dont_know:

sergo123 писал(а):а что в пдф-ке про кварц пишется, может они применяют в сборе с конденсаторной обвязкой.

В DS уже стоит 12.5 пф.

Хотя я помнится подбирал на часовой конденсаторами очень точно 32768.
Аватара пользователя
D.VOVA
Опытный кот
Сообщения: 764
Зарегистрирован: Вт окт 27, 2009 21:27:21
Откуда: Ульяновск

Re: DS1307 - точность хода

Сообщение D.VOVA »

С обоих концов кварца на общий провод подвесь конденсаторы NP0 (5....27) пФ. Конкретный номинал подбирается под конкретный кварц. Мне удалось получить точность хода до единиц секунд за год.
Аватара пользователя
Dmitry Dubrovenko
Поставщик валерьянки для Кота
Сообщения: 2349
Зарегистрирован: Вс янв 09, 2011 16:51:39
Откуда: Санкт-Ленинград
Контактная информация:

Re: DS1307 - точность хода

Сообщение Dmitry Dubrovenko »

ploop писал(а):Если возложить на МК, он не будет считать без питания.
Будет, будет.
Две недели устроит? :wink:

Кстати, я что-то не понял насчёт конденсаторов.
Их необходимо устанавливать с кварцем ОБЯЗАТЕЛЬНО.
Иначе как-раз и будет офигенная погрешность (если вообще запустится).
ICQ нет, и, в ближайшее время, не будет.
Vov123
Опытный кот
Сообщения: 804
Зарегистрирован: Чт мар 12, 2009 16:31:05

Re: DS1307 - точность хода

Сообщение Vov123 »

Отнимай эти две секунды ежесуточно,допустим в 00ч00мин02сек,делов то.
Аватара пользователя
Engineer_Keen
Друг Кота
Сообщения: 3868
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Re: DS1307 - точность хода

Сообщение Engineer_Keen »

Vov123 писал(а):Отнимай эти две секунды ежесуточно,допустим в 00ч00мин02сек,делов то.

Я тоже хотел предложить, но не прокатит, потому что
ploop писал(а):Если возложить на МК, он не будет считать без питания.

А раз
конденсаторы на кварц не предлагайте

то по моему задача решения не имеет :)))
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Re: DS1307 - точность хода

Сообщение ploop »

Кстати, я что-то не понял насчёт конденсаторов.
Их необходимо устанавливать с кварцем ОБЯЗАТЕЛЬНО.
Иначе как-раз и будет офигенная погрешность (если вообще запустится).

Речь идёт не о контроллере, а о DS1307. За ссылку спасибо, интересное решение.

С обоих концов кварца на общий провод подвесь конденсаторы NP0 (5....27) пФ. Конкретный номинал подбирается под конкретный кварц. Мне удалось получить точность хода до единиц секунд за год.

В даташите ничего про это не пишут. Хотя есть ссылка на документ "Application Note 58, "Crystal Considerations with
Dallas Real-Time Clocks" Ша поищу, почитаю.

Отнимай эти две секунды ежесуточно,допустим в 00ч00мин02сек,делов то.

Ну это первое, что в голову пришло. Так и хотел сделать, прежде чем задать вопрос, но хотелось бы поуниверсальней вариант...
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Re: DS1307 - точность хода

Сообщение ploop »

Я тоже хотел предложить, но не прокатит, потому что
ploop писал(а):
Если возложить на МК, он не будет считать без питания.

В этом случае без питания не будет работать коррекция, всего лишь. Это разные вещи.
Аватара пользователя
Engineer_Keen
Друг Кота
Сообщения: 3868
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Re: DS1307 - точность хода

Сообщение Engineer_Keen »

ploop писал(а):В этом случае без питания не будет работать коррекция, всего лишь. Это разные вещи.

Под "счетом" я имел ввиду коррекцию, просто неправильно выразился.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15547
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: DS1307 - точность хода

Сообщение BOB51 »

используй современные ИС с функцией коррекции хода в энергонезависимом режиме (чего-то было у maxim-dallas и ramtron) :shock:
или слепите самодел на каком-нибудь 8-лапом PICе, имеющем режим внешнего кварца 32768 и микропотребление (pic12f629 к примеру) с интерфейсом DS1307 :cry:
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Re: DS1307 - точность хода

Сообщение ploop »

Итак, вот что пишется в этом манускрипте:

The following are the most common scenarios that cause a crystal-based RTC to run fast.
1) Noise coupling into the crystal from adjacent signals. This problem has been extensively covered
above. Noise coupling usually causes an RTC to be grossly inaccurate.
2) Wrong crystal. An RTC typically runs fast if a crystal with a specified load capacitance (CL) greater
than the RTC-specified load capacitance is used. The severity of the inaccuracy is dependent on the
value of the CL. For example, using a crystal with a CL of 12pF on an RTC designed with a 6pF CL
causes the RTC to be about 3 to 4 minutes per month fast.

--- примерный мой корявый перевод ---
Ниже приведены наиболее распространённые условия, при которых RTC на кварцах бегут.
1) Помехи. Эта проблема много раз освещалась, и может привести к тому, что ход RTC будет совершенно не соответствовать действительности.
2) Неправильный кварц. Обычно RTC бегут, если у используемого кварца емкостная нагрузка больше, чем указана для данного типа RTC. Например, поставили кварц с CL 12pF, а микросхема рассчитана для кварца на 6pF.

----------
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Re: DS1307 - точность хода

Сообщение ploop »

или слепите самодел на каком-нибудь 8-лапом PICе, имеющем режим внешнего кварца 32768 и микропотребление (pic12f629 к примеру) с интерфейсом DS1307

Тогда уж и полностью часы на нём. Фишка сделать из того, что есть, а не как надо :)
Аватара пользователя
Psych
Опытный кот
Сообщения: 848
Зарегистрирован: Ср мар 02, 2011 07:47:39
Откуда: Уфа

Re: DS1307 - точность хода

Сообщение Psych »

Ну рас не хотите делать коррекцию и вас мучает совесть что часы как бы идут точно, но на самом деле только их корректируете--тогда частотомер в лапы и пачку хороших кондеров. Не все кварцы одинаково полезны, не все будут идти точно при встроенных 12.5 пф.
Аватара пользователя
ploop
Модератор
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Re: DS1307 - точность хода

Сообщение ploop »

Почему не хочу? Хочу. Просто интересно разобраться в вопросе: что лучше, коррекция, кондёры?

Кстати, по даташиту под кварц полагается земляной полигон, которого у меня нет. Он как раз около 10пФ даст... может в этом проблема?
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»