TLC5940 проверка на работоспособность
- Войдите на сайт для отправки комментариев
Приветствую!
Имеется вопрос. Заказал на Али TLC5940, начал её осваивать. Подключаю её согласно схеме в статьях из интернета, загружаю скетчи из примеров - светодиоды не горят.
Беру скетч BasicUse из папки с библиотекой - не работает.
Пробовал и по SPI и по BITBANG - не работает.
Начали закрадываться сомнения - я невнимательный/рукожоп или микруха не работает. Снимаю микруху с макетной платы и просто подаю на неё питание: +0,5В на всех выходах. Вставил её на место в макетку - на выходах 0 до 15 напряжение растет от 0,7 (на 0-ом) до 2В (на 15-ом), причем независимо от того, что написано в скетче. Пробовал и BasicUse, и скетч который всё включает на максимум и всё тушит - вольтаж на выходах во всех случаях от 0,7 до 2.
Собственно вопрос - как всё таки определить - микруха не исправна или я что-то не так делаю?
Может кто скинет свой проверенный скетч со схемой подключения, который тупо зажигает все 16 каналов, может кто проверенной, заведомо исправной микрухой поделится (не за спасибо конечно)
Где схема? Где код?
Какие "примеры из интернета" - такое и поведение.
del
Где схема? Где код?
схема подключения TL5940:
[spoiler]
27 (VPRG) - земля
26 (SIN) - pin 11
25 (SCLK) - pin 13
24 (XLAT) - pin 9
23 (BLANK) - pin 10
22 (GND) - земля
21 (VCC) - +5В
20 (IREF) - на землю через резистор 2кОм
19 (DCPRG) - +5В
18 (GSCLK) - pin 3
[/spoiler]
RGB cветодиод (с общим анодом) соответственно анодом на +5В, катодами к выходам OUT1 2 3
В гайдах и базовом примере внутри библиотеки пишут, что 23 ногу (BLANK) можно ещё через резистор 10кОм к земле подцепить, чтоб диоды не горели при включении - у меня они не горят что с резистором, что без него (пробовал и так и так).
Скетчи которые пробовал:
Скетч 1 (базовый пример из библиотеки):
01
#include "Tlc5940.h"
02
03
void
setup
()
04
{
05
/* Call Tlc.init() to setup the tlc.
06
You can optionally pass an initial PWM value (0 - 4095) for all channels.*/
07
Tlc.init();
08
}
09
10
/* This loop will create a Knight Rider-like effect if you have LEDs plugged
11
into all the TLC outputs. NUM_TLCS is defined in "tlc_config.h" in the
12
library folder. After editing tlc_config.h for your setup, delete the
13
Tlc5940.o file to save the changes. */
14
15
void
loop
()
16
{
17
int
direction = 1;
18
for
(
int
channel = 0; channel < NUM_TLCS * 16; channel += direction) {
19
20
/* Tlc.clear() sets all the grayscale values to zero, but does not send
21
them to the TLCs. To actually send the data, call Tlc.update() */
22
Tlc.clear();
23
24
/* Tlc.set(channel (0-15), value (0-4095)) sets the grayscale value for
25
one channel (15 is OUT15 on the first TLC, if multiple TLCs are daisy-
26
chained, then channel = 16 would be OUT0 of the second TLC, etc.).
27
28
value goes from off (0) to always on (4095).
29
30
Like Tlc.clear(), this function only sets up the data, Tlc.update()
31
will send the data. */
32
if
(channel == 0) {
33
direction = 1;
34
}
else
{
35
Tlc.
set
(channel - 1, 1000);
36
}
37
Tlc.
set
(channel, 4095);
38
if
(channel != NUM_TLCS * 16 - 1) {
39
Tlc.
set
(channel + 1, 1000);
40
}
else
{
41
direction = -1;
42
}
43
44
/* Tlc.update() sends the data to the TLCs. This is when the LEDs will
45
actually change. */
46
Tlc.update();
47
48
delay(75);
49
}
50
51
}
Скетч 2 (пример из интернета):
01
#include "Tlc5940.h";
02
03
void
setup
()
04
{
05
//Инициализируем драйвер
06
Tlc.init();
07
}
08
09
void
loop
()
10
{
11
//Устанавливаем нулевую яркость всех светодиодов
12
Tlc.clear();
13
14
//Для каждого из 16 каналов:
15
for
(
int
channel = 0; channel < 16; channel += 1) {
16
//Устанавливаем максимальную яркость
17
Tlc.
set
(channel, 4094);
18
}
19
//Применяем изменения (зажигаем светодиоды)
20
Tlc.update();
21
}
Скетч 3 (самописный):
01
#include "Tlc5940.h"
02
03
void
setup
()
04
{
05
//Инициализируем драйвер
06
Tlc.init();
07
}
08
09
void
loop
()
10
{
11
12
Tlc.clear();
13
Tlc.
set
(0,0);
14
Tlc.
set
(1,4000);
15
Tlc.
set
(2,4000);
16
Tlc.
set
(3,4000);
17
Tlc.
set
(4,0);
18
Tlc.
set
(5,0);
19
Tlc.
set
(6,0);
20
Tlc.
set
(7,0);
21
Tlc.
set
(8,0);
22
Tlc.
set
(9,0);
23
Tlc.
set
(10,0);
24
Tlc.
set
(11,0);
25
Tlc.
set
(12,0);
26
Tlc.
set
(13,0);
27
Tlc.
set
(14,0);
28
Tlc.
set
(15,0);
29
Tlc.update();
30
delay(10000);
31
}
Со всеми скетчами микросхема ведет себя одинаково: на выходе OUT1 имеем 0,7-0,8В, на следующем чуть больше, на следующем ещё чуть больше и так до выхода OUT15 на котором 2В. Причем микросхема через минуту после включения слегка нагревается (градусов 40 примерно).
P.S. как спойлер-то делать, не нашёл че-т.... хотел спойлер и схему под спойлеры свернуть
Люди добрыееее, помогите запустить TLC'ху пожалуйста
дайте ссылку на используемую библиотеку
и расскажите. что вы хотите построить на этой микросхеме? - эта мс не для новичка. вообще-то
дайте ссылку на используемую библиотеку
и расскажите. что вы хотите построить на этой микросхеме? - эта мс не для новичка. вообще-то
Ссылка на библиотеку: https://disk.yandex.ru/d/xZOG3e5wt_SUGw
Построить хочу часы... по задумке должен быть индикатор из дерева с тонкой стенкой, которая работает на просвет... за стенкой в каждом сегменте RGB-светодиод. Т.е. управлять надо 4 * 7 * 3 = 84 выводами. По задумке было так: каждым индикатором управляет одна ардуина и каскад из двух TLC, + есть "главная" пятая ардуинка, которая считает время и раздает его дочерним.
Вот видео, как работает без TLCхи на обычных светодиодах: https://disk.yandex.ru/i/dc5va1ukAqVucQ ; но светодиоды хочу RGB...
Собирал что-то похожее, только изначально была немного иная концепция: вместо светодиодов были шаговые моторчики, которые открывали и закрывали сегменты, а светодиоды были внутри включены постоянно. Там использовал ардуину + 7 драйверов + 2 сдвиговых регистра (один давал импульсы шагов, второй устанавливал направления) на один сегмент. Один сегмент работать заставил, но временно ту концепцию отложил в сторонку и решил собрать на светодиодах. Но вот досада - не могу заставить работать TLC-шку
https://disk.yandex.ru/a/p8Xm_BccOKEboA
вот так попробуй - 23 (BLANK) - pin 10 да (+ резистор 10к на +5V)
Построить хочу часы... по задумке должен быть индикатор из дерева с тонкой стенкой, которая работает на просвет... за стенкой в каждом сегменте RGB-светодиод. Т.е. управлять надо 4 * 7 * 3 = 84 выводами. По задумке было так: каждым индикатором управляет одна ардуина и каскад из двух TLC, + есть "главная" пятая ардуинка, которая считает время и раздает его дочерним.
ужос.... все это в полпинка делается на адресной ленте НА ОДНОЙ ардуине (а не на пяти, как у вас) и без TLC вообще
Подобных проектов в инете полно.
PS не давайте ссылки на яндексдиск, ваша библиотека есть на гитхабе: https://github.com/PaulStoffregen/Tlc5940
ужос.... все это в полпинка делается на адресной ленте НА ОДНОЙ ардуине (а не на пяти, как у вас) и без TLC вообще
Подобных проектов в инете полно.
адресную ленту разбирать на светодиоды? есть ссылка для примера?
ну и на всё есть много разных вариантов... но раз уж есть TLC - хотелось бы разобраться с ними
на TLCхах тоже можно и на одной ардуине, но тут вопрос ремонтопригодности/модульности да и ради эксперимента
адресную ленту разбирать на светодиоды? есть ссылка для примера?
лента просто режется на куски нужной длины, можно и по несколько светиков в сегменте.
ну хочется разобраться - разбирайтесь.... но с чисто практической точки зрения ваша задумка - треш полный, повторять явно никто не будет.
На TLC и код и схема получается раз в сто сложнее....посчитайте - пять ардуин, 8 TLC, невероятная куча проводов.... А на ленте только Нано. лента и БП. Все.
Да и код для ленты напишет даже ребенок
ну хочется разобраться - разбирайтесь.... но с чисто практической точки зрения ваша задумка - треш полный, повторять явно никто не будет.
На TLC и код и схема получается раз в сто сложнее....посчитайте - пять ардуин, 8 TLC, невероятная куча проводов.... А на ленте только Нано. лента и БП. Все.
Да и код для ленты напишет даже ребенок
ну вот и пытаюсь разобраться и ищу помощи в запуске TLC-хи, а не советов как это можно ещё реализовать...
как совет ваше сообщение конечно ценю, но мне хотелось бы разобраться с TLC-хой... И мне не нужно, чтобы это кто-то повторял, я это делаю для себя, а невероятную кучу проводов заменят дорожки на плате
ну вот и пытаюсь разобраться и ищу помощи в запуске TLC-хи, а не советов как это можно ещё реализовать...
как совет ваше сообщение конечно ценю, но мне хотелось бы разобраться с TLC-хой... И мне не нужно, чтобы это кто-то повторял, я это делаю для себя, а невероятную кучу проводов заменят дорожки на плате
трезво оцените свои силы. Судя по тому, что вы написали - мне кажется вы более радиолюбитель, чем программист. Если да - то вы просто не понимаете, насколько сложную (и при этом практически бессмысленную) задачу вы перед собой ставите.
У вас одно согласование работы пяти ардуинок займет времени больше, чем весь проект часов на адресной ленте.
Теперь по сути. Если вы берете МС, подключаете по схеме из библиотеки, заливаете код из библиотеки - и у вас не работает, то тут только два варианта - либо МС нерабочая, либо вы что-то сделали не так, как написано. Проверяйте все еще раз. Вашей сборки никто не видел и проверить ее можете только вы.
трезво оцените свои силы. Судя по тому, что вы написали - мне кажется вы более радиолюбитель, чем программист. Если да - то вы просто не понимаете, насколько сложную (и при этом практически бессмысленную) задачу вы перед собой ставите.
У вас одно согласование работы пяти ардуинок займет времени больше, чем весь проект часов на адресной ленте.
Теперь по сути. Если вы берете МС, подключаете по схеме из библиотеки, заливаете код из библиотеки - и у вас не работает, то тут только два варианта - либо МС неработает, либо вы что-то сделали не так, как написано. Проверяйте все еще раз. Вашей сборки никто не видел и проверить ее можете только вы.
Согласование 5ти ардуинок уже сделано.... сделано топорно, но работает...
Все соединения уже много раз проверил и перепроверил, всё соответствует схеме соединения. Думал может есть какой-то способ продиагностировать TLC. С али пришла одна микруха - с ней не работало, заказал вторую - с ней тоже самое. По-этому я и нахожусь в ступоре - то ли я совсем дурак, то ли лыжи не едут. Скетч №3 из 4-го сообщения должен зажигать мне RGB светодиод, если он анодом сидит на +5V от ардуины, а катодами на выходах OUT1 OUT2 OUT3? С той библиотекой с гитхаба и с подключением по схеме в том же 4-ом сообщении соответственно
Скетч №3 из 4-го сообщения должен зажигать мне RGB светодиод, если он анодом сидит на +5V от ардуины, а катодами на выходах OUT1 OUT2 OUT3? С той библиотекой с гитхаба и с подключением по схеме в том же 4-ом сообщении соответственно
насколько я вижу - да.
А ардуина какая? - уно, нано, мини, микро? И на ней "вавгат" случайно не написано?
насколько я вижу - да.
А ардуина какая? - уно, нано, мини, микро? И на ней "вавгат" случайно не написано?
Пробовал и UNO и NANO, обе не wavgat
ход конём - могу вам отправить обе микрухи (за свой счет естественно) на проверку на возмездной основе?
ход конём - могу вам отправить обе микрухи (за свой счет естественно) на проверку на возмездной основе?
а вы где территориально?
а вы где территориально?
РФ, Нижегородская обл., г. Арзамас
давайте пообщаемся
кстати, вы там выше даете ссылку на видео работы TLC на обычных светиках... сорри, само видео не видел, поэтому вопрос - это вы сами пробовали или это чужое видео из инета?
Если сами и мс на обычных диодах работает.... то разве это не проверка?
кстати, вы там выше даете ссылку на видео работы TLC на обычных светиках... сорри, само видео не видел, поэтому вопрос - это вы сами пробовали или это чужое видео из инета?
Если сами и мс на обычных диодах работает.... то разве это не проверка?
я имел ввиду, что диоды к выходам ардуино напрямую подключал, а не через МС
МС у меня на руках не было
ТС, не победил микруху? У меня такая же проблема, пару лет назад сделал 2 контроллера для лестнице, всё нормально работает. Недавно решил повторить, заказал TLC на Али, не работает. По 0,8В на всех выходах. По отзывам на Али у многих не работает, а магазин, где брал первый раз, исчез.
Нашёл в закормах ещё одну TLC'шку, которая была куплена года 2-3 тому назад и оставлена до лучших времен (и благополучно забыта) - с ней всё заработало. Таким образом эти микрухи были обе нерабочие, оформил претензию, деньги вернули.
Вообще изначально были подозрения, что с этими TLC-хами что-то не так, ибо они были подозрительно дешевые. Видимо не спроста - поэтому на будущее лучше не пытаться сэкономить )
Да, разброс цен в 3 раза, но и там, и там отзывы какие-то подозрительные, наверно продавцы сами пишут. А как доказывал неработоспособность?
выше написано - сравнением с заведомо рабочей.
в претензии? описал ситуацию и приложил фото на котором видно подключенный светодиод, тестер и показание 0.8В
Спасибо. Буду открывать спор.
Если надо, чуть позже могу поискать ссылку где я 2 года назад заказывал рабочую TLCху
Если не трудно.
https://aliexpress.ru/item/32787390280.html?aff_fcid=0fd5c71997f94c3fb1a...
вот по этой ссылке я брал 3 года назад
цена кстати тоже низкая, так что не знаю, смотрите думайте сами
Благодарю. Я вроде тоже покупал рабочие незадорого.