В схемах на логике, К176ИЕ12 - ИЕ13, отечественных часовых БИС, - всегда есть 1 Гц выход с меандром. На ПЛИС его можно организовать программно. Исключение - КА1016ХЛ1, там всё чуть сложнее.
На 155ой серии секундный импульс "растягивал" с помощью 155АГ1 примерно на 0.5с. На 511ой серии брал прямо с последнего делителя через оптрон, там уже 0.5с
Ну и проблему вы нашли.... Если время считает контроллер по прерываниям от дс1307, то что может быть проще? Включил точки по сигналу от дски, отсчитал 0,5 сек любым удобным способом, погасил точки...
Проблема не в том, насколько где трудно получить импульсы для мигания разделительных точек, а должны ли они вообще мигать, и если мигать, то как часто.
Скажу по своему вкусу - мне не нравятся часы, которые мигают с частотой 1 раз в секунду - мельтешат. Поэтому в своих конструкциях придерживаюсь периода 1 раз в 2 секунды. Но, это относится к часам с 4 индикаторами. Для часов с 6-ю индикаторами - такой темп кажется странным. Поэтому я пробовал 1 раз в секунду и чтобы горели постоянно. Второй вариант мне кажется более приемлемым.
Хотя ваши вкусы я не осуждаю. Нравится, чтобы мигало раз в секунду или две - пожалуйста. Чтобы изображало из себы железнодорожный переезд - не возражаю. Просто я так делать не буду.
Карма: 46
Рейтинг сообщений: 977
Зарегистрирован: Ср май 28, 2008 00:32:54 Сообщений: 7615 Откуда: г. Россия
Рейтинг сообщения:0
uldemir писал(а):
Чтобы изображало из себы железнодорожный переезд.
Я так делал в часиках на ИН-4, только на ЖД переезде лампочки мигают по очереди. Так же и я сделал.
А принцип был такой как описал O-LED при считывании времени (Каждую секунду) сбрасывается таймер на пол секунды. По истечении этого таймера огоньки меняются местами.
Включил точки по сигналу от дски, отсчитал 0,5 сек любым удобным способом, погасил точки...
Хорошая методика, точно по такому же принципу (правда, в часах на LED - там это просто необходимо - без приглушения яркости светильник просто ) у меня сделано управление яркостью, а тут что-то сразу не додумался Но для регулировки яркости используется тот же таймер, что и для управления динамической индикацией, и никаких дополнительных ресурсов не тратится, то для точек все равно приходится привлекать "лишний" таймер, что для самостоятельного мигания, что для отсчета после импульса от RTC, ну если программно не вводить задержку в главном цикле, что считаю моветоном
Но этот способ нравится лучше, чем "псевдосекунды", поскольку секунды настоящие, пожалуй, буду юзать именно его
_________________ У кошки четыре ноги - вход, выход, земля и питание. Но трогать ее не моги - получится замыкание.
У меня так и сделано, это связано с тем, что DS1307 невозможно запрограммировать на выдачу прерывания с частотой 2 Гц, поэтому секундные точки - на самом деле "псевдосекундные"
Настравиваем на 1Гц, заводим на внешнее прерывание, прерывание настраиваем на сработку по любому изменению "Any logical change" и получаем то, что хотели без лишних телодвижений и затрат, и секунды "настоящие" .
Хороший совет. Но в своих поделках я не использую выход прерывания от 1307. Лишний проводок. Мигаю по внутреннему таймеру, с приблизительной частотой, так как использую внутренний RC генератор, или по изменению младшего бита в секундах (часы на ГИПС-16). Тогда проще завести выход DS1307 сразу на ключ неонки - разделителя, без программной обработки, только настроить на секундный интервал при старте.
Настравиваем на 1Гц, заводим на внешнее прерывание, прерывание настраиваем на сработку по любому изменению "Any logical change" и получаем то, что хотели без лишних телодвижений и затрат, и секунды "настоящие" .
Так действительно лучше. Таймеров частенько не хватает...
Тогда проще завести выход DS1307 сразу на ключ неонки - разделителя, без программной обработки, только настроить на секундный интервал при старте.
Тоже вариант, использовал это в часах на тини13, чтоб перестать мигать достаточно перестроить ds3231. Но это лишь потому, что в тиньке ног ну очень маловато, а так мне проводка не жалко.
Настравиваем на 1Гц, заводим на внешнее прерывание, прерывание настраиваем на сработку по любому изменению "Any logical change" и получаем то, что хотели без лишних телодвижений и затрат, и секунды "настоящие" .
Элегантно Затрат действительно никаких.
_________________ У кошки четыре ноги - вход, выход, земля и питание. Но трогать ее не моги - получится замыкание.
Не совсем по теме, конечно, поскольку изначально было рассчитано на LED семисегментники, но отвечу здесь, раз уж речь пошла про ресурсы МК. Я часики делаю на восьмых Мегах, там дефицита ног в общем то не наблюдается, во всяком случае в моих часах: 1) 7 ног на катодные ключи. 2) 1 нога на точки. 3) 6 ног на анодные ключи. 4) 2 ноги на I2C (аппаратный TWI) 5) 1 нога прерывание от DS1307 (INT0) 6) 2 ноги на пару кнопок. Хватает, чтобы установить время и календарь. 7) 1 нога для регулировки яркости (потенциометр или делитель с фоторезистором на АЦП) 2 ноги на "аппаратный" 1-Wire для термодатчика DS18B20 (TxD и RxD) По ногам получается тютелька в тютельку.
Что можно сделать, чтобы чуть сэкономить: 1) Поставить BCD - 7 сегментный дешифратор (для газоразряда - 155ИД1 либо низковольтный десятичный + катодные ключи). Это высвободит 3 ноги. 2) Подвесить кнопки к сканированию индикатора. Освободит 1 ногу, и при этом увеличит количество кнопок до 6, а если ногу не освобождать, то и до 12 Этого делать не стал, поскольку пока нет необходимости.
Из трех таймеров задействованы два.
Вообще сделал унифицированое, так сказать, "часовое ядро", на основе чего три проекта (никси, LED и VFD) где разница будет лишь в обвязке индикаторов, ну и в источнике питания, но его хочется сделать отдельной платой. Поскольку по крайней мере для LED, если не хватает времени, проще найти готовый источник на 24 В
Индикатор может быть как на 4 знакоместа, так и на 6.
Мораль сей басни такова, а не проще ли сразу взять тот контроллер, который будет удовлетворять задаче, а не извращаться, пытаясь впихнуть необходимый функционал в как можно более мелкий МК Хотя для некоторых это может быть увлекательным спортом
_________________ У кошки четыре ноги - вход, выход, земля и питание. Но трогать ее не моги - получится замыкание.
Да, они же все равно никогда не включаются одновременно.
Но в общем то идея увеличения количества корпусов тоже не айс Хотя, поскольку львиную долю стоимости составляют корпус самого девайса и индикатор, особого смысла гнаться за минимизацией количества корпусов с экономической точки зрения нет, если не крупная серия.
В принципе, даже для газоразряда, если без дешифратора, можно обойтись 7 (а не 10) ногами для катодных ключей - организовать их в матрицу 5x2, и даже меньшим количеством ног - была в этой теме ссылка на статью по управлению никсями от МК.
_________________ У кошки четыре ноги - вход, выход, земля и питание. Но трогать ее не моги - получится замыкание.
О, и моя схема всплыла вдруг , к вопросу о ногах, две недели назад ради прикола, часы с будильником на ATtiny13 придумал, ds1307 (включая вывод SWQ/OUT) три кнопки, динамик и 4-е индикатора ИВ8 (Оп не в тему ), и все к пяти ногам tiny13, сегодня платки вытравил будем завтра!
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 236
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения