Программа Сервисный Центр
0

Восьмивыводной микроконтроллер управляет тремя семисегментными индикаторами


Управлять семисегментным дисплеем может даже микроконтроллер с ограниченным количеством выводовCharaf Laissoub, ФранцияДля управления тремя семисегментными светодиодными индикаторами, в типичном случае, потребуется 10 линий ввода/вывода, и это без децимальной точки. На первый взгляд, может показаться, что сформулированную в заголовке задачу решить без дешифратора двоичного кода в семисегментный или без параллельно-последовательного сдвигового регистра невозможно.На Рисунке 1 показано, как сделать схему, управляющую 21 светодиодом из которых сформирован трехразрядный псевдо-семисегментный дисплей.Листинг ассемблерного кода можно скачать здесь. Программа подойдет для любого 8-выводного микроконтроллера семейства PIC12xx фирмы Microchip.
Восьмивыводной микроконтроллер управляет тремя семисегментными индикаторами

Кликните для увеличения
  ЗАМЕЧАНИЯ: Устанавливать R1 необязательно, т.к. вывод GP3 всегда сконфигурирован входом. Резистор нужен только как страховка, на случай программной ошибки.
Используя 21 сверхъяркий плоский светодиод, расположите их таким образом, чтобы образовать трехразрядный псевдо-семисегментный индикатор.
 Рисунок 1. Восьмивыводной микроконтроллер может управлять тремя семисегментными индикаторами.
Этот код можно адаптировать к любому микроконтроллеру, например, Atmel или STMicroelectronics, выполняя следующие шаги: Создать для 10 чисел таблицу перекодировки в семисегментный код (см. таблицу «Code7Segment»).
  Создать таблицу перекодировки для 3×7 значений последовательных конфигураций линий ввода/вывода. В каждой конфигурации в определенный момент времени управляется один светодиод в каждой цифре, т.к. только на одном выходе высокий уровень напряжения и на одном – низкий (см. таблицу «Cfg2LinesOut»).
  Создать таблицу перекодировки для 3×7 значений последовательных состояний «1» и «0» линий ввода/вывода, включающих в каждый момент времени только один светодиод в каждой цифре (см. таблицу «Light1LED»).
  Подпрограмма DispDigit осуществляет семикратный циклический правый сдвиг семисегментного кода цифры через флаг переноса. При установлении флага переноса, каждый раз вызывается подпрограмма LEDon.
  Подпрограмма LEDon активизирует светодиод, связанный с конфигурационным кодом таблицы «Cfg2LinesOut» и зажигает его, в соответствии с кодом состояния, записанным в таблице «Light1LED». Подпрограмма заканчивается переходом на процедуру критической задержки 1…3 мс. Увеличение этой задержки усилит мерцание светодиодов, а уменьшение снизит яркость их свечения.
  Повторяйте шаги 4 и 5 для единиц, десятков и сотен.На Рисунке 2 показано, как подключить одну семисегментную цифру к микроконтроллеру серии PIC10F2xx, имеющему лишь три линии ввода/вывода. Соответствующий ассемблерный листинг можно скачать отсюда.
Восьмивыводной микроконтроллер управляет тремя семисегментными индикаторами
  ЗАМЕЧАНИЯ: Устанавливать R1 необязательно, т.к. вывод GP3 всегда сконфигурирован входом. Резистор нужен только как страховка, на случай программной ошибки.
Используя семь сверхъярких плоских светодиодов, расположите их таким образом, чтобы образовать псевдо-семисегментный индикатор.
 Рисунок 2. Микроконтроллеры серии PIC10F2xx могут управлять семисегментным индикатором с помощью трех выводов.
На английском языке: Arrange LEDs as seven-segment displaysПеревод: AlexAAN по заказу РадиоЛоцман

По материалам сайта www.rlocman.ru

 
 
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии в данной новости.
 
Обратная связь

Наши партнеры

 

Опросы

Есть ли справедливость в жизни?
Конечно есть, уверен!
Вроде как должна быть, но...
Затрудняюсь ответить...
Какая справедливость? О чем Вы?
Эх.., нет правды на свете!

 

Облако тегов

Требуется для просмотраFlash Player 9 или выше.

Показать все теги
 

Календарь публикаций

«    Декабрь 2016    »
ПнВтСрЧтПтСбВс
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 
 

Архив новостей

Декабрь 2016 (1)
Ноябрь 2016 (42)
Октябрь 2016 (34)
Сентябрь 2016 (38)
Август 2016 (34)
Июль 2016 (36)
 
Наверх Сервисные мануалы Даташиты Ремонт LCD, ЖК телевизоров LG Samsung Скрипт программы "Сервисный центр"