Подключение семисегментного дисплея к Arduino Uno


В этой статье мы рассмотрим подключение семисегментного дисплея (индикатора) к плате Arduino Uno. Дисплей может отображать цифры от 0 до 9. Вначале рассмотрим общие принципы работы семисегментного дисплея.

Подключение семисегментного дисплея к Arduino Uno: внешний вид конструкции

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

Внутренние схемы соединений семисегментных дисплеевВ семисегментном дисплее с общим катодом (ОК) отрицательные выводы всех светодиодов соединены вместе и образую общую землю. В схеме с общим анодом (ОА) положительные выводы всех светодиодов соединены вместе и они образуют общий вывод напряжения постоянного тока (VCC).

На нашем сайте есть достаточно подробные статьи про устройство семисегментных дисплеев и их программированию – они написаны для микроконтроллеров семейства AVR, но я думаю провести аналогию с Arduino вам будет не трудно:

Также можно посмотреть статью о подключении семисегментного дисплея к микроконтроллеру AVR ATmega32.

Необходимые компоненты

  1. Плата Arduino UNO (купить на AliExpress).
  2. Семисегментный дисплей HDSP5503 (2 шт.) – или другой подобный с общим катодом (купить на AliExpress).
  3. Конденсатор 47 пФ, соединенный по питанию (купить на AliExpress).
  4. Напряжение питания 5 В.

Работа схемы

Схема подключения семисегментного дисплея к плате Arduino представлена на следующем рисунке.

Схема подключения семисегментного дисплея к Arduino UnoВ схеме необходимо сделать следующие соединения семисегментного дисплея с платой Arduino:
PIN1 или E к контакту PIN 6 of ARDUINO UNO
PIN2 или D к контакту PIN 5
PIN4 или C к контакту PIN 4
PIN5 или H или DP к контакту PIN 9 /// в этом соединении нет необходимости если мы не будем использовать десятичную точку (decimal point)
PIN6 или B к контакту PIN 3
PIN7 или A к контакту PIN 2
PIN9 или F к контакту PIN 7
PIN10 или G к контакту PIN 8
PIN3 или PIN8 или CC (общий катод) на землю через резистор 100Ω.

Теперь, чтобы лучше понять принцип работы семисегментного дисплея, представим что он как будто подсоединен к порту микроконтроллера, то есть сегмент A соединен с контактом PIN0 микроконтроллера, сегмент B – с контактом PIN1, сегмент А – с контактом PIN3, сегмент А – с контактом PIN4, сегмент А – с контактом PIN5, сегмент А – с контактом PIN6. Общий вывод соединен с землей как показано на следующем рисунке.

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

Семисегментный дисплей легко проверить используя мультиметр в режиме диода. На каждом сегменте дисплея не должно быть напряжения большего 5 В, иначе дисплей будет необратимо поврежден. Чтобы исключить подобное общий резистор должен быть подключен к общему выводу дисплея как показано на выше приведенной схеме нашего устройства.

Теперь, чтобы на семисегментном дисплее отобразить 0, необходимо подать питающие напряжения как показано на рисунке ниже.

Отображение 0 на семисегментном дисплее

То есть чтобы зажечь светодиоды в сегментах “A, B, C, D, E F” (то есть отобразить на дисплее цифру 0) нам необходимо подать питающее напряжение на контакты PIN0, PIN1, PIN2, PIN3, PIN4 and PIN5.

Теперь, если мы хотим отобразить цифру 1 на дисплее, мы должны подать питающее напряжение на сегменты “B, C”, то есть запитать контакты PIN1, PIN2. Эта ситуация показана на следующем рисунке.

Отображение 1 на семисегментном дисплее

То есть, чтобы отобразить какую либо цифру на дисплее, необходимо подать питание на соответствующие контакты дисплея.

Исходный код программы

В представленной программе мы будем последовательно подавать питание на соответствующие контакты семисегментного дисплея, чтобы по очереди отображать на нем цифры от 0 до 9.

Видео, демонстрирующее работу схемы

(1 голосов, оценка: 5,00 из 5)
Загрузка...
5 262 просмотров

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *