Перейти к содержанию
    

Подключение 7-сегментного

Как обойтись без транзисторов в этой схеме (нет под рукой)?

Можно ли просто подключить 1, 2, 3 ко входам EN_PIN и для управления один из них притягивать к земле, а остальные отключать?

 

 

7-Segment-Display-Interfacing-With-STM32.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Зачем переделывать эту схему?  Из всех схем в интернете - это самая неудачная и не правильная.

Проще найти нормальную, уже без транзисторов.

3 hours ago, HaJl4uk said:

Можно ли просто подключить 1, 2, 3 ко входам EN_PIN и для управления один из них притягивать к земле, а остальные отключать?

подключить можно, резисторы только оставить, и даже "будет как-то" светиться, ... 

но работать будет плохо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 часа назад, HaJl4uk сказал:

Как обойтись без транзисторов в этой схеме (нет под рукой)?

Можно ли просто подключить 1, 2, 3 ко входам EN_PIN и для управления один из них притягивать к земле, а остальные отключать?

Если нагрузочной способности каждого из пинов EN_PIN... хватит по максимальному току (в случае когда все разряды индикатора горят) и суммарной нагрузочной способности всего корпуса МК хватит по суммарному току всех выводов, то можно. Но быстрей всего - не хватит. Читать даташит на МК, раздел "максимальные значения токов".

Можно правда увеличить сопротивления резисторов, уменьшив токи или уменьшить напряжение питания МК, но пострадает яркость.  :unknw:

Также - если общей нагрузочной способности корпуса МК хватает, но не хватает нагрузочной способности отдельных ног, то можно спарить параллельно по несколько ножек (на каждую линию EN_PIN...).

 

14 минут назад, izerg сказал:

Проще найти нормальную, уже без транзисторов.

Неужто некая магическая схема позволит увеличить нагрузочную способность МК по токам???  :shok:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 minutes ago, jcxz said:

Если нагрузочной способности каждого из пинов EN_PIN... хватит по максимальному току (в случае когда все разряды индикатора горят) и суммарной нагрузочной способности всего корпуса МК хватит по суммарному току всех выводов, то можно. Но быстрей всего - не хватит. Читать даташит на МК, раздел "максимальные значения токов".

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

Схема выдрана из "онлайн учебника" , я сомневаюсь что автор до даташита вообще дойдет, но если дойдет - потом будет вопрос "а en_pin(0) - это какой GPIO".

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 часа назад, HaJl4uk сказал:

Можно ли просто подключить 1, 2, 3 ко входам EN_PIN

Можно, если 7 шт. одинаковых последовательных резисторов добавить в цепи A...G.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

8 minutes ago, jcxz said:

Неужто некая магическая схема позволит увеличить нагрузочную способность МК по токам???  :shok:

магическая - не знаю, магией не владею :)

делаем несколько предположений: 

- индикатор - более менее новый, а не найденый / выпаяный откуда-то 20 летней давности - значит будут светодиоды, котрый работают от небольшого тока, и уже будут именть какую-то достаточную яркость. Иногда светодиодам хватает 0,5 - 1  мА что-бы светится. Нужно смотреть даташит.

- допустим, что выбраны GPIO с достаточной нагрузочной способностью? (надо смотерть схему и даташит :)

58/139 DS9716 Rev 11 - то что было под рукой, максимально допустимые значения.

Output current sunk by any I/O and control pin 25 мА
Output current sourced by any I/O and control pin -25 mA

- допустим включили цифру 8 ... пусть по 2 мА на светодиод - итого 16 мА - должно хватить :) но это ни минимальной яркости светодиода, и в статическом режиме :)

- индикатор динамический? значит яркость просядет минимум 1/4 или 1/7 ?

... насчет магичности схемы, в исходной схеме - резисторы в эмитерах - "ну такое себе" решение, почему не в коллекторе? еще бы лучше - в сегменты переставить.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

25 минут назад, izerg сказал:

... насчет магичности схемы, в исходной схеме - резисторы в эмитерах - "ну такое себе" решение, почему не в коллекторе? еще бы лучше - в сегменты переставить.

Видимо потому, что алгоритм динамической индикации в этой схеме перебирает последовательно не цифры, а сегменты.

Т.е. - сперва зажигаются все сегменты A (где нужно), коммутируемые ключами EN_PIN...; потом - все B где нужно; ... все C и т.д. И так 7 фаз.

Почему резисторы не сверху? Наверное потому что автор их экономил. Как сейчас ТС экономит транзисторы.  :biggrin:

48 минут назад, izerg сказал:

потом начнутся вопросы - почему меняется яркость, в зависимости от цифры

А почему яркость должна меняться в зависимости от цифры? Ну если конечно источник питания не просаживается.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

18.09.2021 в 16:40, jcxz сказал:

Видимо потому, что алгоритм динамической индикации в этой схеме перебирает последовательно не цифры, а сегменты.

Посмотрел этот "драйвер" что прилагался к схеме. Зажигает он по порядку, как положено, знаки. Вообще сегменты было бы перебирать не удобно.

Сделал без транзисторов, но увеличил сопротивление для каждого знакоместа до 500. Пришлось все управляющие пины настроить на выход, так как вход имеет большое сопротивление и свечение еле видно. Вообще в даташите (stm32f103) написано (насколько я понял) что гпио выдерживает до 25 мА тока. При измерении получилось 2,6 мА на каждое знакоместо при постоянном свечении и 0,8 мА при импульсном с периодом +-10 мс (переключение происходит через 5 мс, следовательно каждый знак из трёх не горит 10 мс + алгоритмическая задержка)

Все работает, но все же волнуюсь не сгорят ли выводы от длительного воздействия повышенного тока. Может входные/выходные регистры могут как то сгореть? Не зря же там на транзисторах схема. Схем без них даже в интернете не найти

Изменено пользователем HaJl4uk

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 час назад, HaJl4uk сказал:

Посмотрел этот "драйвер" что прилагался к схеме. Зажигает он по порядку, как положено, знаки. Вообще сегменты было бы перебирать не удобно.

Значит драйвер кривой. Схема сделана под перебирание сегментов. Если перебирать цифры, то резисторы должны быть в цепях сегментов.

Цитата

Сделал без транзисторов, но увеличил сопротивление для каждого знакоместа до 500.

Резисторы оставили в цепях знакомест?

Неужели не заметили, что яркость цифр сильно зависит от того какая цифра показывается? Например '1' и '8' если рядом зажечь?

Читали/поняли про то где и почему должны быть резисторы? И поняли почему с таким расположением резисторов как на схеме выше, перебирать нужно сегменты, а не знакоместа?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

17 часов назад, jcxz сказал:

Читали/поняли про то где и почему должны быть резисторы? И поняли почему с таким расположением резисторов как на схеме выше, перебирать нужно сегменты, а не знакоместа?

Нет, не понял почему для каждого сегмента нужен резистор.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

28 минут назад, HaJl4uk сказал:

не понял почему для каждого сегмента нужен резистор.

Нарисуйте электрическую схему для одного знакоместа. Разрисуйте его внутренности до уровня отдельных светодиодов каждого сегмента. Рассчитайте ток коллектора транзистора в цепи общего катода одного знакоместа. Рассчитайте токи каждого светодиода (сегмента) для случая отображения символа "1" и "8". Для расчета предположите, что общий ток катода всего знакоместа делится между всеми горящими сегментами поровну.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

43 minutes ago, HaJl4uk said:

не понял почему для каждого сегмента нужен резистор.

Потому что есть закон Ома и правило Кирхгофа

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

43 минуты назад, HaJl4uk сказал:

почему для каждого сегмента нужен резистор

Потому что светодиоды являются приёмниками тока, такова их физика. Для сравнения, лампы накаливания являются приёмниками напряжения — если бы применили такие индикаторы, им резисторы не потребовались бы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

4 часа назад, Darth Vader сказал:

Нарисуйте электрическую схему для одного знакоместа. Разрисуйте его внутренности до уровня отдельных светодиодов каждого сегмента. Рассчитайте ток коллектора транзистора в цепи общего катода одного знакоместа. Рассчитайте токи каждого светодиода (сегмента) для случая отображения символа "1" и "8". Для расчета предположите, что общий ток катода всего знакоместа делится между всеми горящими сегментами поровну.

Ну и пусть 1 будет светиться гораздо ярче 8. Мне самое главное чтобы выводы не сгорели

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

10 часов назад, HaJl4uk сказал:

Ну и пусть 1 будет светиться гораздо ярче 8.

Это неправильно. Яркость свечения должна быть одинаковая. И это не прихоть, а требования эргономики.

10 часов назад, HaJl4uk сказал:

Мне самое главное чтобы выводы не сгорели

Тогда вы ошиблись форумом. С такими запросами надо искать форум радиогубителей.

Добавлено: вам самому не стыдно потом будет кому-нибудь показать свое устройство, в котором "1" светится сильно ярче "8"?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...