реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Динамическая индикация
ClipArt
сообщение Nov 23 2010, 17:58
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 22
Регистрация: 19-11-10
Пользователь №: 61 024



Пытаюсь реализовать вывод 4 семисегментных индикатора. Использую сдвиговый регистр 74HC164 и транзисторные ключи. Номиналы резисторов на базах 1 кОм.

Моделирую в протеусе, не работает. Проблема в транзисторном ключе, он открыт независимо от того, есть ли ток на базе.

Семисегментный индикатор с общим катодом.

Микроконтроллер ATtiny2313. Файл проекта прилагается.

Схема:

Прикрепленные файлы
Прикрепленный файл  7seg.zip ( 16.88 килобайт ) Кол-во скачиваний: 41
 
Go to the top of the page
 
+Quote Post
Glupen'
сообщение Nov 23 2010, 19:08
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 78
Регистрация: 23-05-07
Пользователь №: 27 918



ну так в зипе только DSN, а прошивки нет... sad.gif
И ток не "НА БАЗЕ", а "втекает в базу".

Сообщение отредактировал Glupen' - Nov 23 2010, 19:10
Go to the top of the page
 
+Quote Post
ClipArt
сообщение Nov 23 2010, 19:43
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 22
Регистрация: 19-11-10
Пользователь №: 61 024



Добавил тестовую прошивку. Пишем в регистр единичку и циклично сдвигаем ее. Должны гореть все сегменты старшей цифры. Но горят все цифры.
Прикрепленные файлы
Прикрепленный файл  7seg.zip ( 29.76 килобайт ) Кол-во скачиваний: 50
 
Go to the top of the page
 
+Quote Post
Marian
сообщение Nov 24 2010, 14:04
Сообщение #4


Частый гость
**

Группа: Участник
Сообщений: 148
Регистрация: 23-02-07
Пользователь №: 25 618



Для отладки, 1,2,3,4 выводы индикатора подтяните через резисторы 1 ком к +5В
Дальше сами все поймете
Go to the top of the page
 
+Quote Post
ClipArt
сообщение Nov 24 2010, 16:34
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 22
Регистрация: 19-11-10
Пользователь №: 61 024



Цитата(Marian @ Nov 24 2010, 17:04) *
Для отладки, 1,2,3,4 выводы индикатора подтяните через резисторы 1 ком к +5В
Дальше сами все поймете


Спасибо, теперь работает.
Go to the top of the page
 
+Quote Post
ClipArt
сообщение Dec 17 2010, 09:45
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 22
Регистрация: 19-11-10
Пользователь №: 61 024



Собрал схему с учетом поправки. Однако в реальности девайс работает некорректно. Переключения между разрядами работают, все в порядке. Глюк в работе регистра сдвига.
Дело в том, что при подаче разных значений на линию данных в результате получаю мусор.

Опишу работу устройства.

Если последовательно подать на линию данных, например, 8 единиц, то результат корректный. Сегменты индикатора загораются в правильной последовательности.

Если же производить изменение уровня на линии данных, то есть, к примеру, подать 3 единицы и 4 нуля, то сначала зажигаются 3 ожидаемых сегмента, а потом начинается непонятное мне действие. Отключаются ранее включенные сегменты, причем не все. Загораются следующие сегменты, правда тоже не все. Но уровень на ножках A и B регистра низкий! При последующих включениях устройства такая последовательность действий повторяется точно в таком же порядке.

В чем может быть дело? Дело в регистре или я что-то неправильно делаю?
Go to the top of the page
 
+Quote Post
MrYuran
сообщение Dec 17 2010, 10:20
Сообщение #7


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



Ваша комбинация нулей и единиц продвигается от начала регистра к концу.
Если тактовая частота на входе С будет достаточно большой, вы не заметите этих морганий и увидите только конечную комбинацию.
А вообще лучше на время "проталкивания" отключать выходы, для этого 1 на входы разрешения (1 и 2, которые по "и") нужно подавать единицу, только когда уже всё устаканится


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
ClipArt
сообщение Dec 17 2010, 10:59
Сообщение #8


Участник
*

Группа: Участник
Сообщений: 22
Регистрация: 19-11-10
Пользователь №: 61 024



Все, теперь понятно. Я неправильно понимал работу регистра.
Go to the top of the page
 
+Quote Post
Marian
сообщение Dec 17 2010, 11:32
Сообщение #9


Частый гость
**

Группа: Участник
Сообщений: 148
Регистрация: 23-02-07
Пользователь №: 25 618



Цитата(ClipArt @ Nov 24 2010, 22:34) *
Спасибо, теперь работает.

В реальной схеме этих резисторов можете не ставить. Это особенности протеуса.
Go to the top of the page
 
+Quote Post
Diusha
сообщение Dec 18 2010, 02:08
Сообщение #10


Вечный студент
****

Группа: Участник
Сообщений: 500
Регистрация: 11-09-06
Из: Питер
Пользователь №: 20 262



Цитата(MrYuran @ Dec 17 2010, 16:20) *
Если тактовая частота на входе С будет достаточно большой, вы не заметите этих морганий и увидите только конечную комбинацию.

Очень даже заметим, особенно в темноте (это будет выглядеть как тусклое свечение сегментов, которые не должны гореть)

Цитата(MrYuran @ Dec 17 2010, 16:20) *
А вообще лучше на время "проталкивания" отключать выходы, для этого 1 на входы разрешения (1 и 2, которые по "и") нужно подавать единицу, только когда уже всё устаканится

1 и 2 это не входы разрешения, а входы данных, у 164-го нет входа разрешения.
На время проталкивания нужно закрывать все транзисторы

Сообщение отредактировал Diusha - Dec 18 2010, 02:48
Go to the top of the page
 
+Quote Post
ClipArt
сообщение Dec 18 2010, 07:46
Сообщение #11


Участник
*

Группа: Участник
Сообщений: 22
Регистрация: 19-11-10
Пользователь №: 61 024



Цитата
На время проталкивания нужно закрывать все транзисторы


Видимо это решит проблему тусклого свечения выключенных сегментов? Надо попробовать, спасибо за хорошую мысль.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 07:42
Рейтинг@Mail.ru


Страница сгенерированна за 0.01444 секунд с 7
ELECTRONIX ©2004-2016