Страница 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 светодиодов, не сбрасывая их до этого???