Перейти к содержанию
    

Мегу48 и часовой кварц + программная коррекция и синхронизация с часами компа по 232.

А кто будет синхронизировать комп? Если нет выхода в интет, то это бесполезно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А кто будет синхронизировать комп? Если нет выхода в интет, то это бесполезно.

Это верно, но вопрос задан на этом форуме, а здесь его можно задать только имея выход в интернет, т.о. комп автора вопроса имеет выход в интернет де-факто ;)

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Привет!

Хочу сделать простые часы на базе Attiny 2313 с внешним задающим генератором.

Что посоветуете в качестве задающего генератора?

 

Идея такая

 

К процу стандартно подключен кварц. Кварц может быть на любую частоту(н.п. 8 Mhz)

 

1. Разрешаешь прерывания по таймеру

2. В прерывании увеличиваешь "первую" глобальную переменную, если достигла определенного значения, сбрасываешь ее в ноль и увеличиваешь "вторую" переменную. ( т.е. надо добиться увеличения второй переменной раз в секунду)

3. В цикле основной программы проверяешь "вторую" переменную, если изменилась значит прошла секунда. ( н.п. отображаешь на экране)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Извините за вопрос,но вы сами поняли,что написали?

В каком-то прерывании от таймера(вы в курсе,что их у таймера несколько?)инкрементируем какую-то пе-

ременную,затем по переполнении первой вторую.Тип не важен,главное,шоб было две.

Имхо,или с дозой переборщили,или сорт травы надо менять.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Что то тема, как обычно впрочем, плавно перетекла от выбора типа генератора к особенностям реализации алгоритма... :) . По поводу повышения точности часов, из предложенных вариантов развеселил вариант синхронизации часов с ПК, который в свою очередь синхронизирован с сервером времени. И это получатся простые часы!? Вы бы еще модуль Ethernet предложили бы в них запихать, чтобы без компа обойтись.

ИМХО предложенный вариант с програмной коррекцией хода часов - самое ПРОСТОЕ и дешевое решение добиться приемлемой точности, без применения внешних навороченных генераторов. Очень, кстати, нравилась мне эта фишка в минской "Электронике", правда больше нигде такого я в наручных часах не встречал, или других производителей проблема точности не так волновала?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По поводу повышения точности часов, из предложенных вариантов развеселил вариант синхронизации часов с ПК, который в свою очередь синхронизирован с сервером времени. И это получатся простые часы!?

Конечно простые. Из железа - только МК, даже кварц может не понадобиться. Все делается софтом.

 

Да и софт простой - раз в месяц подключить часы к компу для синхронизации,

в часах сравнить текущее время с синхронизируемым - получить дельту ухода за период, привести ее к часам или суткам (смотря что будет удобнее) и делать автоматическую программную коррекцию ежечасно(ежедневно). Полагаю что даже на внутреннем осцилляторе tiny2313 даст вполне вменяемую точность при таком подходе. И не надо будет пользователю задумываться о том, на сколько ms/us надо подводить часы.

 

Вы бы еще модуль Ethernet предложили бы в них запихать, чтобы без компа обойтись.

232C (3 провода) для вас сложен? :(

 

ИМХО предложенный вариант с програмной коррекцией хода часов - самое ПРОСТОЕ и дешевое решение добиться приемлемой точности

Не далеко смотрите. Что мешает с компа послать часам по 232-му текущее время. Параметры коррекции часы и сами расчитать смогут.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Делал как-то 2 года назад часы на PIC16F84. Работают до сих пор, но отстают на минуту за несколько суток.

 

АTMEGA8 + часовой кварц и в результате уход - секунда за несколько суток. даже конденсаторы на кварц не нужны, они внутри контроллера, только нужно включить CKOPT

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вопрошающий должен сообщить требуемую точность хода часов в ppm, секундах в неделю и т.п. Возможно, его устроит RC генератор :) или только квантовый стандарт :) , без ТЗ никто не скажет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Веселенькие предложения для простеньких часиков на кухню ! :beer:

 

Надо:

- взять хороший кварц (10ppm);

- к нему подстроечные конденсаторы 10-30 пф.

- завести этот кварц с желаемым контроллером;

- сформировать на любом из портов импульсы с частотой, строго пропорциональной тактам генератора;

