Модуль 1 - разрядного индикатора

Описание

Модуль светодиодного индикатора предназначен для отображения цифровой и символьной информации. В основе модуля лежит одноразрядный светодиодный индикатор из 7 красных сегментов и 1 точки.

Для управления матрицей используется микросхема MAX7219. С ее помощью для управления модулем потребуется всего три цифровых вывода контроллера.

Для удобства крепления на плате предусмотрены 2 монтажных отверстия под винты М3.

Технические характеристики

  • Рабочее напряжение: 3,3-5 В
  • Максимальный потребляемый ток: 20 мА

Размеры

Для индикатора 0,8″

  • Размер индикатора: 27х20 мм (0,8″)
  • Габаритные размеры Д х Ш х В: 23 х 33 х 12 мм

Для индикатора 0,56″

  • Размер индикатора: 19х13 мм (0,56″)
  • Габаритные размеры Д х Ш х В: 23 х 33 х 10 мм

Подключение

Модуль индикатора подключается к контроллеру с помощью следующих выводов:

  • + - соединяется с пином питания контроллера (5V или 3,3V)
  • - - соединяется с пином контроллера GND (земля)
  • CLK - соединяется с цифровым пином контроллера
  • LD - соединяется с цифровым пином контроллера
  • DIN - соединяется с цифровым пином контроллера

Файлы для загрузки

Пример подключения и использования

Описание В примере дамонстрируется счётчик цифр от 0 до 9 на одноразрядном индикаторе, в двух вариантах вывода: с точкой и без.

Что нужно

Схема подключения

Скетч для загрузки

#include "LedControl.h" // подключение библиотеки для работы с дисплеем
 
/*
 * Создание объекта для работы с дисплеем с параметрами:
 * - вывод 12 - вывод DIN
 * - вывод 11 - вывод CLK
 * - вывод 10 - вывод LD
 */
LedControl display7segment = LedControl(12, 11, 10); 
 
unsigned long delaytime=500; // время ожидания между выводом символов на дисплей
 
void setup() {
  /*
   * При старте микросхема MAX7219 находится в режиме
   * пониженного энергопотребления,
   * поэтому первым делом нам нужно вывести её 
   * из этого режима.
   */
  display7segment.shutdown(0,false);
  display7segment.setIntensity(0,8); // установим яркость дисплея на 8 - среднее значение (возможно установить от 0 до 15)
  display7segment.clearDisplay(0); // очистка дисплея
}
 
 
/*
 * Данный метод перечисляет 16-ричные числа (от 0 до F)
 * в параметр withPoint - передаётся признак типа Булево
 * включать или нет точку после цифры
 */
void displayDigits(boolean withPoint) {
 
  for(int i=0; i < 16; i++) {
    display7segment.setDigit(0, 0, i, withPoint);
    delay(delaytime);
  }
 
  display7segment.clearDisplay(0);
  delay(delaytime);
}
 
/*
 * В основном цикле выведем сначала цифровые значения от 0 до F
 * без точки, затем эти же значения с точкой.
 */
void loop() { 
 
  displayDigits(false); // вывод значений без точки
  displayDigits(true); // вывод значений с точкой
 
}