uldemir писал(а):Darth Cuauhtemoc писал(а):А как вообще надо включать никси по ТУ?
МРБ1122, 1134.
Почитал в МРБ1134. Самим по себе никсям подпорка катодов не нужна. Она нужна, если катодные ключи низковольтные.
Ну и схема моих часиков

Лишний раз обращаю внимание -
оптроны должны быть TLP627-2! Почему на схеме TIL192? Просто не было (ну или не нашел) библиотеки с TLP627, а хотелось сделать быстрее, поэтому не стал тратить время на создание либы, а взял тот оптрон, который подходил по цоколевке.
Софт тоже будет, но попозже, когда допишу установку, а пока часы только ходят

Но ходят красиво, с оранжевым теплым свечением плавных ламповых линий
Что еще? Могут возникнуть вопросы:
1) А зачем 4 RS-триггера для подавления дребезга, если достаточно только одного?
2) Почему бы не подавить дребезг программно?
3) Если уж подавлять аппаратно, то можно было подцепить обычную двухвыводную кнопку к ФНЧ, зачем триггер?
4) Что здесь делает монитор питания MC34064, ведь у AVR есть встроенный?
5) Почему оптроны в качестве анодных ключей, а не классическая транзисторная схема?
Ответы:
1) Совершенно верно. Подавлять дребезг достаточно было только на кнопке Setup, которая заведена на INT0. Но появляются два лишних вентиля, логично было вторую кнопку тоже ставить с подавлением дребезга. Но двух кнопок мало, а я решил делать трехкнопочную установку, какая была в часах моей машины, мне понравилось. Но с тремя кнопками снова появляется пара лишних вентилей, поэтому добавил четвертую на всякий случай. На плате она даже не впаяна, хотя обвязка есть.
2) Реализовывать цифровой ФНЧ не хотелось ввиду некоторой неподкованности в этой области (все это уже подзабыто после института), а вариант с задержкой не особо нравился.
3) Попробовал на макетке с одной кнопкой - не работало, а возиться с подбором номиналов RC фильтра было влом. Ну и, RS-триггер с переключающей кнопкой - самое надежное решение.
К слову, можно обойтись всего одной кнопкой - той, которая Setup на INT0 - при нажатии устанавливается время 21:00:00 (ну и записывается в RTC, конечно) - так делают иногда в простых конструкциях, поскольку это время, когда люди обычно уже дома и еще не спят, и установить часы не проблема, но решил не ограничивать слишком свободу действий (т.е. выбора времени, когда это сделать).
4) Читал что встроенный монитор не всегда может защитить контроллер от порчи программы в условиях сильных помех. А поскольку на макетке часики глючили (дурила конечно только DS1307, потому что кварц на макетке не был защищен от помех), тем не менее в общем к вопросам помех решил отнестись очень серьезно и перестраховаться по всем фронтам, а микруха эта недорогая (ее можно и не устанавливать вовсе). Впрочем, на готовых платах (их три - индикаторы, анодные ключи + 155ИД1 + HV проебразователь, контроллер + кнопки интерфейса + RTC), которые я развел, максимально заливая землей обе стороны и не жалея кондерчиков 0.1 мкф (на каждой микросхеме, кроме MC34063) - никаких помех нет.
5) Просто восхитился ее простотой. Наступил на грабли (1264 страница этой темы), что и побудило зарегиться здесь. Транзисторные ключи лучше. Тем не менее, схема работает и годна для повторения - пришлось немного модифицировать софт в части динамической индикации, ввести задержку по совету
Волосатого, точнее, добавить состояний "паузы" конечному автомату, управляющему индикацией. И все стало ок.
Остальная часть схемы вопросов вызывать не должна, по крайней мере у старожилов этой темы
Задумки, как реализовать установку времени. Точнее даже, не задумки, а как это сделано в моей машине. Все просто. При нажатии кнопки Hours, запускается таймер, который с частотой 0.5 Гц будет инкрементировать часы и он работает до тех пор, пока кнопка не будет отпущена, индикаторы минут и секунд при этом гасятся. Аналогично, при нажатии на кнопку минут. (можно устанавливать время и в обратной последовательности - сначала минуты, потом часы). Разумеется, при нажатии на любую из этих кнопок счет времени по прерываниям от DS1307 прекращается. Ну и наконец, при нажатии на кнопку Setup, установленное время (секунды в нуле), записывается в RTC, и часы возвращаются к нормальной работе.