Например TDA7294

Форум РадиоКот • Просмотр темы - Помогите подключить Led-матрицу к ардуино
Форум РадиоКот
Здесь можно немножко помяукать :)

Текущее время: Сб дек 27, 2025 17:15:53

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 21 ]  1,  
Автор Сообщение
Не в сети
 Заголовок сообщения: Помогите подключить Led-матрицу к ардуино
СообщениеДобавлено: Вс май 19, 2024 16:26:17 
Родился

Зарегистрирован: Вс май 19, 2024 16:18:12
Сообщений: 9
Рейтинг сообщения: 0
Доброго времени суток. Есть LED-матрица Q8S5V5 (эта матрица обычно используется для создания рекламы). Можно ли её "подружить" с Arduino Nano, выводить текст, время или любую информацию? Если это возможно, то как её подключить?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите подключить Led-матрицу к ардуино
СообщениеДобавлено: Вс май 19, 2024 16:52:30 
Друг Кота

Карма: 67
Рейтинг сообщений: 1964
Зарегистрирован: Сб дек 18, 2021 19:25:32
Сообщений: 12867
Рейтинг сообщения: 0
Можно. Программировать умеете?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите подключить Led-матрицу к ардуино
СообщениеДобавлено: Вс май 19, 2024 16:57:42 
Родился

Зарегистрирован: Вс май 19, 2024 16:18:12
Сообщений: 9
Рейтинг сообщения: 0
Программировать плохо умею, боюсь моих познаний не хватит.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите подключить Led-матрицу к ардуино
СообщениеДобавлено: Вс май 19, 2024 17:07:25 
Друг Кота

Карма: 67
Рейтинг сообщений: 1964
Зарегистрирован: Сб дек 18, 2021 19:25:32
Сообщений: 12867
Рейтинг сообщения: 0
ну а документация на этот модуль есть?


Вернуться наверх
 
Эиком - электронные компоненты и радиодетали
Не в сети
 Заголовок сообщения: Re: Помогите подключить Led-матрицу к ардуино
СообщениеДобавлено: Вс май 19, 2024 17:26:14 
Родился

