Посоветуйте с выбором контроллера времени - Real-Time Clock
- savage
- Нашел транзистор. Понюхал.
- Сообщения: 187
- Зарегистрирован: Пн дек 17, 2007 14:06:09
- Откуда: Саранск
Вот тебе схема от Максима. Как раз на конденсаторе
http://www.maxim-ic.com/images/appnotes/3449/3449Fig02.pdf
http://www.maxim-ic.com/images/appnotes/3449/3449Fig02.pdf
savage писал(а):Затем что Vcc2 и есть питание. А Vcc1 РЕЗЕРВНОЕ питание. Разработчик ИМЕЕТ ПРАВО потребовать от пользователей обязательно подключать Vcc1. А устройство ПИТАТЬ с Vcc2.
Попробуй включить питание с Vcc2, На Vcc1 можеш поставить свой любимый конденсатор.
Vcc2 подача тока для заряда!
Имеет но не говорит!
Если подключить так - пожгёшь мс!
- savage
- Нашел транзистор. Понюхал.
- Сообщения: 187
- Зарегистрирован: Пн дек 17, 2007 14:06:09
- Откуда: Саранск
Схему посмотрел?
Тебя наверно смутило, что для питания используется вывод 1, а не 8. У даласа много таких приколов.
Кстати забыл. Вот сама статья:
http://www.maxim-ic.com/appnotes.cfm/an_pk/3449
Тебя наверно смутило, что для питания используется вывод 1, а не 8. У даласа много таких приколов.
Кстати забыл. Вот сама статья:
http://www.maxim-ic.com/appnotes.cfm/an_pk/3449
- savage
- Нашел транзистор. Понюхал.
- Сообщения: 187
- Зарегистрирован: Пн дек 17, 2007 14:06:09
- Откуда: Саранск
О! Еще нашел!
Про большой конденсатор вместо резервной батареи:
http://www.maxim-ic.com/appnotes.cfm/an_pk/3517
Извиняюсь за лишние посты
Про большой конденсатор вместо резервной батареи:
http://www.maxim-ic.com/appnotes.cfm/an_pk/3517
Извиняюсь за лишние посты
Re: Посоветуйте с выбором контроллера времени - Real-Time Cl
решил не создавать новую тему, поскольку имею очень похожую проблему. Собрал простейшие часики на DS1307 - по даташиту - кварц, батарейка, I2C через резисторы к питалову подтянуты, общаюсь с часами через мегу16. Проблема в следующем - при записи в часы времени и даты записывается только время и год, а день недели, число и месяц записываются в единицу. При этом переход на следующее число не осуществляется, время переходит, а дата так и остается 1 января текущего года. Прям день сурка...
Думал, чип битый. Сегодня был в командировке, купил другой - явно из другой партии, но проблема с ним точно такая же. Что может быть не так? Может, какие-то подводные камни есть? Может бит какой надо уронить/поднять? Весь даташит перелопатил - ничего не нашел
Думал, чип битый. Сегодня был в командировке, купил другой - явно из другой партии, но проблема с ним точно такая же. Что может быть не так? Может, какие-то подводные камни есть? Может бит какой надо уронить/поднять? Весь даташит перелопатил - ничего не нашел
Re: Посоветуйте с выбором контроллера времени - Real-Time Cl
Вся запара, что была у меня, оказалась в том.
Что CV AVR при компиляции не правильно или вообще ошибочно,
подключает библиотеки, особенно BCD Conversion Functions.
Формат записи в регисты МС RTC в BCD (кодировка - в одном 8-ми битном слове(байт такой), два 4-х битных байта, так действительно удобней и проще записывать(реализовать аппаратно) дату и время).
А при компиляции сперва идёт обращение к ds1302.h из неё подключается bcd.h, а там
bcd2bin и bin2bcd.
И вот когда в реалии все эти кащеевы яйца с иголками, начинают переводить из не обычного формата в обычный или на оборот (bcd to bin или bin -> bcd). У меня начинались отказы.
Ну например пишешь 23:59 а там 11:59 (ну допустим) и через минуту ни чило, не дата не сменяется.
Или вообще первый бит с последним перепутан.
У меня в велокомпе это расписано же, было.
----------
это было с Атмегой 128, на старом компе.
щаз на новом ПК и софте с Атмегой 8 всё удачно, хотя тоже кое чего дописал.
cv avr стоит в корне, по латыни.
Что CV AVR при компиляции не правильно или вообще ошибочно,
подключает библиотеки, особенно BCD Conversion Functions.
Формат записи в регисты МС RTC в BCD (кодировка - в одном 8-ми битном слове(байт такой), два 4-х битных байта, так действительно удобней и проще записывать(реализовать аппаратно) дату и время).
А при компиляции сперва идёт обращение к ds1302.h из неё подключается bcd.h, а там
bcd2bin и bin2bcd.
И вот когда в реалии все эти кащеевы яйца с иголками, начинают переводить из не обычного формата в обычный или на оборот (bcd to bin или bin -> bcd). У меня начинались отказы.
Ну например пишешь 23:59 а там 11:59 (ну допустим) и через минуту ни чило, не дата не сменяется.
Или вообще первый бит с последним перепутан.
У меня в велокомпе это расписано же, было.
----------
это было с Атмегой 128, на старом компе.
щаз на новом ПК и софте с Атмегой 8 всё удачно, хотя тоже кое чего дописал.
cv avr стоит в корне, по латыни.
простое чмо, выдумщик
Re: Посоветуйте с выбором контроллера времени - Real-Time Cl
ds1307 совместно с mcs51(intel/atmel) + на ассемблере собственные программки - никаких проблем, одна из "недокументированных" возможностей - чтение по заранее произвольно заданному адресу. Питание как резервной батареей так и с помощью ионистора...
Иногда и своими мозгами пошевелить не помешает - библиотеки хороши для лентяев и стандартных скороиспеченных решений
В процессе эксплуатации на "чужом" оборудовании попадалось штучки 4 с неисправной матрицей календаря - сбой перевода часов в какой-нибудь день года, но их программы мне неизвестны - сменил и жди год с момента запуска для полной проверки
Иногда и своими мозгами пошевелить не помешает - библиотеки хороши для лентяев и стандартных скороиспеченных решений
В процессе эксплуатации на "чужом" оборудовании попадалось штучки 4 с неисправной матрицей календаря - сбой перевода часов в какой-нибудь день года, но их программы мне неизвестны - сменил и жди год с момента запуска для полной проверки
Re: Посоветуйте с выбором контроллера времени - Real-Time Cl
А при чем тактовая для I2C?
ds1307 хоть до полного останова на шинах sda/scl лишь бы не выше максимально возможной по datasheet
ds1307 хоть до полного останова на шинах sda/scl лишь бы не выше максимально возможной по datasheet
Re: Посоветуйте с выбором контроллера времени - Real-Time Cl
Не хочю создавать новую тему . Нужна помощ с ds1302. Микросхема выдает неадыкватные результаты.
Контроллер Мега8 8Мг. CAVR 2,5,03 библиотека стандартная ds1302 , результаты вывожу на ЛЦД и сом порт.
Поменял 6 микросхем из 2 разных партий. Так же менял 2 меги. Пробовал неоригинальные ds1302 драивера , разные скорости меги. Ничего непомогает , В протеосе все работает нормально. Программа из хелпа.
rtc_init(0,0,0);
rtc_set_time(12,0,0); /* set time 12:00:00 */
rtc_set_date(1,2,12); /* set date 1/02/2012 */
lcd_gotoxy(0,0);
sprintf(display_buffer,"Time: %2d:%02d:%02d\n",hour,minute,sec);
lcd_puts(display_buffer);
puts(display_buffer);
lcd_gotoxy(0,1);
sprintf(display_buffer,"Date: %2d/%02d/%d",day,month,2000+year);
lcd_puts(display_buffer);
puts(display_buffer);
delay_ms(1000);
Результат такой:
Причем смена минуты происходит как положенно через 60 сек. Почему результат времени и даты так изкаверкан ? Буды очень благодарен за любую помощ.
Time: 1:00:00<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:01<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:01<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:81<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:00<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:01<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:81<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:83<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:00<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:01<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:00<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:01<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:01<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:41<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:00<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:01<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:41<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:43<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:04<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:09<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:00<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:01<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:01<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:41<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:00<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:01<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:41<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:43<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:00<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:01<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:08<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:11<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:09<LF><LF>Date: 1/01/2001<LF>
Контроллер Мега8 8Мг. CAVR 2,5,03 библиотека стандартная ds1302 , результаты вывожу на ЛЦД и сом порт.
Поменял 6 микросхем из 2 разных партий. Так же менял 2 меги. Пробовал неоригинальные ds1302 драивера , разные скорости меги. Ничего непомогает , В протеосе все работает нормально. Программа из хелпа.
rtc_init(0,0,0);
rtc_set_time(12,0,0); /* set time 12:00:00 */
rtc_set_date(1,2,12); /* set date 1/02/2012 */
lcd_gotoxy(0,0);
sprintf(display_buffer,"Time: %2d:%02d:%02d\n",hour,minute,sec);
lcd_puts(display_buffer);
puts(display_buffer);
lcd_gotoxy(0,1);
sprintf(display_buffer,"Date: %2d/%02d/%d",day,month,2000+year);
lcd_puts(display_buffer);
puts(display_buffer);
delay_ms(1000);
Результат такой:
Причем смена минуты происходит как положенно через 60 сек. Почему результат времени и даты так изкаверкан ? Буды очень благодарен за любую помощ.
Time: 1:00:00<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:01<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:01<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:81<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:00<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:01<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:81<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:83<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:00<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:01<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:00<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:01<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:01<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:41<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:00<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:01<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:41<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:43<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:04<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:09<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:00<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:01<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:01<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:41<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:00<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:01<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:41<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:43<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:00<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:01<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:08<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:11<LF><LF>Date: 1/01/2001<LF>
Time: 1:00:09<LF><LF>Date: 1/01/2001<LF>
-
phanis
- Вымогатель припоя
- Сообщения: 513
- Зарегистрирован: Сб фев 19, 2011 18:04:08
- Откуда: Татарстан, пос. Актюбинский
- Контактная информация:
Re: Посоветуйте с выбором контроллера времени - Real-Time Cl
Пытался сделать часы, исходник без библиотек, по даташиту делал, и проект в протеусе .Может кому то и пригодится чтение и запись в DS1307/