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

помогите разобраться семисегментным индикатором

Здравствуйте.

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

 

Вообще проблема следующая...PIC18F252 управляет семисегментым трехразрядным индикатором с общим анодом, схема снизу. Метод управления стандартный, выбор разряда производит контроллер (я изобразил один ключ вместо трех), поставил ключ, но вот ведет себя все странно, по идеи думал, что установив низкий уровень сигнала я заставлю открыться транзистор и тем самым включить нужный разряд...Перед тем как передать управления под власть контроллера я взял и вручную проверил, да все работает ток базы в районе 1-2 мА, поставив контроллер ничего не получилось...напряжение на выводе контроллера оказалось 4,5 В...В чем или в ком косяк??))))

post-3862-1282391072_thumb.jpg

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

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


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

А вывод контроллера сделали выход? TRISС регистр правильно настроен? Соответствующие биты должны быть "0".

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


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

Гость @Ark

Нужно пока временно транзистор исключить из схемы - запитать индикатор от 5В напрямую...

Есть сомнения в правильности номиналов резисторов - 2кОм не слишком много? Токи считали?

И еще. Выход RC2 должен быть "подтянут" к питанию внешним резистором. Иначе при включении

будет непонятно какое состояние транзистора.

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


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

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

 

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


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

Смотрю мультиметром потому что там пока что еще статика))) ну я думаю раз никто не видит серьезных схемотехнических косяков то рискну напрямую цепануть к контроллеру, тем более ток всего 7 мА. Я думаю в динамике ничего не изменится...???

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


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

Смотрю мультиметром потому что там пока что еще статика))) ну я думаю раз никто не видит серьезных схемотехнических косяков то рискну напрямую цепануть к контроллеру, тем более ток всего 7 мА. Я думаю в динамике ничего не изменится...???

 

Ищите в софте "ноль " на выходе порта.

 

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


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

Программа примитивна...И порты вообще нормальные живые дрыгаются, резики разные вешал уже...Вот прям ща буду на прям вешать управление индикатором...

 

void main (void)

{

TRISB = 0x00;

PORTB = 0x00;

TRISC = 0x00;

PORTC = 0x00;

 

 

while (1)

{}

}

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


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

Я бы на вашем месте вообще исключил эти ключи на транзисторах, ИМХО они здесь не нужны (если я конечно правильно понял и семисегментный индикатор на светодиодах и им достаточно 20ма, для нормального свечения) ибо для данного микроконтроллера максимальный выходной сток канала портов до 25ма, как впрочем и для многих других PIC контроллеров.

Только не забудьте токоограничительные резисторы поставить.

Удачи!

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


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

Программа примитивна...И порты вообще нормальные живые дрыгаются, резики разные вешал уже...Вот прям ща буду на прям вешать управление индикатором...

 

void main (void)

{

TRISB = 0x00;

PORTB = 0x00;

TRISC = 0x00;

PORTC = 0x00;

 

 

while (1)

{}

}

 

 

В чем пишите, пользуетесь ли отладчиком? Может у Вас программа вообще в МК не записана???

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


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

Гость wwweider

надо не PORTC использовать для записи а LATC=0 например.

транзисторы выкинуть, токоогр резисторы 100 ом при питании контр в 3.3 в

и 300 ом при 5в

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


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

У вас только один индикатор? Я сейчас разбираюсь с семисегментником с общим катодом.

Транзистор придется оставить, ибо линия порта физически не потянет 7 светодиодов (цифра 8, я не вспоминию про запятую).

У вас транзистор включен скорее для "общего катода". В случае с "общим анодом" направление тока будет "на общий провод" индикатора. Т.е. на "массу".

Вот рабочая схема для "общего катода":

shema1.th.jpg

 

Uploaded with ImageShack.us

у меня работает.

 

P.S. найдите схему включения семисегментника с общим анодом при использовании ТТЛ-логики.

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

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


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

если ещё надо, то могу проект для dspic сбросить... там просто работа с индикатором... и есть пример для работы с тремя индикаторами с помощью таймера и прерываний... чуть что в лс пишите

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


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

У вас только один индикатор? Я сейчас разбираюсь с семисегментником с общим катодом.

Транзистор придется оставить, ибо линия порта физически не потянет 7 светодиодов (цифра 8, я не вспоминию про запятую).

У вас транзистор включен скорее для "общего катода". В случае с "общим анодом" направление тока будет "на общий провод" индикатора. Т.е. на "массу".

Вот рабочая схема для "общего катода":

shema1.th.jpg

 

Uploaded with ImageShack.us

у меня работает.

 

P.S. найдите схему включения семисегментника с общим анодом при использовании ТТЛ-логики.

 

Схема включения транзистора правильная.

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

При динамическом методе яркость индикатора снижается, поэтому номиналы резисторов я бы уменьшил до 200 ом при напряжении 5В (хотя все зависит какую яркость Вы хотите получить).

Напряжение на выводе контроллера может оказаться 4,5 В и через цепь БЭ транзистора и резистор 3.3к. А это значит, что, если RC2, например, в третьем состоянии, то вы будете так же иметь это напряжение на выводе МК. Давно не работал с PIC, по этому предложу попробовать подключить к другому порту (возможно Вы неучли работу периферии через порт С). И еще возможен у Вас маленький косяк при данном подключении, если напряжение на выводе RC2 будет 4В и менее, то транзистор будет открыт постоянно внезависимости от управления МК (правда яркость сегментов немного будет меняться).

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

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


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

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

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

Гость
Ответить в этой теме...

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

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

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

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

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

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