Pull to refresh

Comments 54

Вы же обычные электронные часы в 0-00 не включаете? Начальные показания любые зашить можно. Установка времени есть.
Можно было взять адресную ленту, там одного вывода хватило бы
Если бы речь шла только о количестве выводов контроллера, я бы взял 3 штуки 74HC595, обошлось бы раз в сто дешевле. Кроме того, адресной ленты 120 шт/м не нахожу даже цену посмотреть.
а положить две ленты рядом 60 шт/м со сдвигом в шахматном порядке?
или я не понял, и была цель максимально задействовать все без исключения выводы контроллера?
Не понял, какая проблема запустить атмегу с часовым кварцем? Сам чип пусть тактируется от внутреннего генератора, а внешний часовой кварц тактирует таймер 2.
Прошу прощения за поздний ответ — в тот день почему-то не отправилось, заметил сейчас.

какая проблема
возможно, у людей проблема прочитать даташит, узнать требования к ёмкости кварца и токам утечки, и отмыть плату от полу-активного флюса. В результате — генератор может тупо не стартовать. Наблюдал со стороны, как такое происходило с платами на silabs c8051f350 и на STM8L
UFO just landed and posted this here
UFO just landed and posted this here
Если действительно 100 кГц, я не против. Но почему-то не делают. Везде, где я видел, на два-три порядка меньше, если скользнуть взглядом, остаётся шлейф из сегментов. Ну и для динамики при 12 вольтах питания нужно добавить больше десятка деталей.
Но почему-то не делают.

Потому что просто так на 100 кГц мосфеты с вывода контроллера не заведутся :) Надо ставить или городить из рассыпухи драйвер, а это усложнение и удорожание :)
Взять вместо мосфетов интегральный буфер — и дело в шляпе! У меня на частоте 2МГц данные в светодиодную панель бегают!!! (см. мой ЖЖ)
Вы бы дали конкретную ссылку :)
Вот.
// вообще, я крайне редко отвечаю на комментарии, т.к. больше одного комментария в сутки не могу оставлять. Такой вот идиотизм на быдлохабре творится.

А вот ниже еще про светодиоды коммент. Отвечу и на него.
Понятно, что, учитывая инерционность нашего зрения, никакого смысла ШИМить светодиоды частотой свыше сотни-другой герц, нет. А на еще более высоких частотах попрут вовсю нелинейные свойства p-n переходов. В общем, светодиод — это вам не вентилятор или мотор! Его можно и нужно ШИМить на низких частотах в сотню герц. А вот мотору уже нужно минимум 30кГц, чтобы не слышно было противного писка.

Если бы эти панели были несколько подороже, то не было бы необходимости постоянно обновлять картинку: закинул в 2048×3 ячеек сдвиговых регистров данные, подержал 10мс, потом следующий кадр закинул — и так обновлять по 100 фреймов в секунду. Ничего не мерцало бы. Но т.к. в панелях этих сильно сэкономили на сдвиговых регистрах, приходится по сути в 16 проходов только 1 кадр формировать! Реализовать с таким подходом на панели 32×64 хотя бы по 4 бита цвета в каждый канал будет проблематично, а уж 8 бит на цвет — просто невозможно. С моей RGB-панелью в ходе экспериментов выяснилось, что быстрей 2МГц данные передавать нельзя: начинаются глюки в виде лишних или недостающих пикселей. А на осциллограмме даже на 2МГц жесть, что творится! Понятно, что неплохие шумы вносятся еще из-за того, что мой велосипед распаян на макетке кучей длинных проводочков, но вряд ли даже при грамотной трассировке многослойной печатной платы получится хотя бы до 10МГц догнать скорость передачи данных. Но «тетрис» и «змейка» у меня завелись. Сейчас понемногу по вечерам «арканоид» пилю.
закинул в 2048×3 ячеек сдвиговых регистров данные, подержал 10мс, потом следующий кадр закинул — и так обновлять по 100 фреймов в секунду.

