|

Семисегментный дисплей на 1 цифру — обзор, подключение

Всем привет, я “ЛотТоп” и сегодня я расскажу про 7-сегментный дисплей для Ардуино.

Дисплей вообще семисегментный, но на дисплее есть «восьмой» сегмент — точечка. Она тоже управляется.

На этом уроке вы узнайте:

  1. Что такое семисегментный дисплей?
  2. Распиновка дисплея.
  3. Подключение дисплея к Arduino и написание кода.

Так что добавьте сайт в избранное, будет очень интересно! Погнали!

Рисунок 1. Одноразрядный семисегментный дисплей (одна цифра)

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

Рисунок 2. Распиновка семисегментного дисплея

Как вы видите, на рисунке 2 изображена распиновка.
В этом дисплее есть 8 сегмент (P), который обозначает точку. Но на ней мы не будем заострять внимание.
У таких дисплеев есть два общих пина COM. Они могут быть либо минусами (общий катод), либо плюсами (общий анод). Но в большинстве случаев это общие минусы, а остальные пины это плюсы.

ПОДКЛЮЧЕНИЕ ДИСПЛЕЯ И НАПИСАНИЕ СКЕТЧА

Вот схема для нашего урока:

ВНИМАНИЕ!!! На каждый плюсовой пин индикатора ОБЯЗАТЕЛЬНО подключите резистор на 220-1000 ом. Если сопротивление будет больше, индикатор будет светиться довольно тускло.

Мы выведем букву “А”

/* Создание Массива(Для упрощения)
// Порядок начинается с:
A,B,C,D,E,F,G
*/
int dispin[7] = {2,3,4,5,6,7,8};
void setup(){
  // Настраиваем пины
  pinMode(dispin[0], OUTPUT);
  pinMode(dispin[1], OUTPUT);
  pinMode(dispin[2], OUTPUT);
  pinMode(dispin[3], OUTPUT);
  pinMode(dispin[4], OUTPUT);
  pinMode(dispin[5], OUTPUT);
  pinMode(dispin[6], OUTPUT);
}
// Создаём функцию для вывода буквы A
void letter_a(){
  // Команда HIGH это включение сегмента на пине
  // Команда LOW это вЫключение сегмента на пине
  digitalWrite(dispin[0], HIGH);
  digitalWrite(dispin[1], HIGH);
  digitalWrite(dispin[2], HIGH);
  digitalWrite(dispin[3], LOW);
  digitalWrite(dispin[4], HIGH);
  digitalWrite(dispin[5], HIGH);
  digitalWrite(dispin[6], HIGH);
}
void loop(){
  letter_a(); // Вызываем функцию вывода буквы А
}

И вот какой результат:

На этом урок завершён. Спасибо за внимание

5/5 - (6 голосов)


Поделись!