Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Выход с открытым стоком
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему
Antarius
Подскажите чайнику.
Есть контроллер PIC 16F876A. Есть 6 штук семисегментных светодиодных индикаторов с общим катодом.
Задача - вывести 6 значное число.

Подключено классически - управление сегментами на порте C0 - С7 через резисторы 470 Ом.
Включение цифры (управление катодами) на порте A0-A5, с порта А на базы транзисторов КТ315, включающих и отключающих цепи "Катод индикатора - Общий".

В общем все работает, кроме индикатора, подключенного катодом к PortA.4.
У него видите ли открытый сток.

Вопрос - как управлять катодом индикатора с этого порта?

ЗЫ.
Схему наверное не стоит рисовать, классика?
aaarrr
Цитата(Antarius @ Jun 13 2008, 15:11) *
Вопрос - как управлять катодом индикатора с этого порта?

Pull-up подвесте на этот вывод.
Antarius
Цитата(aaarrr @ Jun 13 2008, 15:15) *
Pull-up подвесте на этот вывод.

Я чайник!
В смысле подключить между выводом и базой транзистора резистор?
Или через резистор от порта непосредственно на катод индикатора?
Или включить программно через Option_reg, но там вроде pull up только для порта B?
aaarrr
Между выводом и базой транзистора и так должен быть резистор, иначе тр-ру наступит кирдык. Pull-up нужно подключить между выводом порта и "+" питания. Эти резисторы могут быть по 4.7к.
А резисторы, включенные между портом C и индикатором, должны быть поменьше - 470Ом.
Antarius
Цитата(aaarrr @ Jun 13 2008, 15:30) *
Между выводом и базой транзистора и так должен быть резистор, иначе тр-ру наступит кирдык. Pull-up нужно подключить между выводом порта и "+" питания. Эти резисторы могут быть по 4.7к.
А резисторы, включенные между портом C и индикатором, должны быть поменьше - 470Ом.

Ага!
a14.gif

Спасибо, все получилось.
Ой, от порта С к индикаторам как раз 470 Ом и стоят, поправил первый пост.
evc
Цитата(aaarrr @ Jun 13 2008, 15:30) *
Между выводом и базой транзистора и так должен быть резистор, иначе тр-ру наступит кирдык. ...

Ничего не наступит (открытый сток!), достаточен резистор между выводом порта и "+" питания. Базу транзистора можно подключить напрямую к порту.
aaarrr
Цитата(evc @ Jun 13 2008, 15:47) *
Ничего не наступит (открытый сток!), достаточен резистор между выводом порта и "+" питания. Базу транзистора можно подключить напрямую к порту.

Так у остальных-то не открытый сток.
Antarius
А почему субъективно кажется, что эта цифра, которая подключена к выводу с открытым стоком, светится чуть менее ярко, чем другие.
Pull-Up поставил 4,7кОм. Резистор с базы убрал.
Транзисторы и индикаторы менял на другие, все равно светится не так ярко.
aaarrr
Странно: должен бы открываться со свистом. А у остальных в базах резисторы поставили?
Поставьте 1К.
Antarius
Цитата(aaarrr @ Jun 13 2008, 17:48) *
Странно: должен бы открываться со свистом. А у остальных в базах резисторы поставили?
Поставьте 1К.

Ага, у других все как и было.
Поставил 1кОм, яркость все равно меньше...
Воткнул другой транзистор - все равно.
evc
Цитата(Antarius @ Jun 13 2008, 18:12) *
...Воткнул другой транзистор - все равно.


Проверьте длину открывающего импульса на базе транзистора. Такая же, как у остальных?
Antarius
Цитата(evc @ Jun 14 2008, 10:56) *
Проверьте длину открывающего импульса на базе транзистора. Такая же, как у остальных?

К сожалению нечем.
Antarius
Хотя, есть же компьютер smile.gif

Если верить PowerGraph и звуковухе с дискретизацией 192кГц, то длительность импульсов на базах всех транзисторов одинаковая, равная 4.115 мс - см. левый эскиз. Визуально, амплитуда тоже одинаковая на всех выводах. Так почему же один индикатор светится менее ярко?

Мне стало любопытно и я посмотрел что происходит на выводе порта C, управляющего сегментами индикаторов. На дисплее "000000", значит, для каждого из шести индикаторов формируется одинаковое число "0" и выставляет в порт C. Следовательно, на выводе, подключенного к светящемуся сегменту, будет или прямая +5В, или прямоугольная "синусоида" (как она называется правильно?). Логично?

А там вот это (показываю период графика, далее он повторяется), см. правый эскиз:
Почему?

ЗЫ, извините за столько вопросов, просто любопытно, я чайник же)
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.