Да и крепеж панели не будет нужен — спокойно будут стоять на проводах питания, по которым в них заливается до 60 ампер для диодов (по 10 мА на каждый цвет каждого диода) :)
У меня на частоте 2МГц данные в светодиодную панель бегают
Данные можно и на большей частоте передавать (я передавал на частоте 8 МГц), а вот светодиодам даже 100 кГц может не понравиться. Надо попробовать.
К155ИД1 – высоковольтный дешифратор управления газоразрядными индикаторами, где сравнительно низковольтные выходы (до 60 вольт) коммутировали индикаторы с напряжением зажигания 150 вольт и выше.

Все немножко хитрее. А именно — общий катодный резистор.
Когда хотя-бы один сегмент включен, то напряжение на катоде становится равным напряжению падения на горящей лампе, что значительно снижает напряжение на закрытых транзисторах остальных каналов.
Правда там это вынужденная мера, из-за очень большой разницы напряжениий горения тлеющего разряда и его первоначального зажигания. Со светодиодами все значительно проще и ваша схема вполне рабочая.
Общий анодный резистор, вообще-то. Напряжение на аноде около 150В.
60В на погашенных катодах — это -90В относительно анода, что гарантированно меньше напряжения поддержания разряда.

Да, что-то я дал маху...

В газоразрядных индикаторах нет сегментов, которые могут включаться одновременно, кстати.
а как же 8 вечера? ну точнее 20 часов… у вас нет am/pm индикатора и первая цифра жестко 1.
не аккуратненько. порой проснулся смотришь на часы и понятия не имеешь это уже 6 вечера и темно или еще 6 утра и не рассвело пока что. зимой в питере с утра идешь на работу — еще темно. выходишь с работы — уже темно. так что я сторонник точного указания времени, без догадок какое время дня сейчас.
Проснувшись в 8 вечера на работе (офисные часы), можно действительно начать работать, не разобравшись. К стрелочным часам никто претензий не предъявляет.
Но пару весёлых историй типа «прилёг вздремнуть после работы, проснулся в шесть вечера и прибежал опять на работу» я слышал.

Стрелочные часы бывают и с 24-часовым циферблатом, пусть и сравнительно редко.

6 вечера это 18, а в 8 утра уже пора бы на работе быть а не спать ))

Как разминка для серых клеточек — норм. В продакт — категорически нет.

А вот так — слабо?
Вообще, восьмибитки нынче — отмирающий вид. Они очень дороги по сравнению с 32-битными МК, а учитывая крайне скудную периферию, для восьмибиток остается очень узкая область применения. Скажем, использовать 8-ногий 15-рублевый микроконтроллер для генерирования разных импульсов вместо 555. Ну или влажность почвы измерять и мастеру по радиоканалу отправлять данные… В общем, там, где нужно выполнять всего одну задачу, не требующую большой нагрузки.
P.S. Светодиодные ленты потребляют достаточно приличный ток. Даже если пускать по 10мА через каждый сегмент, в случае, когда они все загорятся, суммарное потребление портами МК будет значительно превышать предельное значение из документации. В общем, если оно и будет работать какое-то время, то только вопреки здравому смыслу.
использовать 8-ногий 15-рублевый
Какой, например? У нас минимум вдвое дороже.
там, где нужно выполнять всего одну задачу, не требующую большой нагрузки
Как раз тот случай- 16% флеша, хотя можно и меньше. Зачем здесь что-то мощнее?
UFO just landed and posted this here
Знаете, почему микроконтроллер не помер от подключения к его ноге 12 вольт через сегмент светодиодной ленты? Причина банальная. Если взглянуть на схему, то можно увидеть, что сегмент состоит из трех последовательно включенных светодиодов и токоотграничивающего резистора. Обычно, в распространенных светодиодах падение напряжения на кристалле достигает ± 2,5 вольт. Так как их три, то в сумме получается 7,5 вольт. Итого, из 12 вольт 7,5 падает на светодиодах и ноге остается 4,5 вольта, что как бы в пределах нормы для микроконтроллера AVR. Я даже не учел падение напряжения на резисторе. Если мне память не изменяет, то напряжение пробоя защитного диода на AVRках составляет 6 вольт или около того. Так что тут чистая физика и никакой магии.
то напряжение пробоя защитного диода на AVRках составляет 6 вольт
Напряжение открытия защитных диодов составляет 0,5 В, только их два, и подключены они к обоим шинам питания.
Но я бы конечно не рекомендовал делать так, как делает автор. Это очень, очень грязное решение.
только их два
На каждой ноге.
Но суть не в этом. Диод открывается, когда есть ток. А ток равен нулю, как я уже писал.

