ИМС HT16K33 – матричный драйвер светодиодов, также рассчитан на подключение и считывание матричной клавиатуры. Напряжение питания светодиодного драйвера от 4.5 до 5.5 В, ток потребления в активном режиме до 2 мА, а режиме ожидания до 10 мкА. Уровни интерфейса связи с микроконтроллером – 5 В, не совместимы с 3.3 В. Управление осуществляется посредством интерфейса I2C на скорости до 400 кГц, к одной шине I2C можно подключить до 8-и устройств (начальный адрес 0х70).
Дисплей 0.54″ 14-segment LED HT16K33 Backpact представляет собой четырех разрядный 14 сегментный (15 сегмент — запятая на каждом разряде) индикатор которым управляет светодиодный драйвер HT16K33.
Дисплей 0.54″ 14-segment LED HT16K33 Backpact позволяет выводить цифры и различные символы, имеет регулируемую яркость свечения индикаторов (16 уровней), дополнительно обладает функциями STANDBY и BLINK (мигание индикаторов с частотой 2 Гц, 1 Гц и 0,5 Гц) .
Выводы модуля:
- VCC — питание +5 В
- GND — общий
- SDA, SCL — I2C
- UI2C — линия питания подтягивающих резисторов шины I2C (подать +5 В)
Библиотека 4x14LED ( 4x14LED.zip ) рассчитана для работы в среде Arduino IDE и поддерживает платы Arduino Nano и UNO. Библиотека содержит несколько функций, которые позволяют выводить цифры и символы, управлять запятыми.
Для получения кодов символов можно воспользоватся онлайн редактором символов для 14 сегментных индикаторов:
Функции библиотеки:
- led.init(1); // включение и выключение режима STANDBY
- 1 >> ON
- 0 >> STANDBY
- led.brig(10); // управление яркостью свечения индикаторов
- 0…15
- led.blink(1); // управление режимами работы драйвера
- 0 >> DISPLAY_OFF
- 1 >> DISPLAY_ON
- 2 >> BLINK_ON_0.5HZ
- 3 >> BLINK_ON_1HZ
- 4 >> BLINK_ON_2HZ
- led.clear(); // очистка дисплея
- led.print(int_x , dp, -1,-1,-1,-1); // функция вывода цифр и символов
- int_x — число int от 0 до 9999
- dp — положение запятой
- 0 — не используется
- 1 — запятая в первом разряде (старшем)
- 2 — запятая во втором разряде
- 3 — запятая в третьем разряде
- 4 — запятая в четвертом разряде
- -1,-1,-1,-1 — вывод произвольных символов (для получения кода символов воспользуйтесь редактором символов).
- -1 — отрицательное число, вывод произвольных символов запрещен
- 0 — гашение разряда индикатора
- 0x2471 — код символа: любое число в шеснадцатиричном, двоичном и десятичном формате
Ниже показаны несколько примеров вывода чисел и символов:
#include <Wire.h> #include <4x14LED.h> HT4x14LED led; void setup() { Wire.begin(); Serial.begin(9600); led.init(1); led.brig(10); led.blink(1); led.clear(); } void loop() { led.print(1234, 0, -1, -1,-1,-1); delay(1000); }
#include <Wire.h> #include <4x14LED.h> HT4x14LED led; void setup() { Wire.begin(); Serial.begin(9600); led.init(1); led.brig(10); led.blink(1); led.clear(); } void loop() { led.print(1234, 2, -1, -1,-1,-1); delay(1000); }
#include <Wire.h> #include <4x14LED.h> HT4x14LED led; void setup() { Wire.begin(); Serial.begin(9600); led.init(1); led.brig(10); led.blink(1); led.clear(); } void loop() { led.print(24, 0, 0x1201, 0,-1,-1); delay(1000); }
#include <Wire.h> #include <4x14LED.h> HT4x14LED led; void setup() { Wire.begin(); Serial.begin(9600); led.init(1); led.brig(10); led.blink(1); led.clear(); } void loop() { led.print(247, 3, 0x1201, -1,-1,-1); delay(1000); }