- по частотомеру, обладающему точностью не хуже 0.1 ppm конденсаторами выставить расчетную частоту на упомянутом порту.

 

Реально получен уход менее 1 сек/сутки (меньше минуты в месяц), в комнатных условиях (когда дрейф температуры не большой и циклический). Кварц 8Мгц, 10ppm, Atmega8.

 

Вместо частотомера можно использовать КВ приемник на 10 или 15 Мгц.

 

Что касается вещательных радиостанций, то сигналы точного времени можно получить только от

р-станции "Маяк", да и то в Москве, да и то не уверен, что еще можно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А зачем столько геморроя - компьютер, контроллер, подключение-синхронизация? ЧАСЫ НА ЛЮБОМ КОМПЕ НАРИСОВАНЫ. Если есть интернет (а он есть) то идут точно. На змнее время сами скоро перейдут.

 

... Очень, кстати, нравилась мне эта фишка в минской "Электронике", правда больше нигде такого я в наручных часах не встречал, или других производителей проблема точности не так волновала?

Да, очень хорошо было сделано. Главное, очень дешёвое решение в смысле программирования при совершенно понятном юзер интерфейсе. ИМХО дл япростых часов - самое оно. Потому что (рискую влезть в психологию) домашние часы, которые не надо подводить годами - раздражают. Они не ошибаются. Они без греха. Они лучше Вас.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Реально получен уход менее 1 сек/сутки (меньше минуты в месяц), в комнатных условиях (когда дрейф температуры не большой и циклический). Кварц 8Мгц, 10ppm, Atmega8.
Если не врет моя логарифмическая линейка:), минута в месяц - это порядка 22 ppm. Обычный часовой кварц для обычных кварцевых часов :) дает порядка 30 ppm при 25С и долговременный дрейф 3-5 ppm в год. Пусть с температурным дрейфом будет 40 ppm. Это две минуты в месяц. По-моему, для простых часов нормально. Предложенная здесь DS3231, для сравнения, даст уход меньше 2 минут в год.

 

Интересно, в каких пределах емкостями можно перестраивать кварцевый генератор AVR с учетом ограничений на емкости? Пробовал кто-нибудь ставить варикапы? Интересно было бы попробовать подстраивать частоту, к примеру, tiny261 по температуре, чтобы выйти на 10 ppm в промышленном диапазоне.

 

Лет десять назад в Спектруме (IEEE) видел статью, так там студенты сделали часы с GPS. Запомнилось тем, что индикация была на газоразрядных лампах :lol:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

...Да и софт простой - раз в месяц подключить часы к компу для синхронизации,

в часах сравнить текущее время с синхронизируемым - получить дельту ухода за период, привести ее к часам или суткам (смотря что будет удобнее) и делать автоматическую программную коррекцию ежечасно(ежедневно)...

То есть вы предлагаете сделать часы зависимыми(пусть хотя бы частично) от каких либо внешних устройств? И где здесь простота? Проверить, на сколько уходят часы и без компа займет пару минут, зачем лишний геморрой? Да и не забывайте, что кроме программы контроллера, нужно еще и комповый софт написать (а это, как ни странно не все умеют :05: ).

232C (3 провода) для вас сложен? :(

до жути :biggrin: . Видите ли, у меня на компе нет СОМ портов, а переходники, заметно удорожают конструкцию, поэтому для общения своих устройств с компьютером пришлось выбрать USB HID...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добрые ночи. Все забыли о питании прибора говорить о точности

в месяц значит никогда не выключать часы.В реальности не выйдет

при обычном варианте. Если это решено то любой из вар. синхронизации

приемлем с авт. коррекцией

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Поставьте внешний RTC чип. Если нужна точность, можно DS3231. Или другой какой. Я не думаю, что тспользование генератора вместо RTC что-нибудь заметно сэкономит.

 

 

Вернулся я опять к этой теме. Буду ставить DS1307. Подскажите где можно подсмотреть программную релизацию интерфейса I2C на Си! :help:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вернулся я опять к этой теме. Буду ставить DS1307. Подскажите где можно подсмотреть программную релизацию интерфейса I2C на Си! :help:

i2c_avr.zip

 

Получите, что просили

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...