44 lines
985 B
PHP
44 lines
985 B
PHP
<?php
|
|
|
|
require_once __DIR__."/../vendor/autoload.php";
|
|
require_once __DIR__."/GLOBALS.php";
|
|
|
|
use NoccyLabs\Gpio\Gpio;
|
|
use NoccyLabs\Gpio\GpioMapper\WiringPiMapper;
|
|
|
|
try {
|
|
$gpio = new Gpio();
|
|
} catch (Gpio\Exception $e) {
|
|
error_log("Error: {$e}");
|
|
}
|
|
|
|
// The mapper translates GPIO to logical pins and vice versa
|
|
$gpio->setMapper( new WiringPiMapper(2) );
|
|
|
|
// Access logical pin 0, since we got a mapper assigned. Otherwise this would
|
|
// be the actual GPIO0 pin.
|
|
$led = $gpio[0]
|
|
->export()
|
|
->setDirection("output")
|
|
->setValue(0)
|
|
->setLabel("red led")
|
|
->dumpStatus(true);
|
|
|
|
$btn1 = $gpio[1]
|
|
->setDirection("input")
|
|
->setValue(0)
|
|
->setEdge("rising")
|
|
->setHandler(function() { echo "INTERRUPT!\n"; })
|
|
->setLabel("button 1")
|
|
->dumpStatus(true);
|
|
|
|
$btn2 = $gpio[2]
|
|
->setDirection("input")
|
|
->setValue(0)
|
|
->setEdge("rising")
|
|
->setHandler(function() { echo "INTERRUPT!\n"; })
|
|
->setLabel("button 2")
|
|
->dumpStatus(true);
|
|
|
|
|