Диод открывается не током, а напряжением. Вам просто повезло, что 12 — 5 = 7, и 7< 7.5.

Диод открывается не током, а напряжением
Согласен, неправильно выразился.
Вам просто повезло, что 12 — 5 = 7, и 7< 7.5
Повезло- это если б я не знал об этом. А так расчёт, о чём я и написал.
А, точно. Они сработают, если напряжение на ноге превысит напряжение питания на полвольта. Я уже и забыл. Спасибо, что напомнили.
На самом деле даже не полвольта, а практически от нуля (это можно увидеть на вольтамперной характеристике), но ток при низком напряжении на диоде тоже близок к нулю, я столкнулся с этим на практике много лет назад, экспериментируя с очень малыми токами. В этом легко убедиться, измерив постоянное напряжение простым мультиметром, и затем измерить его же через диод, напряжение покажет то же самое, то есть падение напряжения на диоде около нуля. Так что не стоит особо рассчитывать на полвольта, это только при токах, близких к паспортным для диода.

ATMega8? Чувак! AT90S2313 — вот тема была. Или на ATtiny85 запили тоже самое (хотя, это не о часах). Прошивка только на его ассемблере, никаких сишечек! А то у всех ардуины, да атмеги, ещё и STM32 прикрутят...

Так то для часов есть специальные микросхемы. Достаточно подключить кварц, индикатор и питание. И пару резисторов-конденсаторов в обвязку. Но это скучно ;)

Не знаю такой для светодиодной индикации. Если она и есть (подскажите), то наверняка намного дороже, чем Атмега. Кроме того, Атмега у меня уже есть.

Для светодиодов и я не знаю. Для вакуумных — 100500 их. 145ИК1901 за $4 продают, например. Кстати, вакуумные индикаторы красивше :)

145ИК1901- мои первые, конструктор, примерно 1987 год. Потом несколько доработок. Вакуумные индикаторы у меня служили мало, года по три, потом повышал напряжение накала, но хватало не надолго. Тогда мне тоже казались красивше, сейчас по=другому смотрю.
Тогда мне тоже казались красивше, сейчас по=другому смотрю.

Nixie Clock сейчас модно ;) Вкусовщина, конечно.
Тоже давно сделать хочу, индикаторов нет пока. Хотя за модой никогда не гнался.

FTGJ, Nixie — газоразрядные (неонки). С накалом — вакуумно-флуоресцентные ("магический глаз" в "теплых ламповых" приёмниках или VFD).

Зачем использовать ds1307, когда есть ds3231?

Зачем Жигули, если есть Ауди? Цена ds1307+кварц в десять раз меньше, чем ds3231.

Для одноразового хобби проекта +- 2$ это ниачом. Разве что сам себе поставил задачу сделать именно из этих палочек ;)

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

Все токовые режимы превышены, но Атмега справляется
Надеюсь, Вы понимаете, что надежность и повторяемость схемы — так себе.
Я поражаюсь, скольких людей авторы Arduino сбили с толка своим loop(). Зачем гонять по кругу, если а) внутри контроллера состояние не меняется б) изменение состояния выходов происходит только как результат прерывания?
Как раз в данном случае в loop() крутится индикация и опрос кнопок. Но могу подтвердить: действительно некоторые моменты пришлось переучивать после Ардуино, причём оказалось ещё и проще.
При напряжении на сигнальных пинах выше напряжения питания легко нарваться на т.н. тиристорный эффект
Напряжение на сигнальных пинах не выше напряжения питания.
Ну как, если ATMega питается от 5В, а светодиоды от 12В, то когда на выходе высокий уровень (светодиоды не горят) небольшой входящий ток течь будет

Заводское тестирование AVR'ок (по крайней мере — во времена Atmel) на тиристорный эффект — 100 мА втекающего тока.

Sign up to leave a comment.

Articles