Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Расширение PWM Arduino с TLC5940: полное руководство по 16-канальному LED-драйверу

В этом уроке Arduino мы научимся использовать PWM-драйвер TLC5940 с платой Arduino. TLC5940 — это 16-канальный LED-драйвер, который обеспечивает PWM-выходы и идеально подходит для расширения возможностей PWM Arduino. Не только светодиоды, но и с этой микросхемой мы можем управлять сервоприводами, двигателями постоянного тока и другими электронными компонентами с помощью PWM-сигналов.

Расширение PWM Arduino с TLC5940: полное руководство по 16-канальному LED-драйверу

Основные характеристики

  • VCC = 3В до 5В
  • 16 каналов
  • 12 бит (4096 шагов) PWM-контроль
  • Возможности управления
    – 0 мА до 120 мА (VCC > 3.6В)
    – 0 мА до 60 мА (VCC < 3.6В)
  • Последовательный интерфейс данных
  • Скорость передачи данных 30 МГц
  • Каскадное подключение (Daisy chaining)

Каскадное подключение — отличная функция, означающая, что мы можем соединять несколько микросхем TLC5940 последовательно. С этим мы можем расширить PWM-возможности Arduino более чем до 16 выходов, например, до 32, 48 или 64 PWM-выходов, и по-прежнему использовать те же 4 вывода, используемые платой Arduino для управления одной микросхемой TLC5940.

Компоненты для этого урока можно найти на любом из сайтов ниже:

  • Arduino Nano………………………..
  • Сверхяркие красные светодиоды……………
  • LED-драйверы TLC5940……………

Подключение Arduino и TLC5940

Для управления TLC5940 нам нужно занять 4 вывода вашей платы Arduino. Поскольку мы будем использовать библиотеку TLC5940 для Arduino, созданную Алексом Леоне (Alex Leone), нам нужно подключить микросхему к Arduino в соответствии с конфигурацией его библиотеки или используя следующую схему подключения:

Расширение PWM Arduino с TLC5940: полное руководство по 16-канальному LED-драйверу

Схема подключения выше использует внешнее питание для питания светодиодов, но также можно подключить просто с использованием самого VCC Arduino, если общий потребляемый ток не превышает лимит Arduino (Absolute Maximum Rating, DC Current VCC and GND Pins – 200 мА).

Также нужно отметить, что TLC5940 является драйвером с постоянным током (constant-current sink), поэтому ток течет к выходным выводам. Это означает, что при подключении светодиодов нужно подключать отрицательный вывод (Катод) к выходному выводу микросхемы, а положительный вывод (Анод) — к 5В VCC.

Нам также нужны 2 конденсатора для развязки и резистор для управления величиной тока, текущего через выходы. Значение резистора зависит от компонента, которым мы хотим управлять, и его можно выбрать, используя следующую диаграмму из даташита TLC5940.

Расширение PWM Arduino с TLC5940: полное руководство по 16-канальному LED-драйверу

Согласно диаграмме, для управления светодиодами, требующими 20 мА тока, нужен резистор 2 кОм.

Исходный код

После скачивания и установки библиотеки TLC5940 для Arduino, созданной Алексом Леоне, мы можем использовать его демонстрационный пример «BasicUse» для понимания того, как управлять выходами микросхемы.

Вот простой код, который я сделал для этого урока для управления 16 светодиодами с использованием этой библиотеки. Читайте комментарии в коде для понимания работы функций.

/*
 * Arduino and TLC5940 Tutorial - Simple Example
 * by Dejan Nedelkovski, www.HowToMechatronics.com
 */
#include "Tlc5940.h"
void setup() {
  Tlc.init(0);
}
void loop() {
  Tlc.set(0, 4095);
  Tlc.update();
  delay(1000);
  for (int i = 0; i < 16; i++) {
    Tlc.set(i, 4095);
  }
  Tlc.update();
  delay(1000);
  Tlc.clear();
  Tlc.update();
  delay(1000);
  for (int i = 0; i < 16; i++) {
    Tlc.set(i, 4095);
    Tlc.update();
    delay(200);
    Tlc.clear();
    Tlc.update();
    delay(200);
  }
}Язык кода: Arduino (arduino)

Управление более чем одним TLC5940

Для подключения более чем одной из этих микросхем последовательно можно использовать ту же схему подключения, что и показано выше. Единственная разница в том, что вывод SOUT (Signal Output — вывод 17) первой микросхемы нужно подключить к выводу SIN (Signal Input — вывод 26) второй микросхемы и так далее.

Расширение PWM Arduino с TLC5940: полное руководство по 16-канальному LED-драйверу

Что касается программирования, нам нужно внести некоторые изменения. В папке библиотеки TLC5940 нужно изменить файл tlc_config.h и изменить значение переменной NUM_TLCS на количество микросхем TLC5940, подключенных последовательно, в нашем случае это значение 2. С этим сделано, теперь мы можем легко адресовать все светодиоды от 0 до 31 и использовать тот же метод программирования, что и ранее описано.

Расширение PWM Arduino с TLC5940: полное руководство по 16-канальному LED-драйверу

В качестве примера, по следующей ссылке, вы можете посмотреть мой проект DIY LED Heart Photo Frame — Arduino Project, где я использую 2 микросхемы TLC5940 для управления 32 светодиодами.


Производственный процесс

  1. Измерение качества воздуха с OpenSensors: руководство по Arduino и Python
  2. Создание надежного RFID-замка на Arduino — пошаговое руководство
  3. Создание универсального ИК-пульта на Arduino: пошаговое руководство
  4. Цифровой стадиометр на Arduino: отслеживание роста лазерным датчиком VL53L0X
  5. Использование термистора: пошаговое руководство для Arduino
  6. Генерация музыкальных тонов на Arduino: полный спектр 88 клавиш пианино
  7. Проект датчика отпечатков пальцев на Arduino Nano – Пошаговое руководство
  8. Мастерство Modbus на Arduino: пошаговое руководство
  9. Создание мини-пианино на Arduino UNO — пошаговое руководство
  10. Урок Arduino для начинающих 01: Начало работы с первым проектом