Главная » Световые эффекты
Призовой фонд
на ноябрь 2019 г.
1. Регулируемый паяльник 60 Вт
Сайт Паяльник
2. 500 руб
Сайт Паяльник
3. 200 руб.
От пользователей

USB LED Fader

Данное устройство USB-LED-Fader позволяет управлять несколькими светодиодами (LED) через USB. Я использовал его для отображения статуса моего интернет-соединения, видео-рекордера (VDR) и предупреждения о малом значении свободного дискового пространства. Вы можете использовать его для своих целей и программ.

USB LED Fader

Управление LED происходит с использованием ШИМ (широтно-импульсной модуляцией). Если кратко то ШИМ позволяет не просто включать-выключать LED, а дает возможность устанавливать любую яркость LED. В устройстве предусмотрено некоторое количество "волновых форм" (т.е. различных эффектов для LED). Каждый LED может отображать несколько разновидностей форм синусоиды или пилы, без какого-либо взаимодействия с внешним устройством (хостом или компьютером).

Каждый LED может управляться отдельно и отображать свой световой эффект.

Вы можете назначить три разных режима световых форм для каждого LED. Первые два (0 и 1) - неизменяемые. Они периодически меняются, пока не будет назначено что-нибудь другое. Третий режим (2) отображается один раз; впоследствии устройство возвращается к периодическому отображению первых двух режимов.

Режим описывается тремя параметрами: световой эффект, продолжительность и количество повторений перед его переходом в следующий режим.

В данной версии USB LED Fader'а предусмотрено управление 4 -мя LED. Количество LED можно легко изменить от одного до восьми. Я не тестировал устройство с более чем 4-мя LED, но могу предположить, что могут возникнуть проблемы с нагрузкой на USB-порт.

Для сборки и работы устройства требуются три вещи: схема, прошивка для микроконтроллера ATmega8 и Linux-клиент командной строки.

Данный проект базируется на примере PowerSwitch от Objective Development. От Objective Development используется только USB-драйвер для микроконтроллеров Atmel AVR. В USB-драйвере от Objective Development реализована поддержка стандарта USB 1.1 (низкая скорость обмена данными) для использования с недорогими микроконтроллерами Atmel AVR, такими как ATtiny2313 и другими. Особенности и ограничения смотрите в файле "firmware/usbdrv/usbdrv.h".

Схема USB LED Fader

Установка ПО описана в документации к устройству (см. ниже файл).

Подсоедините устройство к USB порту компьютера. Все LED должны моргнуть, это означает, что устройство прошло инициализацию.

Используйте командную строку для ввода команд:

usb-led-fader status
usb-led-fader set <ledId> <waveId> <waveformId> <periodDuration> <repetitionCount>
usb-led-fader clear <ledId>
usb-led-fader reset
usb-led-fader show <waveformId>
usb-led-fader test

Команда set позволяет устанавливать требуемые параметры.

Параметры:
ledId: ID светодиода (0-n, зависит от количества LED, используемых в схеме).
waveId: ID режима (0-1: неизменяемые световые формы, 2: отмена режима).
waveformId: ID световой формы (0-31: яркость, 32-37: шаблоны). Для начала отображения шаблонов используется команда show
periodDuration: Время в сек/10 для одного повтора световой формы. Значение 0 используется для сброса.
repetitionCount: Количество повторов, перед переходом к следующему режиму. Значение 0 используется для бесконечного цикла повторения.

Примеры использования:

Получить статус всех LED. Команда:
usb-led-fader status
Вернет подобный результат:

LED 0           curid   curvalue     curpos     currep    nextupd
                    0          2         26          0         23
      wave   waveform     length     repeat   duration    updtime
         0         38         32          1         20         45
         1          0          1          1          0          1
         2          0          1          1          0          1
LED 1           curid   curvalue     curpos     currep    nextupd
                    0         14         19          0         19
      wave   waveform     length     repeat   duration    updtime
         0         38         32          1         20         45
         1          0          1          1          0          1
         2          0          1          1          0          1
LED 2           curid   curvalue     curpos     currep    nextupd
                    0         31         16          0         43
      wave   waveform     length     repeat   duration    updtime
         0         38         32          1         20         45
         1          0          1          1          0          1
         2          0          1          1          0          1
LED 3           curid   curvalue     curpos     currep    nextupd
                    0          6          9          0         39
      wave   waveform     length     repeat   duration    updtime
         0         38         32          1         20         45
         1          0          1          1          0          1
         2          0          1          1          0          1

Здесь, параметры curvalue, curpos, nextupd и updtime служат для отладки. Они не представляют какого-либо интереса для пользователя.

Пример: устанавливаем яркость для первого LED.

Устанавливаем яркость для первого светодиода

