Страница 1 из 2
TLC5940
Добавлено: 17 фев 2017, 18:57
aurimaspr
Здравствуйте.
Не знаю куда писать. tlc5940 может кто блок делал для этого драивера.? Извините если не туда написал.
TLC5940
Добавлено: 18 фев 2017, 10:12
Nikito$
aurimaspr писал(а):tlc5940 может кто блок делал для этого драйвера
Я работал с этой микросхемой в Arduino IDE, только толком и не понял что и как... Да и иифы на русском мало, единственное, что я находил это описание работы с библиотекой и готовыми примерами. Блок можно сделать, но для этого надо разбираться с функционалом и работой библиотеки!
TLC5940
Добавлено: 18 фев 2017, 18:17
aurimaspr
Да, я думаю это болшой геморой для салаги как я.
TLC5940
Добавлено: 18 фев 2017, 19:47
slavas
Там код элементарный, блок за десять минут нарисовать можно, напишите что Вы хотите получить.
TLC5940
Добавлено: 18 фев 2017, 22:57
Nikito$
slavas писал(а):Там код элементарный, блок за десять минут нарисовать можно, напишите что Вы хотите получить.
Если готовый пример брать типа этого
int direction = 1;
for (int channel = 0; channel < NUM_TLCS * 16; channel += direction) {
Tlc.clear();
if (channel == 0) {
direction = 1;
} else {
Tlc.set(channel - 1, 1000);
}
Tlc.set(channel, 4095);
if (channel != NUM_TLCS * 16 - 1) {
Tlc.set(channel + 1, 1000);
} else {
direction = -1;
}
Tlc.update();
delay(75);
то да, тут ничего сложного. Но хотелось бы полностью разобраться с функционалом библиотеки, а не делать блок на основе базовых примеров, ограничиваясь их функциями!
TLC5940
Добавлено: 19 фев 2017, 20:00
aurimaspr
slavas писал(а):Там код элементарный, блок за десять минут нарисовать можно, напишите что Вы хотите получить.
Попробую алгоритм построит.
Добавлено (19.02.2017, 20:00)
---------------------------------------------
Алгоритм такои:
1 по событию(лог 1) зажыгаем все подрят с нарастанием в одну сторону и останавливаемсе.(>------------->)
2 Гасим все подрят в том же направлении. (лог 0)
3 по событию(лог 1)зажыгаем все подрят с нарастанием в одну сторону и останавливаемсе толко уже с другои стороны.(<--------------<)
4 Гасим все подрят в том же направлении.(лог 0)
Думаю нужны два разделных входа для вибора стороны росжига, если возможно константа для регулировки скорости нарастания шим и скорость зажигания, гасения.
Вот токие космические пожелания, как то так. Незнаю ясно ли обяснил?
TLC5940
Добавлено: 19 фев 2017, 22:41
Nikito$
aurimaspr писал(а):Вот такие космические пожелания, как то так. Не знаю ясно ли объяснил?
Тут специалиста по СИ нужно очень хорошего А сам ты с программированием совсем не дружишь? И ещё, есть вот такая библиотека
https://github.com/bhagman/SoftPWM.git она позволяет задействовать для PWM ранее недоступные для этого выходы ардуины
TLC5940
Добавлено: 20 фев 2017, 21:15
slavas
aurimaspr, поворотники для калины?
TLC5940
Добавлено: 20 фев 2017, 21:33
aurimaspr
slavas писал(а):aurimaspr, поворотники для калины?
Неа, подсветка под карниз крыши дома
///////////////////
///////////////////
////////////////////
/////////////////////
/_______////////////
* * |///////////
|///////////
|////////////
|////////////
|////////////
TLC5940
Добавлено: 20 фев 2017, 21:45
slavas
На чём проверять есть или только хотелки?
попробуйте
TLC5940
Добавлено: 21 фев 2017, 10:26
aurimaspr
slavas, Да есть, вечермо всё на макетке собиру. А где выходы на блоке или я что то непонимаю?Спасибо
TLC5940
Добавлено: 21 фев 2017, 10:39
slavas
выходы будут у драйвера.
TLC5940
Добавлено: 21 фев 2017, 11:36
aurimaspr
slavas, Извиняюсь, но для особо "адарёных" можно по яснее.
TLC5940
Добавлено: 21 фев 2017, 13:46
slavas
киньте сюда схему по которой будете подключать.
Добавлено (21.02.2017, 13:46)
---------------------------------------------
выходов у блока не должно быть, микру к контроллеру подключаете и всё.
на вход блока подаёте номер канала 0-16 и его яркость 0-4095
пример
TLC5940
Добавлено: 21 фев 2017, 21:40
aurimaspr
slavas,
Я вирезал от стандартного подключения тлешки.
Управления будет с пир дачиками, и дачик освещения. Как то так.
Добавлено (21.02.2017, 21:15)
---------------------------------------------
slavas,
slavas писал(а):пример
Непроходит компиляция, библиотека есть.
Добавлено (21.02.2017, 21:17)
---------------------------------------------
блин что то напартачил, ничего не видно
Добавлено (21.02.2017, 21:34)
---------------------------------------------
Добавлено (21.02.2017, 21:35)
---------------------------------------------
О , тепер видно.
Добавлено (21.02.2017, 21:40)
---------------------------------------------
slavas,
Я на твоём примере поменял толко контролер, или надо вес проект занаво сделать с моим контролером?
TLC5940
Добавлено: 21 фев 2017, 21:54
slavas
вот
блок поправил.
Добавлено (21.02.2017, 21:54)
---------------------------------------------
Без железа наугад.
TLC5940
Добавлено: 23 фев 2017, 00:11
aurimaspr
Опять таже ошибка
TLC5940
Добавлено: 23 фев 2017, 20:57
Nikito$
Цитата aurimaspr () 200?'200px':''+(this.scrollHeight+5)+'px');">Опять таже ошибкаБлок всё равно работать как положено не будет! И вот почему:структура микросхемы такова, что после заполнения всех 16 регистров их необходимо очищать, или говоря проще в коде необходимо вызвать функцию Tlc.clear();
Вот в этом вся и проблема, необходимо в зависимости от задачи вызывать эту функцию или после того как загорится последний светодиод, либо же вызывать её после включения каждого следующего светодиода, чтобы потушить предыдущий, как
это сделать не понятно, может кто-нибудь более опытный в программировании и поможет.
У меня лишь получилось реализовать эффект бегущего огня и не более… Там функция очистки вызывается перед включением следующего светодиода,выключая тем самым предыдущий.
TLC5940
Добавлено: 23 фев 2017, 21:25
slavas
У меня нормально компилируется, один блок один канал, чистить его не проблема сделать ещё вход для сброса
TLC5940
Добавлено: 23 фев 2017, 21:30
Nikito$
slavas писал(а):У меня нормально компилируется, один блок один канал, чистить его не проблема сделать ещё вход для сброса
Вот и вопрос??? как реализовать сброс после включения всех 16 светодиодов, не сбрасывая их до этого???