timesplinter / gphpio
Library to handle GPIO
dev-master
2018-01-29 11:21 UTC
Requires
- php: >=5.5.0
Requires (Dev)
- php-mock/php-mock-phpunit: ^2.0.1
- phpunit/phpunit: ^6.4
This package is auto-updated.
Last update: 2024-10-21 01:02:16 UTC
README
This library provides a nice OO interface to interact with the GPIO pins of RaspberryPi (2).
Setup
For RaspberryPi (2) please make sure that the files at /sys/class/gpio
are owned by root:gpio
and that the user which
executes the PHP script using this library is also in the group gpio
. This should be the case anyway as long as you have
already run the raspi-config
tool on installation.
Else you may need to apply the following changes described here.
Example
The "Hello world" LED-blink script would look like that:
$model = new RPi(); $gpio = new GPIO($model); $pin = 17; if($gpio->isExported($pin) === false) $gpio->export($pin, GPIO::MODE_OUTPUT); echo 'This is a ' , $model->getName() , PHP_EOL; for($i = 0; $i < 10; ++$i) { $gpio->write($pin, 1); echo 'The pin is now: ' , $gpio->read($pin) , PHP_EOL; sleep(1); $gpio->write($pin, 0); echo 'The pin is now: ' , $gpio->read($pin) , PHP_EOL; sleep(1); } $gpio->unexport($pin);