7-сегментный индикатор к Ардуино
Как это проделать практически? Если говорить простыми словами, тут важна комбинация включения ∕ выключения определенных сегментов. Для цифры «1», например, включаем B и C (так отображаются для наглядности компоненты), а для остальных значений смотрим комбинации в таблице:
Для справки! Отличительными характеристиками 7-сегментных цифровых индикаторов можно назвать: количество разрядов в одном корпусе (одноразрядные, 2-разрядные, 3-разрядные, 4-разрядные), цвет отображаемых данных (красный, зелёный), высота знаков (7,62 - 45 мм). Кроме сегментов с цифрами, некоторые устройства могут иметь одну или две точки - разделители дробных чисел.
Принципиальная схема подключения будет выглядеть следующим образом:
В ней мы использовали контроллер Ардуино Uno, цифровой одноразрядный индикатор (можно заменить на четырехразрядный), макетную плату, соединительные провода и резисторы.
Распиновка 4-разрядного индикатора выглядит так:
С железом разобрались, теперь приступим к программированию. Для тестирования и простой проверки можно использовать стандартный вариант – готовый скетч Blink (Файл/Примеры/Basics/Blink). Главное - устанавливаем в качестве проверочного светодиода любой из используемых портов, например, четвертый:
int led4 = 4;
Для вывода сложных цифр можно прописать уже иной код. Разберем на примере скетча для «0»:
#define FIRST_SEGMENT_PIN 2
#define SEGMENT_COUNT 8
byte number0 = 0b01110111;
void setup() {
for (int i = 0; i < SEGMENT_COUNT; ++i)
pinMode(i + FIRST_SEGMENT_PIN, OUTPUT);
}
void loop() {
int mask = number0;
// для каждого из 7 сегментов индикатора определяем:
// должен ли он быть включён.
// Для этого считываем бит, соответствующий текущему
// сегменту «i». Истина — он установлен (1), ложь — нет (0)
for (int i = 0; i < SEGMENT_COUNT; ++i) {
boolean enableSegment = bitRead(mask, i);
// включаем/выключаем сегмент на основе полученного значения
digitalWrite(i + FIRST_SEGMENT_PIN, enableSegment);
}
}
Как всегда, при проектировании и работе с подобными программными кодами, облегчить этапы программирования (особенно для начинающих юзеров) поможет специализированная библиотека. В этом конкретном случае – fDigitsSegtPin. Софт можно инсталлировать при помощи менеджера библиотек. Подключите его (как мы ранее описывали в наших статьях), укажите все выводы по порядку (!!) и затем залейте скетч:
#include <fDigitsSegtPin.h>
fDigitsSegtPin Display(10, 9, 13, 8, 12, 3, 7, 4, 5, 11, 6, 2);
void setup() {
Display.begin();
Display.doPrint_lastDot = 1;
Display.doPrint_firstZero = 1;
Display.doReport_overRange = 0;
}
void loop() {
Display.print(1234);
}
Подключение семисегментного индикатора к Arduino не является особо сложным процессом, но требует определенных навыков и терпения. Схем в сети очень много, библиотеки также имеются, потому «одолеть» азы под силу каждому! Удачи вам в этом!
Сегодня поговорим о том, как воплотить в жизнь подключение FPM10A к Arduino, что это за модуль, где используется, каковы параметры его работы и т.д. Речь идет...
Тема нашей сегодняшней статьи – подключение датчика сердечного ритма AD8232 к Ардуино. Про целесообразность и практичность подобного устройства много говорить...
Модуль энкодер KY-040 является электромеханическим устройством, а точнее - датчиком угла поворота и вращения оси различных девайсов. Непосредственно сам прибор...
Сегодня рассматриваем подключение VL53L0X к Ардуино, а также основные особенности этого устройства. Датчик выбран нами для обзора не случайно – он вполне...
В этой статье мы рассмотрим подключение ADS1115 к Ардуино. Речь идет о 16-битном аналого-цифровом преобразователе, оснащенном 4 входами непосредственно для...