Страница 1 из 1

Подскажите по подключению светодиодных индикаторов

Добавлено: Пт ноя 28, 2008 01:26:11
starxxx
Такой вопрос: на сайте и в форуме нахожу схемы на МК типа Mega и Tiny, где общие аноды/катоды семисегментных индикаторов подключаются напрямую к портам МК (даже в обучалке!). Я понимаю, что раз работает, значит выдерживает :), я даже вижу в этом очевидные плюсы для разработчика! Но все-таки, не велик ли ток будет через ногу порта, если скажем цифру 8 зажечь (даже при динамической индикации)? Не стоит ли использовать ключевые транзисторы? Или я ошибаюсь?

Добавлено: Пт ноя 28, 2008 06:36:12
BerZerK-ku
Не стоит так делать.

Re: Подскажите по подключению светодиодных индикаторов

Добавлено: Пт ноя 28, 2008 09:48:58
smac
starxxx писал(а):Такой вопрос: на сайте и в форуме нахожу схемы на МК типа Mega и Tiny, где общие аноды/катоды семисегментных индикаторов подключаются напрямую к портам МК (даже в обучалке!). Я понимаю, что раз работает, значит выдерживает :), я даже вижу в этом очевидные плюсы для разработчика! Но все-таки, не велик ли ток будет через ногу порта, если скажем цифру 8 зажечь (даже при динамической индикации)? Не стоит ли использовать ключевые транзисторы? Или я ошибаюсь?
Присоединяюсь к посту BerZerK-ku(если я его правильно понял).Конечно лучше транзисторы, я бы тоже не стал рекоммендовать подключение напрямую к портам, т. к. либо нужно ток ограничивать и индикаторы светиться будут плохо, либо превышать допустимые значения тока через порт, что тоже не хорошо.

Добавлено: Сб ноя 29, 2008 18:25:43
IfoR
Ток на выходе порта не привышает 20 мА. Впринципе при динамической индикации (а такие индикаторы не могут показывать разные цифры в разных разрядах без неё :) ) для индикатора такой ток не должен быть критичен. Даже при постояном токе. Но, конечно, можно подстраховаться резисторами.

P.S. По крайней мере в меня ничего не горело. Зелёные индикаторы жёлтым не подсвечивали. )

Добавлено: Вс ноя 30, 2008 01:06:49
bsyomov
Очень мало индикаторов, где при включении ВСЕХ сегментов, нагрузка была бы <=20мкА. Обычно 20мкА это ток ОДНОГО сегмента в статике.
Опять же, мало контроллеров, которые бы штатно допускали такие токи не то что на пин, а и на порт... Я всегда ставлю транзисторные ключи, тем более, что в моём случае, это не радиолюбительские конструкции и я не могу себе позволить роскошь запалить пин в контроллере в один прекрасный момент. У меня железное правило - динамика, статика, макс ток пина не должен превышать максимальный _РЕКОМЕНДОВАННЫЙ_ ток по даташиту. И ток через все пины порта не должен превышать рекомендованный ток порта... Итог, устройства ещё не разу не возращались на доработку.

П.С. А вдруг генерация остановится и на портах повиснет восьмёрка? а при отладке на брейкпоинте? То-то...

Добавлено: Вс ноя 30, 2008 11:48:20
IfoR
Не, я ничего против транзисторных ключей не имеею. Я даже за. Но это всё же нагружает схему. Если ведётся разговор о готовом устройстве, то тогда конечно, если хотите, ставьте. AVR ATMEGA, например, больше 20 мА тока не даёт. (и не принимает...) А светодиодные индикаторы (не сегмент) как раз столько в среднем и требуют. Хоть и при включении всех семи сегментов и будет яркость падать, но для тестого\своего-домашнего устройства это не критично. Так что по моему такие индикаторы можно подцеплять сразу к пинам (если лень всю эту обвязку паять. :) ).

Добавлено: Вс ноя 30, 2008 12:49:21
smac
IfoR писал(а):.... AVR ATMEGA, например, больше 20 мА тока не даёт. (и не принимает...)
Уверены? А вот слабо такой эксперимент провести: возьмите avr atmega (любую). Подцепите ее порт к + питания (желательно 5 В) лучше напрямую, но можно и через резистор 1 Ом, затем настройте именно этот пин порта на выход и установите в 0. Подождите пару часов :).
П. С. Всем кроме IfoR настоятельно рекоммендую не проводить такой эксперимент, потому что пару часов редкий контроллер выдержит, скорее всего чере пару минут, а может быть и раньше у него выгорит пин, а может и порт целиком.

Добавлено: Вс ноя 30, 2008 19:41:21
Секретный кот
Ещё не стоит забывать максимально допустимый суммарный ток всех портов :)) (Hint: он куда меньше чем Nпортов х 20 мА :))) )

Добавлено: Вс ноя 30, 2008 20:11:17
IfoR
2smac:
Хех... У меня контролерров мало. Всего пара 16-тых. Ибо продают редко. Так, что уж, лучше не надо.) Я вобще руководствовался по данным из даташита (наверно, не так понял.), а не практики. Да и потом, я имею ввиду про питание от порта, а не источника. Ведь суммарный ток всех портов, как я понял, не должен превышать 400 мА. Одного 200 мА. Что вполне для такого достаточно.)

Добавлено: Вс ноя 30, 2008 20:50:56
ARV
IfoR писал(а):Ток на выходе порта не привышает 20 мА.
это ж где вы такое вычитали? не слушайте никаких домыслов, опирайтесь только на даташит (и закон Ома) - и будет вам счастье.

Добавлено: Вс ноя 30, 2008 21:53:49
smac
IfoR писал(а):2smac:
Хех... У меня контролерров мало. Всего пара 16-тых. Ибо продают редко. Так, что уж, лучше не надо.) Я вобще руководствовался по данным из даташита (наверно, не так понял.), а не практики. Да и потом, я имею ввиду про питание от порта, а не источника. Ведь суммарный ток всех портов, как я понял, не должен превышать 400 мА. Одного 200 мА. Что вполне для такого достаточно.)
Зачем писать ерунду да еще и многократно? Если сомневаетесь пишите "по-моему" или "я думаю". Даташит вы тоже неправильно прочитали, там четко сказано, что ток через 1 пин порта не должен превышать 40 ма (я читал для мега16, но по-моему справедливо для всех 8 ми битных АВР), максимальныий общий ток через порт и максимальный общий ток через все порты зависить (повторюсь говорим о меге16) от типа корпуса. Для дип корпуса общий ток через 1 порт не должен превышать 100 мА, а ток через все порты - 200 мА, для TQFP 200мА и 400 мА соответсвенно (MLF так же как и для TQFP).
По поводу питания от порта - оно мало чем отличается от питания от источника. Когда вы выставляете единицу (логическую) на пине порта (настроенном как выход) то вы всего-навсего подключаете плюс источника питания к нагрузке, подключенной к пину порта, через КМОП транзистор. Поймите, что порт не ограничивает ток, ток через порт подчиняется закону Ома (как уже правильно сказал ARV), поэтому если вы не ограничите ток светодиодов, то он обязательно превысит допустимый для порта (возможно и для светодиода) и в конце концов порт выгорит. Да, для динамической индикации все немного по-другому ток через диод не может нарастать мгновенно, импульсный ток через пин наверное может быть больше чем 40 мА (хотя даташит ничего про импульсный не говорит) и в большинстве случаев получается так, что контроллер не выходит из строя, однако никакой гарантии правильной работы нет. Поэтому лучше не использовать настолько любительский подход.

Добавлено: Вс ноя 30, 2008 21:54:17
starxxx
В даташите ATTiny2313, например, на 181 странице вверху написано: "DC current per I/O Pin ..... 40.0 mA". Даже если считать 1 светодиод в индикаторе 10 mA, то на восьмерке получится 80 - перебор в 2 раза