http://radiokot.ru/circuit/light/run/44/
Я автор этих устройств. Пожелания, комментарии, вопросы прошу задавать в этой теме.
Для этого нужно доработать часть программы, отвечающую за запись информации в сдвиговые регистры (обеспечить инверсию сигнала DS), а также заменить микросхему ULN2803 на 8 транзисторных ключей, для коммутации строк табло на плюс питания. Можно сделать и проще - если предполагается использование светодиодных матриц формата 8х8 то дело решится физическим поворотом матрицы на 90 градусов вправо (или влево).Как переделать бегущую строку под матрицы с общим катодом?
А если ULN2803 заменить на TD62783, UDN2981 или M54562P/FP?AKR писал(а):Для этого нужно доработать часть программы, отвечающую за запись информации в сдвиговые регистры (обеспечить инверсию сигнала DS), а также заменить микросхему ULN2803 на 8 транзисторных ключей, для коммутации строк табло на плюс питания.
В обеих схемах использованы матрицы TA16-11GWA с общим анодом.Rimidalw писал(а):Автор пропал. Может кто нибудь поможет из форумчан. Какие матрицы автор использует. В строках аноды или катоды?
Заменить-то можно, но код всё равно придётся дорабатывать.xxxSon1cxxx писал(а):А если ULN2803 заменить на TD62783, UDN2981 или M54562P/FP?
Если нужно обеспечить инверсию сигнала DS, то дорабатывать нужно вот этот участок кода?AKR писал(а):Заменить-то можно, но код всё равно придётся дорабатывать.
Код: Выделить всё
for(column_counter = display_image_length; column_counter != 0; column_counter--) //загружаем информацию в сдвиговые регистры
{
DS = (Bitmask[row_counter] & Display_Image_2[column_counter-1])>> row_counter; //устанавливаем выход в соответствии с выводимой строкой (работа со 2 массивом)
SH_CP = 1; //стробирующий импульс
SH_CP = 0;
}
for(column_counter = display_image_length; column_counter != 0; column_counter--) //загружаем информацию в сдвиговые регистры
{
DS = (Bitmask[row_counter] & Display_Image_1[column_counter-1])>> row_counter; //устанавливаем выход в соответствии с выводимой строкой (работа со 1 массивом)
SH_CP = 1; //стробирующий импульс
SH_CP = 0;
}Код: Выделить всё
DS = (Bitmask[row_counter] & Display_Image_2[column_counter-1])>> row_counter;
DS = (Bitmask[row_counter] & Display_Image_1[column_counter-1])>> row_counter;Код: Выделить всё
DS =~((Bitmask[row_counter] & Display_Image_2[column_counter-1])>> row_counter);
DS =~((Bitmask[row_counter] & Display_Image_1[column_counter-1])>> row_counter);Я считаю, что это весьма трудоёмко, учитывая то, что в контроллере почти не осталось свободной оперативной памяти. Так же придётся кардинально изменить пользовательский интерфейс управления строки с ПК. Разумеется, прошивку строки придётся сильно изменить.Rimidalw писал(а):сложно ли будет изменить схему и прошивку для добавления второй строки?
Да, матрица 23088-ASR(та её модификация, где катод в строках), в принципе, подойдёт. Касательно цвета - зелёный визуально смотрится как-то ярче, чем красный, на мой взгляд. Переразвести печатные платы дисплейных модулей под новые матрицы сравнительно просто, куда сложней эти платы изготовить.pol_sdb писал(а):Вот нашел "СВЕТОДИОДНАЯ МАТРИЦА 60Х60ММ (КРАСНАЯ) 23088-ASR(640NM)" http://light-leds.com/files/production/doc/78.pdf, может подойдет ?
Только у нее 8*8 пикселей.
И на Ваш взгляд, какой цвет матрицы лучше ? красный или зеленый ?
Я к тому что найти матрицы 5*8 проблемно, тем более размера 60мм, а вот 8*8 есть.
Насколько сложно будет переделать все на матрицы 8*8 ?
Если можно, то с исходным кодом, либо просто исходный код, сам откомпилирую. Спасибо.AKR писал(а):Да, вы правы.
Постараюсь выложить завтра доработанную версию прошивки.