тут какой-то сговор и это был коварный удар в спину. Ничего не поделаешь, просто заставляете признать что вторая схема лучше первой, т.к. сделана с гальванической развязкой. Советую всем и всегда при необходимости развязки делать ее именно такой! Одно присутствие оптрона в схеме , делает вашу плату практически неуязвимой!
И так, результаты: 1) Приведенная Jack_A схема на первой странице помогла практически полностью устранить подсветку ненужных сегментов за исключением точек. о всяком случае через зеленую пленку (индикаторы зеленые) подсветку невидно вообще.
2) Добавление диодов в моем случае визуального эффекта не дает.
3) На счет оптронов - я раньше то-же думал сделать на TLP627-4 - результат меня разочаровал, при приемлимой частоте динамической индикации оптроны не успевали отключать "ненужные" разряды, да и всеравно к оптрону надо "довешивать" транзистор, так что проще просто ставить 2 транзистора на канал.
4) Причина подсветки кроется вот в чем: В 12 вольтовых индикаторах (назову так все светодиодные индикаторы, которые не могут работать от 5v) сегменты составлены из 3-4 последовательно включенных светодиодов, а точка из 1-2 последовательно включенных светодиодов. И вот что получается, когда сегмент должен светится, мы сегмент ногой контроллера сажаем на 0v через резистор, а общий вывод разряда на +12 и все ок, а когда сегмент гореть не должен на сегмент с контроллера подается +5v через резистор, а общий разряда на 12v и получается, что на выключенный сегмент подводится 12-5=7v это и вызывает слабую подсветку сегмента из трех светодиодов (в моем случае именно такой индикатор, до этого использовал индикатор большего размера с 4 светодиодами и проблем небыло), и особенно заметно на точке которая состоит из меньшего числа светодиодов. (это для индикатора с общим анодом, для общего катода будет то-же самое, но с другой полярностью)
С точками буду пробовать перевести ножку кронтроллера в состояние входа на время отключение точки. - Это плохой вариант, есть риск сжеч порт.
PS: В качестве корпуса для данного устройства использовал корпус от китайского галагенового прожектора на 500вт.
схема разрабатывалась для питания индикаторов нестабиоизированным постоянным напряжением 11- 40 вольт без привязки к заданию базовых токов "верхних" ключей. (типовая "гирлянда" из 6-7 светодиодов + ИТ 20мА умноженная на допустимый ток сегментного ключа (количество "веточек" в сегменте)). для питаия оптрона вполне достаточно выходных токов выводов PIC/AVR/AT89C2051 кристаллов... кстати никакой "подсветки" при грамотной программе не наблюдается
Заголовок сообщения: Re: Подключение 12 вольтового индикатора к МК
Добавлено: Вт мар 27, 2012 11:51:55
Поставщик валерьянки для Кота
Карма: 2
Рейтинг сообщений: 11
Зарегистрирован: Пт май 23, 2008 19:32:22 Сообщений: 2401 Откуда: Россия, Волгоград
Рейтинг сообщения:0 Медали: 1
yeskela если у тебя сегменты управляются непосредственно от мк, то он долго не протянет. поясню: на тех сегментах, которые должны быть выключены, к выводам порта будет прикладываться 12В, так что я все-таки рекомендую поставить между мк и сегментами ключи на транзисторах, или ULN2003 - 7 разрядов.
_________________ Чем дальше, тем больше становлюсь занудой...
yeskela если у тебя сегменты управляются непосредственно от мк, то он долго не протянет. поясню: на тех сегментах, которые должны быть выключены, к выводам порта будет прикладываться 12В, так что я все-таки рекомендую поставить между мк и сегментами ключи на транзисторах, или ULN2003 - 7 разрядов.
Да, об этом не подумал... Тогда попробую поставить транзисторный ключ на сегмент точки.
Заголовок сообщения: Re: Подключение 12 вольтового индикатора к МК
Добавлено: Вт мар 27, 2012 11:58:41
Поставщик валерьянки для Кота
Карма: 2
Рейтинг сообщений: 11
Зарегистрирован: Пт май 23, 2008 19:32:22 Сообщений: 2401 Откуда: Россия, Волгоград
Рейтинг сообщения:0 Медали: 1
надо ставить на все сегменты
через защитный диод будет протекать ток I = (12-5-Vled)/R этот ток и вызывает подсветку, и может возникнуть ситуация когда суммарный ток всех сегментов + ток потребления ядра мк превысят предельно допустимый ток, и тогда - кердык
На все - лениво, т.к платы уже сделаны. Добавил навесным монтажем npn транзистор на точку и инвертировал в программе ногу управления точкой. Что касается остальных сегментов - то их подсветка незаметна. На сколько я знаю в ATMEGAх стоят защитные диоды портов, по этому думаю, что контроллер выжевет (во всяком случае контроллер не греется). Поживем увидем.
устранить подсветку ненужных сегментов за исключением точек.
Поскольку это часы ( если бы автомобильный вольтметр, не было бы верхней точки ), то пины точек в десятках часов и единицах минут вообще не подключать - и no problem.
Ну, раз не часы -- беру салют обратно.
А что касается до всего до этого, - не флейма ради - то опторазвязывать рядом стоящие на одной плате, с одной корпусной шиной элементы -- imho, как бы помягше выразиться....
Последний раз редактировалось Jack_A Вт мар 27, 2012 12:55:39, всего редактировалось 3 раз(а).
устранить подсветку ненужных сегментов за исключением точек.
Поскольку это часы ( если бы автомобильный вольтметр, не было бы верхней точки ), то пины точек в десятках часов и единицах минут вообще не подключать - и no problem.
Сталкивался тоже с паразитной подсветкой сегментов(правда индикатор маленький 14,2мм), решение проблемы нашел изменением программы. Может кто-нибудь описать свой алгоритм нереключение разрядов? При котором происходит подсветка сегментов. И вообще кто-нибудь пытался бороться с проблемой програмно?Или только аппаратно?
Может кто-нибудь описать свой алгоритм нереключение разрядов?
Бороться не надо, надо просто правильно напис`ать программу . Я думаю так : - погасить все сегменты, подав на них высокий ( имеется в виду индикатор с разделенными катодами ) - снять сигнал с анода отработавшего знакоместа - выдать на сегменты код следующей цифры - подать сигнал на анод следующего знакоместа ( цифры ).
И, кончно, соблюсти аппаратные штучки, о котрых мы тут перетираем уже 3 страницы
Заголовок сообщения: Re: Подключение 12 вольтового индикатора к МК
Добавлено: Ср мар 28, 2012 07:06:48
Поставщик валерьянки для Кота
Карма: 2
Рейтинг сообщений: 11
Зарегистрирован: Пт май 23, 2008 19:32:22 Сообщений: 2401 Откуда: Россия, Волгоград
Рейтинг сообщения:0 Медали: 1
всем кто осваивает динамическую индикацию советую прочитать AVR242, если с аглицким траблы есть на русском: http://www.gaw.ru/html.cgi/txt/app/micr ... AVR242.htm но у описанного алгоритма есть существенный недостаток - бесцельное расходование машинного времени.
_________________ Чем дальше, тем больше становлюсь занудой...
Бороться не надо, надо просто правильно напис`ать программу . Я думаю так : - погасить все сегменты, подав на них высокий ( имеется в виду индикатор с разделенными катодами )
В программе так и делается, но при питании индикатора напряжением бо'льшим, чем питание контроллера при подаче высокого уровня на сегменты происходит запитка сегмента напряжением = Uпитания индикатора - Uпитания контроллера. отсюда и идет слабая подсветка. При использовании маленьких индикаторов, которые питаются тем-же напряжением что и контроллер такого эффекта не возникает. Как тут уже обсудили единственно правильный и корректный способ - ставить транзисторные ключи (или ULN2003) на каждый сегмент и програмно инвертировать сегментные выводы контроллера. Если-же у кого-то возникает подсветка сегментов и на маленьком индикаторе то тут дело в том, что после отключения одного разряда надо выждать паузу для закрытия разрядного ключа и только потом зажигать следующий разряд. Иначе возможен эффект подсветки в следующем разряде цифры из предидущего.
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения