Часы на газоразрядных индикаторах

Что бы еще такого сделать?... Предлагайте! Обсудим все!!!
Ответить
Поставщик валерьянки для Кота
Сообщения: 2108
Зарегистрирован: Пт авг 29, 2008 16:28:19
Откуда: Киев

Сообщение Foks »

crazzian, я ассемблерный маньяк, посему увы :( Да и в моем индусском коде понять что-либо сложно :)) Да вообщем я бы и не стал писать на Си критичные ко времени выполнения вещи, а вот весь main() переписал бы на Си, давно хочу попробовать комбинировать асм/си код с помощью GCC, но пока что имею двухтысячный слабочитабельный исходник на асм.
Giggity giggity goo!
Реклама
Встал на лапы
Сообщения: 117
Зарегистрирован: Ср окт 10, 2012 07:11:04

Сообщение crazzian »

Apparatchik, Foks, спасибо буду пробовать.
По прерыванию выхода DS-ки увы не получится т.к. плата уже без этой цепи, а навесом посему то не хочется.
Реклама
Держит паяльник хвостом
Аватара пользователя
Сообщения: 908
Зарегистрирован: Вс май 23, 2010 13:55:42
Откуда: Украина, Александрия

Сообщение Apparatchik »

crazzian писал(а): По прерыванию выхода DS-ки увы не получится т.к. плата уже без этой цепи, а навесом посему то не хочется.
если мк тактируется от кварца то время можно щитать средствами мк, а с DS1307 синхронизировать при старте и например часа в три ночи.
«И всё-таки она вертится!»
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1288
Зарегистрирован: Пн апр 14, 2008 12:54:35
Откуда: Город ГЕРОЙ Ленинград

Сообщение Волосатый »

Я в часах с динамикой опрашивал часы примерно 20-50 раз в секунду, это чтоб не было заметных рывков в отображении времени. И да, частота шины повыше, чуть меньше максимальной для 1307, и все будет хорошо, если конечно нет помех на шине и она не будет заикаться. А в остальном уже ответили.

И кстати, на других RTC проверял, если частоту шины менять, то точность хода меняется немного, и когда часы работают от сети и от батарейки, точность тоже разная будет.
Опыт приходит сразу после того, как он был нужен...
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Поставщик валерьянки для Кота
Сообщения: 2108
Зарегистрирован: Пт авг 29, 2008 16:28:19
Откуда: Киев

Сообщение Foks »

20-50 раз - многовато, конечно. А без синхронизации рывки будут, но что-то можно попробовать сделать. К примеру, спустя 950 мс, читаем регистр секунд, пока не произойдет перехода секунды (читаем с интервалом 20 мс, например). После нескольких чтений, секунда перешла, тогда считываем весь блок, и далее цикл повторяем. Таким чудом, чтение будет происходить всего 3 (+/- 1) раз в секунду.

Хотя можно и 50 раз читать. Плохого, в принципе, ничего быть не должно. Разве что на один градус температура микросхемы вырастет :)

А лучше конечно проводом связь эту кинуть, красота сильно не постарадает. Да и вообще, странно делать финальную плату с первого раза. Отладка и доработка всегда нужна, надо было на макетке делать. Или эту плату пустить под отладку, а потом сделать еще одну. А то хотите одной п*пой на два стула сесть.
Giggity giggity goo!
Реклама
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1288
Зарегистрирован: Пн апр 14, 2008 12:54:35
Откуда: Город ГЕРОЙ Ленинград

Сообщение Волосатый »

Ну зачем же на два стула, нам и одного достаточно :)))
Мне вот сложно представить макетку с многоногим МК в tqfp, 6ю ИД1 3мя регистрами 595 в so-16 двумя регистрами 164 в so-14, 6ю анодными ключами в сот23 ))) Да и зачем? Достаточно всего лишь все продумать как следует, опираясь на свой или чужой опыт и сделать сразу как надо.
Foks писал(а):20-50 раз - многовато, конечно.
Два года тикают и ничего :) Я тогда особо не парился по этому поводу. А в след. часцах да, развел таки на прерывание с ноги где 1Гц, по опыту форумчан, чтоб так часто не дрючить микруху часов :)))
Foks писал(а):К примеру, спустя 950 мс, читаем регистр секунд, пока не...
Это выход, но если эти 50 мс мы можем часто опрашивать часы, то почему бы не сэкономить на этом память МК и делать это постоянно, а так и таймер один занят и немного кода лишнего.
Опыт приходит сразу после того, как он был нужен...
Контактная информация:
Реклама
Поставщик валерьянки для Кота
Сообщения: 2108
Зарегистрирован: Пт авг 29, 2008 16:28:19
Откуда: Киев

