Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Удаленная работа
Помощь проекту

Микроконтроллер управляет 7 сегментным индикатором

Для управления тремя семисегментными светодиодными индикаторами, в типичном случае, потребуется 10 линий ввода/вывода, и это без децимальной точки. На первый взгляд, может показаться, что сформулированную в заголовке задачу решить без дешифратора двоичного кода в семисегментный или без параллельно-последовательного сдвигового регистра невозможно.

На рисунке показано, как сделать схему, управляющую 21 светодиодом из которых сформирован трехразрядный псевдо-семисегментный дисплей. 



Программа подойдет для любого 8-выводного микроконтроллера семейства PIC12xx фирмы Microchip.

ЗАМЕЧАНИЯ: Устанавливать R1 необязательно, т.к. вывод GP3 всегда сконфигурирован входом. Резистор нужен только как страховка, на случай программной ошибки.  Используя 21 сверхяркий плоский светодиод, расположите их таким образом, чтобы образовать трехразрядный псевдо-семисегментный индикатор. 

Этот код можно адаптировать к любому микроконтроллеру, например, Atmel или STMicroelectronics, выполняя следующие шаги:

  • Создать для 10 чисел таблицу перекодировки в семисегментный код (см. таблицу «Code7Segment»).
  • Создать таблицу перекодировки для 3x7 значений последовательных конфигураций линий ввода/вывода. В каждой конфигурации в определенный момент времени управляется один светодиод в каждой цифре, т.к. только на одном выходе высокий уровень напряжения и на одном – низкий (см. таблицу «Cfg2LinesOut»). 
  • Создать таблицу перекодировки для 3x7 значений последовательных состояний «1» и «0» линий ввода/вывода, включающих в каждый момент времени только один светодиод в каждой цифре (см. таблицу «Light1LED»).
  • Подпрограмма DispDigit осуществляет семикратный циклический правый сдвиг семисегментного кода цифры через флаг переноса. При установлении флага переноса, каждый раз вызывается подпрограмма LEDon. 
  • Подпрограмма LEDon активизирует светодиод, связанный с конфигурационным кодом таблицы «Cfg2LinesOut» и зажигает его, в соответствии с кодом состояния, записанным в таблице «Light1LED». Подпрограмма заканчивается переходом на процедуру критической задержки 1…3 мс. Увеличение этой задержки усилит мерцание светодиодов, а уменьшение снизит яркость их свечения. 
  • Повторяйте шаги 4 и 5 для единиц, десятков и сотен. 


На рисунке показано, как подключить одну семисегментную цифру к микроконтроллеру серии PIC10F2xx, имеющему лишь три линии ввода/вывода. Соответствующий ассемблерный листинг можно скачать отсюда.



ЗАМЕЧАНИЯ: Устанавливать R1 необязательно, т.к. вывод GP3 всегда сконфигурирован входом. Резистор нужен только как страховка, на случай программной ошибки. Используя семь сверхярких плоских светодиодов, расположите их таким образом, чтобы образовать псевдо-семисегментный индикатор. В архиве по этой ссылке - исходники для pic10F2xx и для pic12xx. 


C этой схемой также часто просматривают:

Часы-будильник с ЖК-индикатором
PIC-контроллер управляет электродвигателем
Часы "Микроконтроллер и 7 светодиодов"
Светодиодный КУБ 5x5x5
Неугомонная шестеренка на PIC16F84
Световые эффекты на основе цифрового генератора шума
Автомат световых эффектов на микроконтроллере

Главные категории

Arduino


Аудио


В Вашу мастерскую


Видео


Для автомобиля


Для дома и быта


Для начинающих


Зарядные устройства


Измерительные приборы


Источники питания


Компьютер


Медицина и здоровье


Микроконтроллеры


Музыкантам


Опасные, но интересные конструкции


Охранные устройства


Программаторы


Радио и связь


Радиоуправление моделями


Световые эффекты


Связь по проводам и не только...


Телевидение


Телефония


Узлы цифровой электроники


Фототехника


Шпионская техника



Реклама на KAZUS.RU




Последние поступления

Подключение энкодера к микроконтроллеру PIC

Счётчик людей в помещении, управляющий освещением

Велокомпьютер на микроконтроллере PIC16F628A

Устройство ввода-вывода на микроконтроллера

Два термометра на PIC16F628A и DS18B20

Светодиодные часы с циферблатом

Двоичные часы

Два вывода микроконтроллера PIC управляют шестью светодиодами

Цифровой программируемый таймер на микроконтроллере PIC16F628A

Устройство рисования в воздухе на ATtiny2313



© 2003—2017 «KAZUS.RU - Электронный портал»