Как соединить цифровой ЖК экран с драйвером HT1621B?

Как можно сделать значения на жидкокристаллическом дисплее, управляемом драйвером ht1621b, динамическими, например, чтобы отображались значения секунд, и как можн объединить две цифры дисплея, чтобы можно было выводить одной командой двузначное число?
Изображение к вопросу
  • 9 декабря 2023 г. 14:46
Ответы на вопрос 2
1. Подключение цифрового ЖК экрана с драйвером HT1621B:
   - Подключите питание экрана, обычно это 5 В.
   - Подключите контроллер HT1621B к микроконтроллеру или другому источнику данных, используя протокол коммуникации, такой как SPI или I2C. Убедитесь, что сигналы передачи данных, такие как SDA (Serial Data) и SCL (Serial Clock), правильно подключены.

2. Задание динамических значений на ЖК экране:
   - В драйвере HT1621B есть несколько режимов работы сегментов ЖК экрана. Чтобы отображать значения секунд, нужно задать нужные сегменты для каждой из цифр.
   - Для каждой цифры создайте буфер битовых данных, отображающих нужные сегменты. Затем передайте этот буфер на ЖК экран, используя соответствующую команду или функцию драйвера HT1621B.

3. Объединение двух цифр в одно двузначное число:
   - ЖК экраны, управляемые HT1621B, обычно имеют несколько разрядов, где каждый разряд состоит из сегментов, формирующих цифру. Для создания двузначного числа можно связать сегменты двух цифр, чтобы они отображались близко друг к другу.
   - Создайте два буфера битовых данных для каждой цифры и объедините их в одном регистре или массиве битов. Затем передайте этот регистр или массив на ЖК экран, чтобы отобразить двузначное число.

Для более подробной информации и примеров реализации рекомендуется обратиться к документации и руководству по использованию драйвера HT1621B и ЖК экрана, который вы используете.
Для объединения двух цифр в одну вам нужно просто в своей функции принимать число не больше 99, разбивать на цифры и выводить на соответствующие экраны. 
примерно так:

Для таймера же я бы предложил вам реализовать функцию (а может даже класс?), которая каждые N тиков таймера микроконтроллера (или же при каждом прерывании аппаратного таймера, если они у вас настроены) будет отображать на дисплее новое число.

Вот вам ооочень неоптимальный, но рабочий, для микроконтроллера пример взятый абсолютно с полтолка.
При этом у вас должен быть какой-то цикл событий или что-то ещё, который будет постоянно вызывать updateTimer у данного таймера.

Среда Ардуино поддерживает аппаратные таймеры, но можно и просто в функции loop постоянно вызывать updateTimer.

Похожие вопросы