Сообщение Foks »

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

На макетке не обязательно собирать полные 6-ламповые часы, можно лишь отладить в едином экземпляре ключевые узлы (то есть достаточно одной ИД1, одного регистра и т.п.). Собственно, для себя я вообще не вижу смысла собирать устройство, которое с первого раза можно "продумать". Собственно поэтому я не продолжаю штамповать часы: первые были из интереса (ГРИ), вторые в подарок (ВЛИ), и собственно этого хватило :)
Но здесь товарищ, видно, с RTC раньше не работал. Можно же было хоть глубже продумать план действий и провести эту линию, или просто подключить микросхему на соплях к какой-то старой своей макетке, и поиграться, перед тем как финальную плату рисовать.
Giggity giggity goo!
Встал на лапы
Сообщения: 117
Зарегистрирован: Ср окт 10, 2012 07:11:04

Сообщение crazzian »

Знал бы где упаду, соломки постелил. Но не суть
Частота софтового I2C где-то контролируется/устанавливается, подскажите? Если нет, то тактирование идет на частоте кварца МК (ну или около того) , что как бы многовато для шины. Или я не прав?
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1288
Зарегистрирован: Пн апр 14, 2008 12:54:35
Откуда: Город ГЕРОЙ Ленинград

Сообщение Волосатый »

Зависит от кода, я вот с софтовой шиной не работал, но в примерах посматривал, там в заголовочной части обычно устанавливается какая-то константа или переменная, отвечающая за скорость, и не обязательно она в мегагерцах, вероятнее всего абстрактная величина, которая в циклах фигурирует как условие выхода. Тактирование шины на частоте мк невозможно, ибо выполнение кода и задержек требует времени и порой немалого.
Foks писал(а):то есть достаточно одной ИД1, одного регистра и т.п.
Сомнительное удовольствие, проще и нагляднее отмоделировать в протеусе. Такие простые задачи идут на ура, и микросхема часов там есть.
Опыт приходит сразу после того, как он был нужен...
Контактная информация:
Встал на лапы
Сообщения: 117
Зарегистрирован: Ср окт 10, 2012 07:11:04

Сообщение crazzian »

Судя по протеусу частота клока софтового i2c ~40кГц. По ходу дела какая-то глючная DS-ка попалась.
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1288
Зарегистрирован: Пн апр 14, 2008 12:54:35
Откуда: Город ГЕРОЙ Ленинград

Сообщение Волосатый »

А причем тут DS-ка? Частота же довольно низкая. У Вас сколько байт запрашивается? 6, вместе с датой? Это получается 6+2 * 9 = 72 такта, на такой частоте это около 2мс должно быть, не очень много. И кстати, а почему вы не хотите воспользоваться аппаратным ай2си ? Шина не разведена на него? Код зато сэкономите, хотя в 8й меге его и так достаточно :)
Опыт приходит сразу после того, как он был нужен...
Контактная информация:
Встал на лапы
Сообщения: 117
Зарегистрирован: Ср окт 10, 2012 07:11:04

Сообщение crazzian »

Вот и я про то же. Частота маленькая, а время из-за чего-то сбивается на десяток минут, причем считывание крутится в главном цикле. Софтовые библиотеки я выкладывал чуть по раньше. Разведено все как для аппаратного, так что попробовать можно.
Друг Кота
Аватара пользователя
Сообщения: 7361
Зарегистрирован: Пт авг 28, 2009 21:34:30
Откуда: 845-й км.

Сообщение uldemir »

