Raspberry Pi GPIO: изменение рабочего цикла с помощью консольных команд

После реализации python-скрипта, который меняет рабочий цикл для светодиода, как в этом примере:

http://raspi.tv/2013/rpi-gpio-0-5-2a-now-has-software-pwm-how-to-use-it

Я хотел бы изменить рабочий цикл в оболочке или консоли, какие команды и в каком порядке они должны быть введены?

Пока я провел небольшое исследование, которое привело меня к аналогичному примеру, сделанному с python, как в ссылке выше. Я также знаю, как выполнять консольные команды в PHP.

Мое намерение состоит в том, чтобы воспользоваться консольными командами для управления яркостью светодиода, который запускается запросом AJAX на PHP. Я не хочу выполнять Python-скрипт в PHP из-за необходимости настройки прав доступа на Apache2-Server.

Заранее спасибо.

1

Решение

В то же время существует возможность прямой отправки сигналов ШИМ с помощью PHP с использованием библиотека php-pigpio, который является интерфейсом для демона Pigpio

Ширина импульса:

Отправка сигнала ШИМ с длительностью импульса 1500 мкс на вывод 15 GPIO:

use Volantus\Pigpio\Client;
use Volantus\Pigpio\PWM\PwmSender;

$client = new Client();
$sender = new PwmSender($client);
$sender->setPulseWidth(15, 1500);

Рабочий цикл:

Если вы предпочитаете режим рабочего цикла / диапазона (как в вашем собственном примере):

Установка диапазона на 1024:

$sender->setRange(15, 1024);

Посылка сигнала 50%:

$sender->setDutyCycle(15, 512);
3

Другие решения

В конце концов, это было не так сложно, как я думал. Несмотря на то, что Raspberry-PI B + имеет много PIN-кодов, он имеет только один PIN-код (GPIO 18 = Pin 12) PWM может управляться через консоль Вот команды для управления Duty Cycle для GPIO-Pin 18:

  1. Скажите, что PIN-код 18 является выходным PIN-кодом для PWM:

    gpio -1 mode 12 pwm
    

    или же

    gpio -g mode 18 pwm
    
  2. ШИМ имеет диапазон от 0 до 1023

    0 выключает светодиод:

    gpio -1 pwm 12 0
    

    или же

    gpio -g pwm 18 0
    

    1023 заставляет светодиод излучать максимальную яркость:

    gpio -1 pwm 12 1023
    

    или же

    gpio -g pwm 18 1023
    

Очень интересно, что вам не нужно указывать ПИН-код, на какой частоте он должен использоваться PWM и мой светодиод даже не мерцает.

Надеется, что это помогает кому-то там.

1

По вопросам рекламы [email protected]