INDUCTION HEATING
http://induction.listbb.ru/

Дежурное питание RTC
http://induction.listbb.ru/viewtopic.php?f=19&t=6
Страница 1 из 1

Автор:  vassabi [ 15 фев 2013, 15:14 ]
Заголовок сообщения:  Дежурное питание RTC

Суть задачи:
Есть RTC от Maxim DS1337, вот ДШ http://datasheets.maximintegrated.com/e ... S1337C.pdf
Опрашивается по шине I2C.
В режиме работы с шиной ей нужно 5В, без работы с шиной 1,3-1,8В.
Т.е., как и у всех RTC, предполагается наличие дежурного питания, но Maxim почему-то решил не афишировать данное схемотическое решение...
Я предполагаю подключаться вот так, но есть подозрения, что кварц будет сбиваться из-за конечного времени открытия диода...
У кого есть опыт/мысли по этому поводу?
з.ы. я бы проверил это в железе, но кварца с таким номиналом под рукой не оказалось, а с другим не хочет заводится...

Вложения:
ds1337_1.jpg
ds1337_1.jpg [ 20.59 Кб | Просмотров: 128 ]

Автор:  vassabi [ 15 фев 2013, 15:37 ]
Заголовок сообщения:  Re: Дежурное питание RTC

Может лучше вот так?

Вложения:
ds1337_2.jpg
ds1337_2.jpg [ 22.27 Кб | Просмотров: 113 ]

Автор:  Sergey [ 15 фев 2013, 15:40 ]
Заголовок сообщения:  Re: Дежурное питание RTC

Я думаю с конденсатором должно быть получше. А в чем проблема найти такой кварц, ИМХО их везде навалом.

Автор:  vassabi [ 15 фев 2013, 15:47 ]
Заголовок сообщения:  Re: Дежурное питание RTC

Цитата:
А в чем проблема найти такой кварц, ИМХО их везде навалом.
:D Проблема в том, что припекло вчера поздно вечером, а сегодня пятница и не факт, что мне удастся выбраться в магазин за кварцем.
Если разживусь сегодня кварцем, вечером буду испытывать - отпишусь...
Думаю, что все не так просто как на первый взгляд, т.к. кроме конечного времени открытия диода, есть еще время выхода кварца на рабочий режим, а оно уже исчисляется сотнями мкс!
В общем если кварц собъется, время будет уезжать не слабо, а если sleep/wake-up будет происходить 1000 раз в сутки?..

Автор:  Sergey [ 15 фев 2013, 15:51 ]
Заголовок сообщения:  Re: Дежурное питание RTC

Ясно, я такие кварцы раньше из старых материнских плат выпаивал десятками :mrgreen:

Автор:  vassabi [ 15 фев 2013, 16:00 ]
Заголовок сообщения:  Re: Дежурное питание RTC

В старых материнках они были размерами с небольшой хромированный гроб! :mrgreen:
Я вот последние кварцы к МК прикручивал что-то вроде 3,2х1,8мм (GEYER делает), думал намучаюсь - не, завелся с пол-пинка, емкости по 5пФ...

Автор:  Sergey [ 15 фев 2013, 16:02 ]
Заголовок сообщения:  Re: Дежурное питание RTC

Да, у меня пару есть таких, правда ставить вроде некуда такие мелкие, полно и в обычном корпусе.

Автор:  derba [ 15 фев 2013, 17:12 ]
Заголовок сообщения:  Re: Дежурное питание RTC

Я бы так поставил, есть керамические SMD 1 мкф.
Изображение

Или даже так, что бы не шунтировал блок питания аккумулятор в выкл состоянии

Автор:  vassabi [ 15 фев 2013, 18:21 ]
Заголовок сообщения:  Re: Дежурное питание RTC

derba писал(а):
что бы не шунтировал блок питания аккумулятор в выкл состоянии
Дельное замечание, спасибо!
PMEG2005CT в SOT23 как раз имеет два диода на корпус :)

з.ы. кварц удалось только что купить, ща буду пробовать...

Автор:  Sergey [ 15 фев 2013, 22:34 ]
Заголовок сообщения:  Re: Дежурное питание RTC

Как успехи?

Автор:  vassabi [ 15 фев 2013, 23:07 ]
Заголовок сообщения:  Re: Дежурное питание RTC

Sergey писал(а):
Как успехи?
RTC завелась, опрашивается без проблем.
Там 16 регистров: из них два статус и управление, остальные время от (секнд до года) и два "будильника" с внешними прерываниями.
Сижу пишу код, чтоб запрограмить время и вывести на LCD.
Гемор, т.к. через эти же регистры RTCха и программируется...
Закончу - начну отписываться по поводу результатов схемы включения дежурного питания.

Автор:  Sergey [ 15 фев 2013, 23:14 ]
Заголовок сообщения:  Re: Дежурное питание RTC

мне вот эти понравились http://www.nxp.com/documents/data_sheet/PCF2129T.pdf Там встроенный термокомпенсированный кварц и два интерфейса I2C и SPI. Правда корпус великоват, зато довольно паябельный (от слова паять :mrgreen: ) :)

Автор:  vassabi [ 15 фев 2013, 23:35 ]
Заголовок сообщения:  Re: Дежурное питание RTC