А может проблема не в считывании, а в основном питании? При наличии этого питания идут помехи, которые мешают микросхеме RTC? Мне самому это интересно, так как когда-то столкнулся с аналогичной проблемой на 512ВИ1 (только там параллельная ШД). Но так как там всё было на соплях, о хорошем питании там речь не могла вообще идти.
А люди посмотрят и скажут: "Собаки летят. Вот и осень."
Поставщик валерьянки для Кота
Сообщения: 2108
Зарегистрирован: Пт авг 29, 2008 16:28:19
Откуда: Киев

Сообщение Foks »

crazzian писал(а):Знал бы где упаду, соломки постелил.
Прошу прощения за оффтоп. Важно же знать, не где упадешь, а сам факт предусмотреть, что можешь упасть.
Волосатый писал(а):Сомнительное удовольствие, проще и нагляднее отмоделировать в протеусе.
Кому как :)
Giggity giggity goo!
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1288
Зарегистрирован: Пн апр 14, 2008 12:54:35
Откуда: Город ГЕРОЙ Ленинград

Сообщение Волосатый »

Может у вас чтение какое-то кривое, может вы еще и пишите вместе с чтением, секунды например затираете в ноль? По питанию попробуйте припаять прям на лапки или на дороги близ микрушки керамический кондёр емкостью 1мкФ, это устранит возможные помехи.
Опыт приходит сразу после того, как он был нужен...
Контактная информация:
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2052
Зарегистрирован: Вт ноя 03, 2009 21:02:38
Откуда: Москва

Сообщение Microtech »

На всякий случай, напоминаю про резисторы, подтягивающие шину к "+"
Контактная информация:
Встал на лапы
Сообщения: 117
Зарегистрирован: Ср окт 10, 2012 07:11:04

Сообщение crazzian »

Выяснение причины пока приостановлено - пока тыкал осциллографом на шину, что-то случилось с мегой (вероятно частично сдохла), на пине xtal1 появилось 2.5В -> спалил lpt-шный программатор (заменю микросхему продолжу).
Пул апы имеются. Конденсаторы 0,1мкФ по питанию имеются.
Возможно проблема и из-за питания, т.к. имеется сплошной земляной полигон, т.е. земли преобразователя и по +5В соединены, на осциллографе видны иголки на +5В точно сейчас не помню, но что-то около 300мВ. Вероятно земли придется разделить.
Схема+плата. Ничего криминального.
CLOCK-v1.1.PDF
(942.9 КБ) 327 скачиваний
Одновременно не с чтением ничего не пишется, запись производится только при выставлении времени (даты) при нажатии кнопки "сохранить"
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1288
Зарегистрирован: Пн апр 14, 2008 12:54:35
Откуда: Город ГЕРОЙ Ленинград

Сообщение Волосатый »

А вы проверьте наверняка, если глазу в коде неза что зацепиться, это не значит что там нет ошибок :wink:
Закомментируйте все вызовы пишущей процедуры, и проверьте везде что вы сначала отправляете на микрушку адрес+чтение.
С землей вы плохо обошлись, это бесспорно.
Опыт приходит сразу после того, как он был нужен...
Контактная информация:
Встал на лапы
Сообщения: 117
Зарегистрирован: Ср окт 10, 2012 07:11:04

Сообщение crazzian »

Зря я тут панику навел. Ну не зря конечно...
Дросселя на +5В пока оказалось достаточно. Сутки часы проходили нормально.
Вообщем ВВ преобразователь гадость еще та, по крайней мере на MC34063. Мало того что по питанию много чего лезет, так еще и в эфир излучает (помехи на телевизор идут даже через стену)
Поставщик валерьянки для Кота
Сообщения: 2108
Зарегистрирован: Пт авг 29, 2008 16:28:19
Откуда: Киев

Сообщение Foks »

Ну дык конечно. Спасет здесь грамотная разводка платы, броневой дроссель и, возможно, металлическая крышка поверх преобразователя (или металлический корпус). И LC-фильтр, наверное, не помешает и на питании преобразователя.

Также можно использовать микросхему с ШИМ-контроллером (например, MAX1771), она меньше гадит.
Giggity giggity goo!
Ответить

Вернуться в «Умные мысли»