Команда: usb-led-fader set 0 0 15 10 1
Итак, LED под номер 0, режим 0, шаблон номер 15. В данном режиме LED будет оставаться 1 секунду, произойдет одно повторение, после чего устройство перейдет к следующему режиму. Но т.к. следующий режим мы не описали, то LED будет постоянно отсаваться в данном режиме.

Далее, установим второй режим для LED, который будет немного ярче:
Команда: usb-led-fader set 0 1 25 10 1
Это режим 1, для LED под номером 0. Шаблон 25 - это константа уровня яркости. После установки второго режима, будет происходить чередование между режимом 0 и 1, поскольку длительность и число повторений одинаковы. Различается только яркость свечения.

Устанавливаем третий режим для LED.
Команда: usb-led-fader set 0 2 36 20 5
Шаблон 35 - синусоидоподобный сигнал, начинается плавный fade-эффект.Один период fade-эффекта составляет 2 секунды, повторяется 5 раз. После отработки данного режима, устройство вернется к чередованию между режимом 0 и 1, а этот режим сбросится.

Установка нескольких режимов одной командой: usb-led-fader set 0 0 15 10 1 0 1 25 10 1 0 2 36 20 5
Первый LED сначала будет работать по шаблону синусоиды 5 раз, а затем перейдет к чередованию между первым и вторым режимом с двумя уровнями яркости, период - 1 сек.

Очистка первого LED.
Команда: usb-led-fader clear 0
Очищает все 3 режима для первого LED.

Сброс устройства.
Команда: usb-led-fader reset
Все LED один раз моргнут, информируя, что устройство сброшено и готово к работе.

Отображаем шаблон на экране.
Команда: usb-led-fader show 36
Данная команда отображает форму волны:

wave 36 - length 64
31:                              *****
30:                            *********
29:                           ***********
28:                         ***************
27:                        *****************
26:                       *******************
25:                       *******************
24:                      *********************
23:                     ***********************
22:                    *************************
21:                    *************************
20:                   ***************************
19:                  *****************************
18:                  *****************************
17:                 *******************************
16:                *********************************
15:               ***********************************
14:               ***********************************
13:              *************************************
12:             ***************************************
11:             ***************************************
10:            *****************************************
 9:           *******************************************
 8:          *********************************************
 7:          *********************************************
 6:         ***********************************************
 5:        *************************************************
 4:      *****************************************************
 3:     *******************************************************
 2:   ***********************************************************
 1: ****************************************************************
    ================================================================

Помните, что данные отображаются согласно длительности шаблона. Если вы захотите отобразить яркость (формы 0-31), длительность будет 1, т.е. отобразится только одна строка.

Тестирование устройства.
Команда: usb-led-fader test
Данная команда посылает множество пакетов к устройству. Устройство возвращает их, а клиент смотрит различия между отосланными и принятыми данными.

Скачать документацию, прошивки, программы и т.п.

Оригинал на английском языке (перевод Колтыков А.В для сайта cxem.net)

Список радиоэлементов

Обозначение Тип Номинал Количество ПримечаниеМагазинМой блокнот
IC1 МК AVR 8-бит
ATmega8
1 Поиск в Utsource В блокнот
D1, D2 Стабилитрон3.6 В2 Поиск в Utsource В блокнот
С1 Конденсатор0.1 мкФ1 Поиск в Utsource В блокнот
С2 Электролитический конденсатор10 мкФ1 Поиск в Utsource В блокнот
С3, С4 Конденсатор22 пФ2 Поиск в Utsource В блокнот
R1 Резистор
2.2 кОм
1 Поиск в Utsource В блокнот
R2 Резистор
4.7 кОм
1 Поиск в Utsource В блокнот
R4, R5 Резистор
68 Ом
2 Поиск в Utsource В блокнот
R6-R9 Резистор
470 Ом
4 Поиск в Utsource В блокнот
Q1 Кварцевый резонатор12 МГц1 Поиск в Utsource В блокнот
LED1 СветодиодСиний1 Поиск в Utsource В блокнот
LED2 СветодиодЗеленый1 Поиск в Utsource В блокнот
LED3 СветодиодЖелтый1 Поиск в Utsource В блокнот
LED4 СветодиодКрасный1 Поиск в Utsource В блокнот
X1 Разьем USB1 Поиск в Utsource В блокнот
J1 Разьем для подключения программатораISP1 Поиск в Utsource В блокнот
Добавить все

Скачать список элементов (PDF)

Оригинал статьи

Теги:

none Опубликована: 2010 г. 0 0
Я собрал 0 0
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 0 Проголосовало: 0 чел.

Комментарии (1) | Я собрал (0) | Подписаться

0
Ставр #
А для windows есть ?
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется электрическое сопротивление?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Набор для сборки - LED лампа
Набор для сборки - LED лампа
Конструктор для сборки: предусилитель на лампе 6N3 Лазерный модуль 650нм 5мВт
вверх