Цитата:
мне вот эти понравились
Где ты раньше был? А я с кварцем заморачивался.
Да, корпус великоват SO16...

===============
Я их у нас в продаже пока не вижу...

===============
Есть только PCF2123TS, у нее только SPI на борту...
Но NXP конечно, как всегда, молодцы - ДШ развернут по максимуму!

Автор:  Sergey [ 15 фев 2013, 23:40 ]
Заголовок сообщения:  Re: Дежурное питание RTC

Мне они в виде бесплатных семплов достались.

Автор:  vassabi [ 15 фев 2013, 23:42 ]
Заголовок сообщения:  Re: Дежурное питание RTC

Из первых неприятностей с DS1337
Если по какой-то причине Мастер упал (по собаке например) не успев выдать в шину STOP, DS1337 продолжает его ждать до холодного рестарта, подвесив всю шину.
Рестарт Мастера естественно уже тоже не помогает.
Наверное есть какое-то решение, но я пока не допер как это сделать...

Автор:  vassabi [ 16 фев 2013, 05:37 ]
Заголовок сообщения:  Re: Дежурное питание RTC

Схема резервного питания работает на ура, спасибо derba!
По прежнему не могу разобраться удержанием RTCом шины...
Наверное нужно таки пойти поспать Изображение Изображение

Автор:  vassabi [ 17 фев 2013, 18:17 ]
Заголовок сообщения:  Re: Дежурное питание RTC

Цитата:
Из первых неприятностей с DS1337
Уфф... разобрался :dance3:
Короче, в чем суть:
Официальная спецификация протокола I2C (v.2.1 от 2000г.) никак не регламентирует "способноть" ведомых устройств (Slave'ов) подвешивать линию SDA на шине.
Что есть очень прискорбно, т.к. производители Slave девайсов, слепо следуя указанной спецификаии, не удосужились организовать аппаратную обработку подобной ситуации!
По крайней мере у DS1337 такой обработки нет. Хотя, немного задумавшись, прихожу к выводу, что это и не нужно. Мастер должен уметь сбрасывать шину самостоятельно, но в протоколе это не предусмотрено.
Напомню, в чем дело:
Дабы не расписывать здесь работу протокола I2C, буду выражаться фигурально :pleasantry:
Мастер принимает данные от Слейва, в этот момент по какой-то причине происходит рестрт Мастера, Слейв в этот момент передавал 0 по SDA ожидая очередной импульс тактового сигнала (SCL), но не дождался - Мастер "упал"...
Т.к. Слейв, в данном случае RTC, имеет резервное питание, он беззаботно продолжает удерживать SDA на низком уровне, ожидая строб на SCL.
Мастер, "поднявшись", инициализирует свой порт MSSP и пытается создать условие START, но нарывается на конфликт шины (SDA = 0, SCL = 1) и уходит в режим ожидания...

Спецификация протокола в принципе регламентирует "разруливание" этих конфликтов (Arbitration), но только если конфликт возник между двумя Мастерами, а это не наш случай :negative:
Что делать?
Инет вразумительного ответа не дал.
Пришлось использовать научный метод - при помощи молотка и такой-то.... ну то есть метод достаточно топорный, но работает :blush:
Просто до инициализации порта MSSP, проверяем состояние вывода, который сидит на SDA, и если он равен 0, "стучим" 8 раз 1-0 в вывод, который сидит на SCL.
В процессе "стука" линия SDA и переходит в нужнй нам высокий уровень. После этого инициализируем порт MSSP и начинаем работу с ним.
Почму "стучать" 8 раз? Это совсем не прикол какой-то!
Как я говорил, когда произошел сбой, Слейв передавал байт данных в шину, т.е. 8 бит. И пока он не "выговорится", т.е. пока не отдаст в шину все 8 бит, линию SDA не отпустит, гад!
Вот мы и даем ему возможность "выговорится" после чего он (естественно не получив бит подтверждения ACK) отпускает SDA.
Я тут не расписывал нюансы управления портами для организации "стука" (сброса шины), если у кого трудности с этим - пишите.

Как-то так...

Автор:  vassabi [ 19 фев 2013, 23:24 ]
Заголовок сообщения:  Re: Дежурное питание RTC

Прояснился один положительный момент!
Новое поколение МК с аппаратной реализацией I2C уже может управлять временем удержания SDA линии на шине, опция называется "Selectable SDA hold times"
Радуюсь :clapping:

Автор:  ostap [ 05 апр 2013, 20:20 ]
Заголовок сообщения:  Re: Дежурное питание RTC

Может ето по проще будет ?
http://www.kosmodrom.com.ua/pdf/FM33256B-G.pdf

Автор:  vassabi [ 05 апр 2013, 22:04 ]
Заголовок сообщения:  Re: Дежурное питание RTC

Цитата:
Может ето по проще будет ?
Мне кажется вряд ли...
А в чем вы думаете будет проще?

Автор:  ostap [ 07 апр 2013, 23:25 ]
Заголовок сообщения:  Re: Дежурное питание RTC

Дежурное питание RTC - тема называеться так если я не ошибаюсь ?
там ето уже реализовано даже включаеться /заряд батареи - конденсатора/ выключаеться програмно
Изображение

Страница 1 из 1 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/