Управление светодиодами

Схемы зажигания светодиодов могут быть двух типов: постоянные и циклические. Постоянная схема один раз зажигает светодиоды, циклическая схема зажигает светодиоды согласно заданным параметром в цикле, который запускается в параллельном потоке.

Схема зажигания светодиодов задается в конфигурационном файле согласно следующему синтаксису:

blink:<имя схемы>:<битовая карта>:<время в мс>[:<битовая карта>:<время в мс>]...
  • Имя схемы — любая строка до 256 символов.
  • Битовая карта — число, биты 0, 1 и 2 в котором являются признаком свечения светодиодов 1, 2 и 3. Например, число 5: светодиоды 1 и 3 светятся, светодиод 2 не светится.
  • Время свечения в мс — время в миллисекундах, которое светодиоды светятся согласно битовой карте.

Если в схеме только одна пара битовая карта:время — такая схема считается статической, и время свечения игнорируется, его можно установить -1. Если таких пар больше одной — схема считается циклической, и значение времени свечения должно быть положительным целым числом. Количество пар ограничивается максимальной длиной строки в 1024 байта.

Например:

blink:running:5:-1 Статическая схема, где светодиоды 1 и 3 светятся постоянно.

blink:startup:1:300:2:300:4:300 Циклическая схема, где светодиоды 1, 2 и 3 зажигаются по очереди с интервалом в 300 мс.

blink:press:5:100:0:100 Циклическая схема, где светодиоды 1 и 3 зажигаются и гаснут с интервалом в 100 мс.

Количество схем в конфигурационном файле неограниченно. Обязательно должны быть определены три схемы: startuprunning и press. Остальные схемы могут иметь произвольные названия.

Во время работы демона возможно переключение между схемами с помощью сигналов:

  • SIGUSR1: переключение на схему «startup»
  • SIGUSR2: переключение на схему «running»
  • SIGHUP: переключение на схему, имя которой задано в текстовом файле /var/run/apuled-scheme

Для использования SIGHUP вместе с демоном поставляется shell-скрипт „al_chscheme“.

Работает на BetterDocs

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Оформление заказа

NPS AV

Заказ звонка

NPS AV

Sinovga buyurtma berish

NPS AV

Qo'ng'iroq buyurtma qilish

NPS AV

Заказать тестирование

NPS AV