Зарегистрирован: Вс май 19, 2024 16:18:12
Сообщений: 9
Рейтинг сообщения: 0
Это будет звучать достаточно глупо, но схемы на эту матрицу нет. Я изначально хотел подключить её по схеме (https://wiki.iarduino.ru/page/rgb-matrix/), указанной на этом сайте, но там нет ардуино нано (что не настолько критично, как я понимаю), и самое главное не хватает нескольких контактов на моей матрице. (фото моей матрицы: https://ibb.co/wpz47DR)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите подключить Led-матрицу к ардуино
СообщениеДобавлено: Вс май 19, 2024 17:45:57 
Друг Кота

Карма: 67
Рейтинг сообщений: 1964
Зарегистрирован: Сб дек 18, 2021 19:25:32
Сообщений: 12867
Рейтинг сообщения: 0
Насколько я вижу, и там и там HUB75
Какое-то описание и ссылки на примеры есть здесь: https://static.chipdip.ru/lib/244/DOC004244754.pdf
Ну, писать за Вас код я не буду, а вот помочь разобраться, если начнёте сами - это возможно.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите подключить Led-матрицу к ардуино
СообщениеДобавлено: Вс май 19, 2024 17:51:53 
Родился

Зарегистрирован: Вс май 19, 2024 16:18:12
Сообщений: 9
Рейтинг сообщения: 0
Мне будет достаточно, если поможете просто подключить матрицу к ардуинке, потому что я не совсем понимаю, чем заменяются недостающие контакты.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите подключить Led-матрицу к ардуино
СообщениеДобавлено: Вс май 19, 2024 18:18:35 
Прорезались зубы

Карма: -11
Рейтинг сообщений: -41
Зарегистрирован: Ср апр 17, 2019 01:53:29
Сообщений: 231
Рейтинг сообщения: 0
по аналогии с P10
https://habr.com/ru/articles/404867/


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите подключить Led-матрицу к ардуино
СообщениеДобавлено: Вс май 19, 2024 18:18:48 
Друг Кота

Карма: 67
Рейтинг сообщений: 1964
Зарегистрирован: Сб дек 18, 2021 19:25:32
Сообщений: 12867
Рейтинг сообщения: 0
недостающие - это какие?
Напишите сравнение контактов, какие у HUB75, а какие - у Вашей матрицы


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите подключить Led-матрицу к ардуино
СообщениеДобавлено: Вс май 19, 2024 19:43:48 
Нашел транзистор. Понюхал.
Аватар пользователя

Карма: 6
Рейтинг сообщений: 57
Зарегистрирован: Вс мар 18, 2018 22:12:38
Сообщений: 189
Рейтинг сообщения: 0
Мне будет достаточно, если поможете просто подключить матрицу к ардуинке, потому что я не совсем понимаю, чем заменяются недостающие контакты.

1. УНО или НАНО абсолютно без разницы
2. разберитесь какая у вас матрица 32х64 или 16х32(32х32 исключается т.к. она была бы квадратной)

Добавлено after 1 hour 16 minutes 54 seconds:
подозреваю, что у вас матрица 16х32
в этом случае контакт "D", которого у вас нет, вам и не нужен
https://wiki.iarduino.ru/page/rgb-matrix/
Цитата:
При объявлении объекта необходимо указать требуемое разрешение:

RGBmatrixPanel matrix(A, B, C, CLK, LAT, OE, false); // Матрица 32х16
RGBmatrixPanel matrix(A, B, C, D, CLK, LAT, OE, false); // Матрица 32х32

а контакты обозначенные у вас "N" - есть "GND", в чем вы можете убедиться прозвонив их с "-" разъема питания

_________________
все гениальное просто. чем проще - тем надежнее


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите подключить Led-матрицу к ардуино
СообщениеДобавлено: Пн май 20, 2024 10:35:17 
Родился

Зарегистрирован: Вс май 19, 2024 16:18:12
Сообщений: 9
Рейтинг сообщения: 0
Я сейчас посмотрел в интернете, и действительно, у меня матрица 32x16. "D" я закомментировал и вырезал, как требуется. Но куда подключать контакты "LAT" и "CLK"? (Крупный план разъёма: https://ibb.co/MGxsV3X).Для проверки я "LAT" подключил к "L" а "CLK" к "S" матрица заработала, но не корректно выводит изображение.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите подключить Led-матрицу к ардуино
СообщениеДобавлено: Пн май 20, 2024 12:09:09 
Нашел транзистор. Понюхал.
Аватар пользователя

Карма: 6
Рейтинг сообщений: 57
Зарегистрирован: Вс мар 18, 2018 22:12:38
Сообщений: 189
Рейтинг сообщения: 0
что значит не корректно?
oleg-maxsimus, загружайте изображения сразу, не нужно их куда то выкладывать, а потом давать ссылки на сторонние ресурсы
Изображение

_________________
все гениальное просто. чем проще - тем надежнее


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите подключить Led-матрицу к ардуино
СообщениеДобавлено: Пн май 20, 2024 12:33:47 
Родился

Зарегистрирован: Вс май 19, 2024 16:18:12
Сообщений: 9
Рейтинг сообщения: 0
На пробу взял я код для вывода бегущей строки. Анимация движения текста есть, но вместо самого текста выводятся квадратики и различные непонятные фигуры, но не буквы. Или же другой код: вывод гаммы цвета в круге. Вместо круга выводятся два прямоугольника с 'вырезом'

Изображение


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите подключить Led-матрицу к ардуино
СообщениеДобавлено: Пн май 20, 2024 12:38:31 
Друг Кота

Карма: 67
Рейтинг сообщений: 1964
Зарегистрирован: Сб дек 18, 2021 19:25:32
Сообщений: 12867
Рейтинг сообщения: 0
Самостоятельно выведите одну точку в определённом заданном месте. Когда этого добьётесь, поймёте, как это работает (можно будет понять искажение) и все вопросы отпадут. Кроме того. надо всегда оставлять какую-то часть сомнений на исправность матрицы и корректность чужой программы и совместимость их и даже на то, что китайцы ошиблись с назначением выводов, а потому проследить их до ближайших чипов и убедиться.


Последний раз редактировалось Martian Пн май 20, 2024 12:47:37, всего редактировалось 1 раз.

Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите подключить Led-матрицу к ардуино
СообщениеДобавлено: Пн май 20, 2024 12:43:34 
Нашел транзистор. Понюхал.
Аватар пользователя

Карма: 6
Рейтинг сообщений: 57
Зарегистрирован: Вс мар 18, 2018 22:12:38
Сообщений: 189
Рейтинг сообщения: 0
выложите ВАШИ скетчи, которые загружаете в ардуину

_________________
все гениальное просто. чем проще - тем надежнее


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите подключить Led-матрицу к ардуино
СообщениеДобавлено: Пн май 20, 2024 12:54:23 
Родился

Зарегистрирован: Вс май 19, 2024 16:18:12
Сообщений: 9
Рейтинг сообщения: 0
На вывод текста:
Код:
#include <RGBmatrixPanel.h>                                   // Подключаем библиотеку для работы с матрицей

// Используем эти выводы, если матрица подключена к Arduino UNO
#define CLK  8
#define OE   9
#define LAT 10

// Используем эти выводы, если матрица подключена к Arduino MEGA
//#define CLK 11
//#define OE   9
//#define LAT 10

// Используем эти выводы, если матрица подключена к Piranha ULTRA
//#define CLK 11                                                // Вывод Arduino, к которому подключён вывод CLK матрицы
//#define OE  12                                                // Вывод Arduino, к которому подключён вывод OE матрицы
//#define LAT 13                                                // Вывод Arduino, к которому подключён вывод LAT матрицы

#define A   A0                                                // Вывод Arduino, к которому подключён вывод A матрицы
#define B   A1                                                // Вывод Arduino, к которому подключён вывод B матрицы
#define C   A2                                                // Вывод Arduino, к которому подключён вывод C матрицы
//#define D   A3                                                // Вывод Arduino, к которому подключён вывод D матрицы

RGBmatrixPanel matrix(A, B, C, CLK, LAT, OE, true);    // Объявляем объект matrix для работы с матрицей 64х32, всключаем двойную буферизацию

const char str[] = "Test Text!";                   // Массив для хранения текста, выводимого на матрицу
int16_t    textX         = matrix.width();                    // Переменная с X-координатой текста

// Минимальное значение координаты текста (количество символов в строке, помноженное на ширину одного символа), после которой текст начнёт повторно выводиться
int16_t    textMin       = sizeof(str) * -6;

void setup() {
  matrix.begin();                                             // Инициируем работу с матрицей
  matrix.setTextWrap(false);                                  // Отключаем перенос текста на следующую строку
  matrix.setTextSize(2);                                      // Устанавливаем размер текста равным 1 (6 пикселей на символ)
}

void loop() {
  matrix.fillScreen(0);                                       // Очищаем экран
  matrix.setTextColor(matrix.Color333(3,3,3));                // Устанавливаем цвет текста
  matrix.setCursor(textX,12);                                // Указываем начальную координату вывода текста {textX; 12}
  matrix.print(str);                                          // Выводим текст
  --textX;                                                    // Сдвигаем текст на 1 пиксель при каждом выполнении цикла
  if(textX < textMin) textX = matrix.width();                 // Если был отображён весь текст, то начинаем его выводить заново
  matrix.swapBuffers(false);                                  // Выводим текст из буфера на матрицу
}


Круг с гаммой:
Код:
#include <RGBmatrixPanel.h>                                             // Подключаем библиотеку для работы с матрицей

// Используем эти выводы, если матрица подключена к Arduino UNO
#define CLK  8
#define OE   9
#define LAT 10

// Используем эти выводы, если матрица подключена к Arduino MEGA
//#define CLK 11
//#define OE   9
//#define LAT 10

// Используем эти выводы, если матрица подключена к Piranha ULTRA
//#define CLK 11                                                          // Вывод Arduino, к которому подключён вывод CLK матрицы
//#define OE  12                                                          // Вывод Arduino, к которому подключён вывод OE матрицы
//#define LAT 13                                                          // Вывод Arduino, к которому подключён вывод LAT матрицы

#define A   A0                                                          // Вывод Arduino, к которому подключён вывод A матрицы
#define B   A1                                                          // Вывод Arduino, к которому подключён вывод B матрицы
#define C   A2                                                          // Вывод Arduino, к которому подключён вывод C матрицы
//#define D   A3                                                          // Вывод Arduino, к которому подключён вывод D матрицы

RGBmatrixPanel matrix(A, B, C, CLK, LAT, OE, false);             // Объявляем объект matrix для работы с матрицей 64х32, включаем двойную буферизацию

void setup() {
  int      x, y, hue;                                                   // Задаём переменные для координат X и Y и параметра оттенка цвета
  float    dx, dy, d;                                                   // переменные для диаметра окружности по Y, X и общему
  uint8_t  sat, val;                                                    // Задаём переменные для значений насыщенности и яркости
  uint16_t c;                                                           // Задаём переменную для задания цвета пикселя
  matrix.begin();                                                       // Инициируем работу с матрицей
  for (y = 0; y < matrix.height(); y++) {                               // Запускаем цикл, пока координата по Y меньше значения высоты матрицы
    dy = 15.5 - (float)y;                                               // Задаём функцию, при которой в матрицу впишется окружность, радиусом 15,5 пикселей по оси Y
    for (x = 0; x < matrix.height(); x++) {                             // Запускаем цикл, пока координата по X меньше значения высоты матрицы
      dx = 15.5 - (float)x;                                             // Задаём функцию, при которой в матрицу впишется окружность, радиусом 15,5 пикселей по оси X
      d  = dx * dx + dy * dy;                                           // Находим значение диаметра
      if (d <= (16.5 * 16.5)) {                                         // Если окружность с полученными диаметрами вписывается в матрицу, то
        hue = (int)((atan2(-dy, dx) + PI) * 1536.0 / (PI * 2.0));       // Определяем цвет пикселя
        d = sqrt(d);                                                    // Вычисляем квадратный корень из диаметра
        if (d > 15.5) {                                                 // Если диаметр больше 15.5 пикселей(окружность не вписывается в матрицу), то
          sat = 255;                                                    // Задаём максимальную насыщенность
          val = (int)((1.0 - (d - 15.5)) * 255.0 + 0.5);                // По границе окружности гасим светодиоды
        } else {                                                        // Если диаметр меньше 15.5 пикселей (окружность вписывается в матрицу), то
          sat = (int)(d / 15.5 * 255.0 + 0.5);                          // Меняем цвет от края окружности к центру (в центре белый цвет)
          val = 255;                                                    // Задаём максимальную яркость
        }
        c = matrix.ColorHSV(hue, sat, val, true);                       // Задаём цвет пикселя
      } else {                                                          // Если пиксель не попадает в окружность, то
        c = 0;                                                          // гасим его
      }
      matrix.drawPixel(x, y, c);                                        // Включаем пиксель с указанным цветом
    }
  }
}

void loop() {}


Добавлено after 3 minutes 29 seconds:
Самостоятельно выведите одну точку в определённом заданном месте. Когда этого добьётесь, поймёте, как это работает (можно будет понять искажение) и все вопросы отпадут. Кроме того. надо всегда оставлять какую-то часть сомнений на исправность матрицы и корректность чужой программы и совместимость их и даже на то, что китайцы ошиблись с назначением выводов, а потому проследить их до ближайших чипов и убедиться.

Матрица рабочая это 100%. А совсем остальным согласен.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите подключить Led-матрицу к ардуино
СообщениеДобавлено: Пн май 20, 2024 13:40:27 
Нашел транзистор. Понюхал.
Аватар пользователя

Карма: 6
Рейтинг сообщений: 57
Зарегистрирован: Вс мар 18, 2018 22:12:38
Сообщений: 189
Рейтинг сообщения: 0
oleg-maxsimus, у меня нет такой матрицы, поэтому проверить "в железе" не могу, но сравнивая и анализируя оригинал и ваш скетчи обнаружил несоответствие

1 скетч - бегущая строка

оригинал:
----------
// Минимальное значение координаты текста (количество символов в строке, помноженное на ширину одного символа), после которой текст начнёт повторно выводиться
int16_t textMin = sizeof(str) * -6;

void setup() {
matrix.begin(); // Инициируем работу с матрицей
matrix.setTextWrap(false); // Отключаем перенос текста на следующую строку
matrix.setTextSize(1); // Устанавливаем размер текста равным 1 (6 пикселей на символ)
}
----------
ваш:
----------
// Минимальное значение координаты текста (количество символов в строке, помноженное на ширину одного символа), после которой текст начнёт повторно выводиться
int16_t textMin = sizeof(str) * -6;

void setup() {
matrix.begin(); // Инициируем работу с матрицей
matrix.setTextWrap(false); // Отключаем перенос текста на следующую строку
matrix.setTextSize(2); // Устанавливаем размер текста равным 1 (6 пикселей на символ)
}
----------
в оригинале размер текста "1", а у вас "2"
но количество пикселей на символ равно "6"
возможно это существенно важно

_________________
все гениальное просто. чем проще - тем надежнее


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите подключить Led-матрицу к ардуино
СообщениеДобавлено: Пн май 20, 2024 13:42:35 
Родился

Зарегистрирован: Вс май 19, 2024 16:18:12
Сообщений: 9
Рейтинг сообщения: 0
Размер текста не влияет. Проверил все значения.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите подключить Led-матрицу к ардуино
СообщениеДобавлено: Пн май 20, 2024 14:24:50 
Нашел транзистор. Понюхал.
Аватар пользователя

Карма: 6
Рейтинг сообщений: 57
Зарегистрирован: Вс мар 18, 2018 22:12:38
Сообщений: 189
Рейтинг сообщения: 4
интересная ремарка
Цитата:
Библиотека Adafruit RGBmatrixPanel работает только в паре с библиотекой Adafruit GFX, учитывайте это при работе с матрицей.

попробуйте ее подключить
и еще
Цитата:
На заметку: Если у Вас матрица с драйверами FM6126A, то необходимо использовать библиотеку скаченную с нашего сайта или с нашего репозитория на Github.com, в которую мы добавили инициализацию этих драйверов.

_________________
все гениальное просто. чем проще - тем надежнее


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите подключить Led-матрицу к ардуино
СообщениеДобавлено: Вт май 21, 2024 16:31:48 
Родился

Зарегистрирован: Вс май 19, 2024 16:18:12
Сообщений: 9
Рейтинг сообщения: 0
С самого начала я установил "оригинальные" библиотеки


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 21 ]  1,  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 18


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y