Честно говоря такое не проверял. С меня хватало обычной работы часов или использования ОЗУ. В принципе, обращение к регистрам DSки осуществлялось при запуске системы - затем тикали часики, организованные на регистрах МК или при изменении содержимого регистров часов. Сама DS является источником эталонных данных и/или тактового секунд- сигнала. Точность всего комплекта при таком подходе максимальна. При обмене с часиками (на время пересылки пакета данных) возможно там происходит временная блокировка счета или какие-то иные процессы - оттуда и накапливающаяся ошибка внутреннего содержимого самих часиков, а вот при коротких целевых обращениях - практически минимальные искажения. Но касается это только обмена с регистрами часов или обмен с ОЗУ также тормозит главные часы не проверял - использовался или режим часов или только ОЗУ как накопитель. Да и AT89C/S51 c приоритетным контроллером прерываний при программе на ассемблере совсем не ATmega8 - там возможности программного обмена и управления прерываниями гораздо лучше. Вот так выглядит типовая практическая схемка, неоднократно проверенная на макете:
а вот здесь вариант более позднего развития схемотехники, к сожалению, "замороженный" на уровне индикативного термометра: viewtopic.php?f=2&t=14123&start=80 В обеих случаях схема без особого труда переводится на ATmega8515 или ATmega162 благодаря полной совместимости по разводке корпусов МК, но программки будут уже другие. Кстати, вот еще на тему DS1307: viewtopic.php?f=20&t=46074
... Секундомер обычно не использовал (не обращал внимания - начальная загрузка делалась с секундами =0, а считывание не использовалось)... Трудно сказать какая там аппаратная организация - возможно имеют место ограничения, как например при обмене с 16-разрядными счетчиками у AVRок - "захват на лету" по секундомеру без предварительного останова счета даст ложные значения... ведь обмен также занимает некоторое время. Попробуй вариант останов- чтение -запуск. При загрузке обязательно останов-загрузка-запуск от старшего регистра к младшему Чего касательно аппаратного сброса МК и его влияния на DS... Только в том случае, если при начальной инициализации на линиях обмена появляется какой - либо "мусор" (опять же отличие в аппаратной реализации портов МК - у 51-й выход по сбросу=1, у AVR - изначально Z,а затем то, чегозадал программист... если с случайным выбросом Z-0-1...)
Нашел косяк-неправильная инициализация. Во время старта МК записывал 0х00 в регистр 0х00. Тем самым, кроме установки бита СН в 0 я очищал секунды. Переделал(если микросхема не запущена-запустить, иначе-ничего не делаем).
_________________ Steve Jobs. 1955-2011. Мы помним, как ты преобразовал наш мир....
Карма: 67
Рейтинг сообщений: 1071
Зарегистрирован: Чт сен 18, 2008 12:27:21 Сообщений: 20046 Откуда: Столица Мира Санкт-Петербург
Рейтинг сообщения:0 Медали: 1
У меня вопрос по DS1337, они с 1307 имеют одинаковые Timekeeper Registers. Регистр часов может работать как в 00-23, так и в 1-12 + АМ/РМ в зависимости от шестого бита. Изначально он в 0 или в 1?
UPD: сам же и отвечу. изначально в "0".
_________________ [ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Скажите плиииз: а нету ли на просторах интернета, ну авось завалялась, графическая библиотека аналоговых часиков. что бы я ей строчку со временем, а она мне нарисовала стрелки правильно.
Дорогие друзья! Коты. =) У меня малость идиотский вопрос по этим часам... Если без батарейки они у меня заработали (при подключении сопротивления на землю), то вот вопрос - А без кварца будут работать??? Или с другим кварцем любым?
Просто у меня сейчас под рукой больше нету нужного кварца, А запустить их хочется, пусть даже не на той частоте....
В том то и дело, что я не дома... =) Я на вахте в тайге во многих сотнях километров от ближайшего населенного пункта... =) А здесь у меня нихрена подходящего нет. Только если второй комп разобрать на запчасти. Но он работает и на нем рабочая программа стоит. так то, да, я бы не задавал такие вопросы, если бы был дома. ТАм и купить можно, да и валялась где-то у меня материнка дохлая. =)))
Эхх.... лучшее время для творчества - книжки почитать, самообразованием заняться, теоретических заготовочек понаписать... Мняааа... Вот тебе ссылочка: http://elektromehanika.org/ тама есть полное собрание изданий под общей серией МРБ, "в помощ радиолюбителю" и много других вкусностей...
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения